Пример #1
0
        public Role(string Name, string DefaultGroup)
        {
            var normalizer = new UpperInvariantLookupNormalizer();

            this.Name           = Name;
            this.DefaultGroup   = DefaultGroup;
            this.NormalizedName = normalizer.NormalizeName(this.Name);
        }
Пример #2
0
        public User(string username, string email, string[] roles, bool canUserChangePassword, string level)
        {
            var normalizer = new UpperInvariantLookupNormalizer();

            UserName           = username;
            NormalizedUserName = normalizer.NormalizeName(UserName);
            Email                 = email;
            NormalizedEmail       = normalizer.NormalizeEmail(email);
            Roles                 = roles?.ToArray();
            Level                 = level;
            CanUserChangePassword = canUserChangePassword;
        }
Пример #3
0
        public User(UserData userData)
        {
            var normalizer = new UpperInvariantLookupNormalizer();

            UserName           = userData.Username;
            NormalizedUserName = normalizer.NormalizeName(UserName);
            Email                 = userData.Email;
            NormalizedEmail       = normalizer.NormalizeEmail(Email);
            Roles                 = userData.Roles.ToArray();
            Level                 = userData.Level;
            CanUserChangePassword = userData.CanUserChangePassword;
            PasswordHash          = userData.HashedPassword;
            SecurityStamp         = userData.SecurityStamp;
            Id = userData._EntityId;
        }
Пример #4
0
        public async Task AddToRole(string roleName, string userName)
        {
            var user = await _userManager.FindByNameAsync(userName.ToUpper());


            if (user != null)
            {
                if (!await _roleManager.RoleExistsAsync(roleName))
                {
                    var normalizer   = new UpperInvariantLookupNormalizer();
                    var identityRole = new IdentityRole(roleName);
                    identityRole.NormalizedName = normalizer.NormalizeName(roleName);


                    await _roleManager.CreateAsync(identityRole);
                }


                await _userManager.AddToRoleAsync(user, roleName);

                //await _userManager.AddToRolesAsync(user, roleName);
                //await _userManager.AddClaimAsync(user, new Claim(ClaimTypes.Role, roleName));
            }
        }
        /// <summary>
        /// Configures the schema needed for the KerykeionCms.
        /// </summary>
        /// <param name="builder">The builder being used to construct the model for this context.</param>
        protected override void OnModelCreating(ModelBuilder builder)
        {
            base.OnModelCreating(builder);

            ILookupNormalizer normalizer = new UpperInvariantLookupNormalizer();

            builder.Entity <IdentityRole <Guid> >().HasData
            (
                new IdentityRole <Guid> {
                Name = RoleContstants.Administrator, Id = new Guid("A2EB5341-22E7-43C7-AC0E-C4AFED51DB2B"), NormalizedName = normalizer.NormalizeName(RoleContstants.Administrator)
            },
                new IdentityRole <Guid> {
                Name = RoleContstants.Editor, Id = new Guid("57F5DC72-FA6D-4038-B337-D00BEF5A759A"), NormalizedName = normalizer.NormalizeName(RoleContstants.Editor)
            },
                new IdentityRole <Guid> {
                Name = RoleContstants.RegularUser, Id = new Guid("2DD7B94B-CE9A-473A-B955-2FAD487BD435"), NormalizedName = normalizer.NormalizeName(RoleContstants.RegularUser)
            }
            );

            builder.Entity <Link>()
            .HasOne(l => l.Webpage)
            .WithMany(w => w.Links)
            .OnDelete(DeleteBehavior.Cascade);

            builder.Entity <Article>()
            .HasOne(l => l.Webpage)
            .WithMany(w => w.Articles)
            .OnDelete(DeleteBehavior.SetNull);
        }