Add option to check for weak passwords

This commit is contained in:
eikendev 2021-01-16 15:29:04 +01:00
parent ad56422838
commit b06bd51d21
No known key found for this signature in database
GPG key ID: A1BDB1B28C8EF694
12 changed files with 141 additions and 15 deletions

View file

@ -36,25 +36,35 @@ type CreateUser struct {
}
// NewUser creates a new user.
func NewUser(cm *credentials.Manager, name, password string, isAdmin bool, matrixID string) *User {
func NewUser(cm *credentials.Manager, name, password string, isAdmin bool, matrixID string) (*User, error) {
log.Printf("Creating user %s.\n", name)
passwordHash, err := cm.CreatePasswordHash(password)
if err != nil {
return nil, err
}
return &User{
Name: name,
PasswordHash: cm.CreatePasswordHash(password),
PasswordHash: passwordHash,
IsAdmin: isAdmin,
MatrixID: matrixID,
}
}, nil
}
// IntoInternalUser converts a CreateUser into a User.
func (u *CreateUser) IntoInternalUser(cm *credentials.Manager) *User {
func (u *CreateUser) IntoInternalUser(cm *credentials.Manager) (*User, error) {
passwordHash, err := cm.CreatePasswordHash(u.Password)
if err != nil {
return nil, err
}
return &User{
Name: u.Name,
PasswordHash: cm.CreatePasswordHash(u.Password),
PasswordHash: passwordHash,
IsAdmin: u.IsAdmin,
MatrixID: u.MatrixID,
}
}, nil
}
// IntoExternalUser converts a User into a ExternalUser.