public async Task <IActionResult> CreateUserFromOkta(PayoutUser user, string strRole) { try { PayoutRole role = await _roleManager.FindByNameAsync(strRole); if (role != null) { user.CreatedBy = "Okta"; user.IsOkta = true; user.IsDisabled = false; IdentityResult chkUser = await _userManager.CreateAsync(user); //Add default User to Role Admin if (chkUser.Succeeded) { var result1 = await _userManager.AddToRoleAsync(user, role.Name); if (result1.Succeeded) { return(Ok(result1)); } } } } catch (Exception ex) { _logger.LogError($"error while creating Admin: {ex}"); return(StatusCode((int)HttpStatusCode.InternalServerError, "error while creating Admin: " + ex.Message)); } return(BadRequest()); }
public async Task <IActionResult> UpdateRole([FromBody] UpdateIdentity objUpdateIdentity) { try { PayoutRole payoutRole = await _roleManager.FindByNameAsync(objUpdateIdentity.id); PropertyInfo prop = payoutRole.GetType().GetProperty(objUpdateIdentity.colName, BindingFlags.Public | BindingFlags.Instance); if (null != prop && prop.CanWrite) { prop.SetValue(payoutRole, objUpdateIdentity.colValue, null); } //payoutRole.IsDisabled = true; var resultUpd = await _roleManager.UpdateAsync(payoutRole); if (resultUpd.Succeeded) { return(Ok(resultUpd)); } foreach (var error in resultUpd.Errors) { ModelState.AddModelError("error", error.Description); } } catch (Exception ex) { _logger.LogError($"error while updating Role: {ex}"); return(StatusCode((int)HttpStatusCode.InternalServerError, "error while updating Role: " + ex.Message)); } return(BadRequest()); }
public async Task <IActionResult> DeleteRole([FromBody] PayoutRole model) { try { PayoutRole payoutRole = await _roleManager.FindByNameAsync(model.Name); var resultDel = await _roleManager.DeleteAsync(payoutRole); if (resultDel.Succeeded) { if (OktaRequests.DeleteGroup(_optionOktaKeys.URL, _optionOktaKeys.APIKey, model.Name)) { return(Ok(resultDel)); } } foreach (var error in resultDel.Errors) { ModelState.AddModelError("error", error.Description); } } catch (Exception ex) { _logger.LogError($"error while deleting Role: {ex}"); return(StatusCode((int)HttpStatusCode.InternalServerError, "error while deleting Role: " + ex.Message)); } return(BadRequest()); }
public async Task <IActionResult> CreateRole([FromBody] PayoutRole model) { try { bool x = await _roleManager.RoleExistsAsync(model.Name); if (!x) { var role = new PayoutRole(); model.IsDisabled = false; IdentityResult chkRole = await _roleManager.CreateAsync(model); if (chkRole.Succeeded) { if (model.Name.ToLower().Contains("payout")) { if (OktaRequests.AddGroup(_optionOktaKeys.URL, _optionOktaKeys.APIKey, model.Name)) { string GroupId = OktaRequests.GetGroupIdFromOkta(_optionOktaKeys.URL, _optionOktaKeys.APIKey, model.Name); if (GroupId != "") { if (OktaRequests.AssignGroupToApp(_optionOktaKeys.URL, _optionOktaKeys.APIKey, GroupId, _optionOktaKeys.ClientId)) { return(Ok(chkRole)); } } } } } foreach (var error in chkRole.Errors) { ModelState.AddModelError("error", error.Description); } } else { ModelState.AddModelError("error", "Role already exist"); return(BadRequest(ModelState)); } } catch (Exception ex) { _logger.LogError($"error while creating Role: {ex}"); return(StatusCode((int)HttpStatusCode.InternalServerError, "error while creating Role: " + ex.Message)); } return(BadRequest()); }
public async Task <IActionResult> FirstSeedAdminRolesandUser() { try { bool x = await _roleManager.RoleExistsAsync("ITAdmin"); if (!x) { // first we create Admin rool var role = new PayoutRole(); role.Name = "PayoutITAdmin"; role.CreatedBy = "System"; role.IsDisabled = false; await _roleManager.CreateAsync(role); //Here we create a Admin super user who will maintain the website var user = new PayoutUser(); user.UserName = "******"; user.Email = "*****@*****.**"; user.FirstName = "Carlos"; user.LastName = "Sanchez"; user.CreatedBy = "System"; user.IsDisabled = false; user.IsOkta = false; string userPWD = "#Qwrty123!"; IdentityResult chkUser = await _userManager.CreateAsync(user, userPWD); //Add default User to Role Admin if (chkUser.Succeeded) { var result1 = await _userManager.AddToRoleAsync(user, role.Name); if (result1.Succeeded) { return(Ok(result1)); } } } } catch (Exception ex) { _logger.LogError($"error while creating Admin: {ex}"); return(StatusCode((int)HttpStatusCode.InternalServerError, "error while creating Admin: " + ex.Message)); } return(BadRequest()); }