public async Task <IActionResult> SetUserRole([FromBody] SetUserRoleRequest model) { ApplicationUser user = await _roleservice.FindByEmailAsync(model.Email); string roleName = string.Empty; if (user == null) { return(Ok("User Not Found....")); } string userName = user.UserName != null ? user.Email : user.UserName; // Find Role Using Role Name in AspNetRole Table ApplicationRole applicationRole = await _roleservice.FindByNameAsync(model.ApplicationRoleName.ToUpper()); //ApplicationRole applicationRole = await _roleManager.FindByIdAsync(model.ApplicationRoleId); IdentityResult roleResult = null; if (applicationRole != null) { roleName = applicationRole.Name; if (ModelState.IsValid) { // Add Role With Specific user roleResult = await _roleservice.AddToRoleAsync(user, applicationRole.Name); return(Ok($"SuccessFully Set Role {roleName} For User {userName} in AspNetUserRoles Table")); } } return(Ok("UnExpected Errors !!!")); }
public async Task <IActionResult> SetUserRole([FromBody] SetUserRoleRequest setUserRoleRequest) { var result = await _identityService.UpdateUserRoles(setUserRoleRequest.UserId, setUserRoleRequest.Roles); if (result == false) { return(NotFound("Updating user role failed.")); } return(Ok(true)); }
public SaveResult UnsetRole(SetUserRoleRequest request) { try { ApplicationRole role = RoleManager.FindById(request.RoleId); if (!UserManager.IsInRole(HttpContext.Current.User.Identity.GetUserId <int>(), "Admin")) { //if (UserManager.IsInRole(request.UserId, "Admin")) // return new SaveResult { Status = "error", Message = "User is admin!" }; if (role.Name == "Admin") { return new SaveResult { Status = "error", Message = "Admin role can be set by admin only!" } } ; } var result = UserManager.RemoveFromRoles(request.UserId, role.Name); if (!result.Succeeded) { return new SaveResult { Status = "error", Message = result.Errors.First() } } ; UserRolesSingleton.RemoveById(request.UserId); return(new SaveResult { Status = "success" }); } catch (Exception ex) { return(new SaveResult { Status = "error", Message = ex.Message }); } }
public async Task <IActionResult> SetRolesAsync([FromBody] SetUserRoleRequest request) { await UserService.SetRolesAsync(request.UserId, request.RoleIds.ToGuidList()); return(Success()); }