public void MapAGSGroupEntityToEFApplicationRole(AGSGroupEntity groupEntity, EFApplicationRole efApplicationRole) { efApplicationRole.Id = groupEntity.Id; efApplicationRole.Name = groupEntity.Name; efApplicationRole.NormalizedName = groupEntity.Name; efApplicationRole.ConcurrencyStamp = CommonConstant.GenerateId(); }
public void AddFunctionClaimToGroup(EFApplicationRole selected, string functionClaimId) { if (selected != null) { _ = _roleManager.AddClaimAsync(selected, new Claim(CommonConstant.FunctionClaimTypeConstant, functionClaimId)).Result; } }
public void InitializeApplicationData() { // add all function claims into Database var ags_identity_constant_type = typeof(CommonConstant); var constant_fields = ags_identity_constant_type.GetFields(); foreach (var constant_field in constant_fields) { if (constant_field.Name.EndsWith("ClaimConstant")) { var claimValue = (string)(constant_field.GetValue(null)); _applicationDbContext.FunctionClaims.Add(new EFFunctionClaim() { Id = CommonConstant.GenerateId(), Name = claimValue }); } } // create admin user var userName = AGSAdminName; var email = _configuration["default_user_email"]; var userPassword = _configuration["default_user_password"]; var user = new EFApplicationUser { Id = CommonConstant.GenerateId(), UserName = userName, NormalizedEmail = email, NormalizedUserName = userName, Email = email, First_Name = "Tim", Last_Name = "Ng", Title = "Developer", SecurityStamp = CommonConstant.GenerateId(), // need to add this !!! }; _ = _userManager.CreateAsync(user, userPassword).Result; var group1 = new EFApplicationRole { Id = CommonConstant.GenerateId(), Name = "Group_1_Test", NormalizedName = "Group_1_Test", ConcurrencyStamp = CommonConstant.GenerateId() }; var group2 = new EFApplicationRole { Id = CommonConstant.GenerateId(), Name = "Group_2_Test", NormalizedName = "Group_2_Test", ConcurrencyStamp = CommonConstant.GenerateId() }; _ = _roleManager.CreateAsync(group1).Result; _ = _roleManager.CreateAsync(group2).Result; _applicationDbContext.SaveChanges(); }
public AGSGroupEntity GetAGSGroupEntityFromEFApplicationRole(EFApplicationRole role) { var result = new AGSGroupEntity() { Id = role.Id, Name = role.Name, FunctionClaimIds = new List <string>() }; var functionClaimIds = this.GetFunctionClaimIdsByGroupId(role.Id); if (functionClaimIds != null) { result.FunctionClaimIds = functionClaimIds; } return(result); }
public string Create(AGSGroupEntity group) { // create a new role in ASP.NET identity core var role = new EFApplicationRole(); MapAGSGroupEntityToEFApplicationRole(group, role); role.Id = CommonConstant.GenerateId(); // assign id here _ = _roleManager.CreateAsync(role).Result; // update the associated Function Claims if (group.FunctionClaimIds != null) { foreach (var functionClaimId in group.FunctionClaimIds) { this.AddFunctionClaimToGroup(role, functionClaimId); } } return(role.Id); }