API: Implement creation and revocation of app passwords #808 #4114

Note that these changes are not production ready yet and must be tested
well before releasing them.

Signed-off-by: Michael Mayer <michael@photoprism.app>
This commit is contained in:
Michael Mayer
2024-04-07 16:44:30 +02:00
parent 6b0abfded1
commit 33fac8f404
46 changed files with 529 additions and 264 deletions

View File

@@ -13,13 +13,18 @@ var (
ErrAccountAlreadyExists = errors.New("account already exists")
ErrAccountNotFound = errors.New("account not found")
ErrAccountDisabled = errors.New("account disabled")
ErrInvalidRequest = errors.New("invalid request")
ErrInvalidCredentials = errors.New("invalid credentials")
ErrInvalidShareToken = errors.New("invalid share token")
ErrTokenRequired = errors.New("token required")
ErrInvalidToken = errors.New("invalid token")
ErrInvalidTokenType = errors.New("invalid token type")
ErrInsufficientScope = errors.New("insufficient scope")
ErrNameRequired = errors.New("name required")
ErrScopeRequired = errors.New("scope required")
ErrDisabledInPublicMode = errors.New("disabled in public mode")
ErrAuthenticationDisabled = errors.New("authentication disabled")
ErrRateLimitExceeded = errors.New("rate limit exceeded")
)
// OAuth2-related error messages:
@@ -31,7 +36,7 @@ var (
ErrClientSecretRequired = errors.New("client secret required")
)
// Username-related error messages:
// User-related error messages:
var (
ErrUsernameRequired = errors.New("username required")
ErrInvalidUsername = errors.New("invalid username")
@@ -39,15 +44,21 @@ var (
// Passcode-related error messages:
var (
ErrPasscodeRequired = errors.New("passcode required")
ErrPasscodeNotSetUp = errors.New("passcode required, but not configured")
ErrPasscodeNotVerified = errors.New("passcode not verified")
ErrPasscodeAlreadyActivated = errors.New("passcode already activated")
ErrPasscodeNotSupported = errors.New("passcode not supported")
ErrInvalidPasscode = errors.New("invalid passcode")
ErrInvalidPasscodeFormat = errors.New("invalid passcode format")
ErrInvalidPasscodeKey = errors.New("invalid passcode key")
ErrInvalidPasscodeType = errors.New("invalid passcode type")
ErrPasscodeRequired = errors.New("passcode required")
ErrPasscodeNotSetUp = errors.New("passcode required, but not configured")
ErrPasscodeNotVerified = errors.New("passcode not verified")
ErrPasscodeAlreadyActivated = errors.New("passcode already activated")
ErrPasscodeGenerateFailed = errors.New("failed to generate passcode")
ErrPasscodeCreateFailed = errors.New("failed to create passcode")
ErrPasscodeSaveFailed = errors.New("failed to save passcode")
ErrPasscodeVerificationFailed = errors.New("failed to verify passcode")
ErrPasscodeActivationFailed = errors.New("failed to activate passcode")
ErrPasscodeDeactivationFailed = errors.New("failed to deactivate passcode")
ErrPasscodeNotSupported = errors.New("passcode not supported")
ErrInvalidPasscode = errors.New("invalid passcode")
ErrInvalidPasscodeFormat = errors.New("invalid passcode format")
ErrInvalidPasscodeKey = errors.New("invalid passcode key")
ErrInvalidPasscodeType = errors.New("invalid passcode type")
)
// Password-related error messages: