Documentation
¶
Overview ¶
Package auth defines small authentication interfaces and credential types.
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrInvalidIdentity error = errStr("invalid identity") ErrInvalidToken error = errStr("invalid token") ErrExpiredToken error = errStr("expired token") )
Functions ¶
This section is empty.
Types ¶
type Authenticator ¶
type Authenticator[T Identifier] interface { // Issue creates a new token pair for the provided identity. Issue(ctx context.Context, identity T) (at, rt *Token, err error) // Refresh exchanges a token pair for a new token pair. Refresh(ctx context.Context, refreshToken string) (at, rt *Token, err error) // Verify validates an access token and returns its identity. Verify(ctx context.Context, accessToken string) (identity T, err error) // Revoke invalidates a single refresh token. Revoke(ctx context.Context, refreshToken string) (err error) // RevokeAll invalidates every refresh token associated with an identity. RevokeAll(ctx context.Context, identity T) (err error) }
Authenticator issues, verifies, refreshes, and revokes credentials for an identity type.
type Identifier ¶
type Identifier interface {
Subject() string
}
Identifier exposes the stable subject identifier used in tokens.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package authenticators documents auth.Authenticator implementation patterns.
|
Package authenticators documents auth.Authenticator implementation patterns. |
|
memory
Package memory provides an in-memory auth.Authenticator implementation.
|
Package memory provides an in-memory auth.Authenticator implementation. |
|
Package jwt provides minimal JWT signing and verification helpers.
|
Package jwt provides minimal JWT signing and verification helpers. |
Click to show internal directories.
Click to hide internal directories.