public IActionResult RegisterPage(Register obj)
        {
            if (ModelState.IsValid)
            {
                if (!roleManager.RoleExistsAsync("Manager").Result)
                {
                    UserIdentityRole role = new UserIdentityRole();
                    role.Name = "Manager";
                    IdentityResult roleResult = roleManager.
                                                CreateAsync(role).Result;
                }

                UserIdentity user = new UserIdentity();
                user.UserName  = obj.UserName;
                user.Email     = obj.Email;
                user.FullName  = obj.FullName;
                user.BirthDate = obj.BirthDate;

                IdentityResult result = userManager.CreateAsync
                                            (user, obj.Password).Result;

                if (result.Succeeded)
                {
                    userManager.AddToRoleAsync(user, "Manager").Wait();
                    return(RedirectToAction("SignIn", "Security"));
                }
                else
                {
                    ModelState.AddModelError("", "Invalid user details");
                }
            }
            return(View(obj));
        }
        /// <summary>
        /// Generate default admin user / role
        /// </summary>
        private static async Task EnsureSeedIdentityData(UserManager <UserIdentity> userManager,
                                                         RoleManager <UserIdentityRole> roleManager)
        {
            // Create admin role
            if (!await roleManager.RoleExistsAsync(AuthorizationConsts.AdministrationRole))
            {
                var role = new UserIdentityRole {
                    Name = AuthorizationConsts.AdministrationRole
                };

                await roleManager.CreateAsync(role);
            }

            // Create admin user
            if (await userManager.FindByNameAsync(Users.AdminUserName) != null)
            {
                return;
            }

            var user = new UserIdentity
            {
                UserName       = Users.AdminUserName,
                Email          = Users.AdminEmail,
                EmailConfirmed = true
            };

            var result = await userManager.CreateAsync(user, Users.AdminPassword);

            if (result.Succeeded)
            {
                await userManager.AddToRoleAsync(user, AuthorizationConsts.AdministrationRole);
            }
        }
        public async Task <IdentityResult> UpdateRoleAsync(UserIdentityRole role)
        {
            var thisRole = await _roleManager.FindByIdAsync(role.Id.ToString());

            thisRole.Name = role.Name;

            return(await _roleManager.UpdateAsync(thisRole));
        }
Esempio n. 4
0
        private static bool HasUserRole(UserIdentity userIdentity, AddUserToRoleCommand request)
        {
            UserIdentityRole userIdentityRoleEntity = userIdentity
                                                      .UserIdentityRoles
                                                      .FirstOrDefault(userIdentityRole => userIdentityRole.RoleId == request.RoleId);

            return(userIdentityRoleEntity != null);
        }
Esempio n. 5
0
        /// <summary>
        /// Generate default admin user / role
        /// </summary>
        private static async Task EnsureSeedIdentityData(
            UserManager <UserIdentity> userManager,
            RoleManager <UserIdentityRole> roleManager,
            IConfiguration configuration)
        {
            // Create admin role
            if (!await roleManager.RoleExistsAsync("Administrador"))
            {
                var role = new UserIdentityRole {
                    Name = "Administrador"
                };

                await roleManager.CreateAsync(role);
            }

            // Create admin user
            if (await userManager.FindByNameAsync(Users.GetUser(configuration)) != null)
            {
                return;
            }

            var user = new UserIdentity
            {
                UserName       = Users.GetUser(configuration),
                Email          = Users.GetEmail(configuration),
                EmailConfirmed = true,
            };

            var result = await userManager.CreateAsync(user, Users.GetPassword(configuration));

            if (result.Succeeded)
            {
                await userManager.AddClaimAsync(user, new Claim("is4-rights", "manager"));

                await userManager.AddClaimAsync(user, new Claim("username", Users.GetUser(configuration)));

                await userManager.AddClaimAsync(user, new Claim("email", Users.GetEmail(configuration)));

                await userManager.AddToRoleAsync(user, "Administrador");
            }
        }
Esempio n. 6
0
        private static async Task EnsureSeedIdentityData(UserManager <UserIdentity> userManager,
                                                         RoleManager <UserIdentityRole> roleManager)
        {
            #region Perfil Admin

            if (!await roleManager.RoleExistsAsync(AuthorizationConsts.AdministrationRole))
            {
                var role = new UserIdentityRole {
                    Name = AuthorizationConsts.AdministrationRole
                };

                await roleManager.CreateAsync(role);
            }

            if (await userManager.FindByNameAsync(Users.AdminUserName) == null)
            {
                var user = new UserIdentity
                {
                    UserName       = Users.AdminUserName,
                    Email          = Users.AdminEmail,
                    EmailConfirmed = true
                };

                var result = await userManager.CreateAsync(user, Users.AdminPassword);

                if (result.Succeeded)
                {
                    await userManager.AddToRoleAsync(user, AuthorizationConsts.AdministrationRole);
                }
            }

            #endregion

            string consumidorRole = "consumidorrole";
            if (!await roleManager.RoleExistsAsync(consumidorRole))
            {
                var role = new UserIdentityRole {
                    Name = consumidorRole
                };

                await roleManager.CreateAsync(role);
            }

            #region Perfis de Usuarios para os casos

            for (int i = 0; i < 10; i++)
            {
                string consumidor = $"consumidor{i+1}";
                string email      = $"{consumidor}@email.com";

                if (await userManager.FindByNameAsync(consumidor) == null)
                {
                    var user = new UserIdentity
                    {
                        UserName       = consumidor,
                        Email          = email,
                        EmailConfirmed = true
                    };

                    var result = await userManager.CreateAsync(user, "Pa$$word123");

                    if (result.Succeeded)
                    {
                        await userManager.AddToRoleAsync(user, consumidorRole);
                    }
                }
            }

            #endregion
        }
 public Task <IdentityResult> CreateRoleAsync(UserIdentityRole role)
 {
     return(_roleManager.CreateAsync(role));
 }
 public Task <UserIdentityRole> GetRoleAsync(UserIdentityRole role)
 {
     return(_roleManager.Roles.Where(x => x.Id == role.Id).SingleOrDefaultAsync());
 }
 public static RoleDto ToModel(this UserIdentityRole role)
 {
     return(Mapper.Map <RoleDto>(role));
 }
Esempio n. 10
0
 Task IRoleStore <UserIdentityRole> .SetNormalizedRoleNameAsync(UserIdentityRole role, string normalizedName, CancellationToken cancellationToken)
 {
     throw new NotImplementedException();
 }
Esempio n. 11
0
 Task <string> IRoleStore <UserIdentityRole> .GetRoleNameAsync(UserIdentityRole role, CancellationToken cancellationToken)
 {
     throw new NotImplementedException();
 }
Esempio n. 12
0
 Task <IdentityResult> IRoleStore <UserIdentityRole> .DeleteAsync(UserIdentityRole role, CancellationToken cancellationToken)
 {
     throw new NotImplementedException();
 }