✨ Offer password generation and query
This commit is contained in:
+6
-6
@@ -53,9 +53,9 @@ func (cmd CmdUserList) Run(app *app) error {
|
||||
}
|
||||
|
||||
type CmdUserAdd struct {
|
||||
Username string `arg:"" name:"username" help:"The username to be added."`
|
||||
Password string `name:"password" help:"The password of the new user."`
|
||||
Role GlobalRole `name:"role" default:"user" help:"Role of the user. 'admin' or ' user'"`
|
||||
Username string `arg:"" name:"username" help:"The username to be added."`
|
||||
PasswordParam
|
||||
Role GlobalRole `name:"role" default:"user" help:"Role of the user. 'admin' or ' user'"`
|
||||
}
|
||||
|
||||
func (cmd CmdUserAdd) Run(app *app) error {
|
||||
@@ -66,14 +66,14 @@ func (cmd CmdUserAdd) Run(app *app) error {
|
||||
return fmt.Errorf("invalid user role")
|
||||
}
|
||||
|
||||
hash, err := bcrypt.GenerateFromPassword([]byte(cmd.Password), 0)
|
||||
password, err := cmd.acquirePassword()
|
||||
if err != nil {
|
||||
return fmt.Errorf("cannot hash password: %w", err)
|
||||
return fmt.Errorf("cannot acquire password for user: %w", err)
|
||||
}
|
||||
|
||||
user := User{
|
||||
Username: cmd.Username,
|
||||
Password: string(hash),
|
||||
Password: password,
|
||||
Role: cmd.Role,
|
||||
}
|
||||
return app.userStore.AddUser(user)
|
||||
|
||||
Reference in New Issue
Block a user