Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var NoExpiration time.Time //nolint:gochecknoglobals
NoExpiration can be passed to the generator to indicate no expiration time.
Functions ¶
This section is empty.
Types ¶
type IDGenerator ¶
type IDGenerator interface {
Generate() string
}
IDGenerator generates an opaque ID.
type JWTTokenGenerator ¶
type JWTTokenGenerator struct {
// contains filtered or unexported fields
}
JWTTokenGenerator generates an API token.
func NewJWTTokenGenerator ¶
func NewJWTTokenGenerator(issuer string, audience string, signingKey string, opts ...JWTTokenGeneratorOption) JWTTokenGenerator
NewJWTTokenGenerator returns a new JWTTokenGenerator.
type JWTTokenGeneratorOption ¶
type JWTTokenGeneratorOption interface {
// contains filtered or unexported methods
}
JWTTokenGeneratorOption option configures optional parameters of a JWTTokenGenerator.
func TokenGeneratorClock ¶
func TokenGeneratorClock(clock Clock) JWTTokenGeneratorOption
TokenGeneratorClock sets the clock in a JWTTokenGenerator. It falls back to the system clock.
func TokenIDGenerator ¶
func TokenIDGenerator(idgen IDGenerator) JWTTokenGeneratorOption
TokenIDGenerator sets the ID Generator in a JWTTokenGenerator. It falls back to UUID.
func TokenSigningMethod ¶
func TokenSigningMethod(signingMethod jose.SignatureAlgorithm) JWTTokenGeneratorOption
TokenSigningMethod sets the signing method in a JWTTokenGenerator. It falls back to HS256.
type TokenGenerator ¶
type TokenGenerator interface { // GenerateToken generates a token. GenerateToken(sub string, expiresAt time.Time, tokenType string, tokenText string) (string, string, error) }
TokenGenerator generates a token.
type TokenManager ¶
type TokenManager struct {
// contains filtered or unexported fields
}
TokenManager manages tokens.
func NewTokenManager ¶
func NewTokenManager(generator TokenGenerator, store auth.TokenStore) TokenManager
NewTokenManager returns a new TokenManager.