blob: b1addebc9448a98032c1eaeb7b913f0171ef45d3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
package authentication
import (
"github.com/authelia/authelia/v4/internal/model"
)
// UserProvider is the interface for interacting with the authentication backends.
type UserProvider interface {
model.StartupCheck
// CheckUserPassword is used to check if a password matches for a specific user.
CheckUserPassword(username string, password string) (valid bool, err error)
// GetDetails is used to get a user's information.
GetDetails(username string) (details *UserDetails, err error)
GetDetailsExtended(username string) (details *UserDetailsExtended, err error)
// UpdatePassword is used to change a user's password without verifying their old password.
UpdatePassword(username string, newPassword string) (err error)
// ChangePassword is used to change a user's password but requires their old password to be successfully verified.
ChangePassword(username string, oldPassword string, newPassword string) (err error)
Close() (err error)
}
|