dataprovider: add naming rules

naming rules allow to support case insensitive usernames, trim trailing
and leading white spaces, and accept any valid UTF-8 characters in
usernames.

If you were enabling `skip_natural_keys_validation` now you need to
set `naming_rules` to `1`

Fixes #687

Signed-off-by: Nicola Murino <nicola.murino@gmail.com>
This commit is contained in:
Nicola Murino
2022-01-31 18:01:37 +01:00
parent fb2d59ec92
commit 02db00d008
13 changed files with 137 additions and 30 deletions

View File

@@ -123,6 +123,7 @@ func updateUser(w http.ResponseWriter, r *http.Request) {
return
}
userID := user.ID
username = user.Username
totpConfig := user.Filters.TOTPConfig
recoveryCodes := user.Filters.RecoveryCodes
currentPermissions := user.Permissions
@@ -184,7 +185,7 @@ func deleteUser(w http.ResponseWriter, r *http.Request) {
return
}
sendAPIResponse(w, r, err, "User deleted", http.StatusOK)
disconnectUser(username)
disconnectUser(dataprovider.ConvertName(username))
}
func forgotUserPassword(w http.ResponseWriter, r *http.Request) {