Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type RefreshTokenAuthenticator ¶
type RefreshTokenAuthenticator struct {
// contains filtered or unexported fields
}
RefreshTokenAuthenticator authenticates a refresh token and returns the auth.Subject it belongs to.
func NewRefreshTokenAuthenticator ¶
func NewRefreshTokenAuthenticator(verifier RefreshTokenVerifier, subjectRepository SubjectRepository) RefreshTokenAuthenticator
NewRefreshTokenAuthenticator returns a new RefreshTokenAuthenticator.
func (RefreshTokenAuthenticator) AuthenticateRefreshToken ¶
func (a RefreshTokenAuthenticator) AuthenticateRefreshToken(ctx context.Context, service string, refreshToken string) (auth.Subject, error)
AuthenticateRefreshToken implements auth.RefreshTokenAuthenticator.
type RefreshTokenVerifier ¶
type RefreshTokenVerifier interface {
VerifyRefreshToken(ctx context.Context, service string, refreshToken string) (auth.SubjectID, error)
}
RefreshTokenVerifier verifies a refresh token and returns the Subject ID it belongs to.
type SubjectRepository ¶
type SubjectRepository interface {
GetSubjectByID(ctx context.Context, id auth.SubjectID) (auth.Subject, error)
}
SubjectRepository looks up an auth.Subject based on an identifier.
type User ¶
User is an auth.Subject.
func (User) Attributes ¶
Attributes implements auth.Subject.
type UserAuthenticator ¶
type UserAuthenticator struct {
// contains filtered or unexported fields
}
UserAuthenticator is a static list of users.
func NewUserAuthenticator ¶
func NewUserAuthenticator(users []User) UserAuthenticator
NewUserAuthenticator returns a new UserAuthenticator.
func (UserAuthenticator) AuthenticatePassword ¶
func (a UserAuthenticator) AuthenticatePassword(_ context.Context, username string, password string) (auth.Subject, error)
AuthenticatePassword implements auth.PasswordAuthenticator.
func (UserAuthenticator) GetSubjectByID ¶
func (a UserAuthenticator) GetSubjectByID(_ context.Context, id auth.SubjectID) (auth.Subject, error)
GetSubjectByID implements SubjectRepository.