public User Authenticate(string username, string password)
        {
            var user         = GetUserByUsername(username);
            var passwordHash = PasswordCreator.GetHash(password, user.PasswordSalt);

            if (user.PasswordHash != passwordHash)
            {
                throw new IncorrectPasswordException();
            }

            return(user);
        }
        private static void AddUsers(ApplicationDbContext context)
        {
            var passwordSalt = PasswordCreator.GetSalt();
            var passwordHash = PasswordCreator.GetHash("admin", passwordSalt);

            var admin = new User
            {
                FirstName    = "Admin First Name",
                LastName     = "Admin Last Name",
                Email        = "*****@*****.**",
                IsActive     = true,
                PasswordSalt = passwordSalt,
                PasswordHash = passwordHash,
                Username     = "******"
            };

            context.Users.Add(admin);

            context.SaveChanges();
        }