Documentation
¶
Overview ¶
Package auth provides authentication and authorization utilities.
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrNoToken = errors.New("no token provided") ErrInvalidToken = errors.New("invalid token") ErrTokenExpired = errors.New("token expired") ErrInvalidIssuer = errors.New("invalid issuer") ErrInvalidAudience = errors.New("invalid audience") ErrMissingJWKSURL = errors.New("missing JWKS URL") ErrFailedToFetchJWKS = errors.New("failed to fetch JWKS") )
Common errors
Functions ¶
This section is empty.
Types ¶
type ClaimsContextKey ¶
type ClaimsContextKey struct{}
ClaimsContextKey is the key used to store claims in the request context.
type JWTValidator ¶
type JWTValidator struct {
// contains filtered or unexported fields
}
JWTValidator validates JWT tokens.
func NewJWTValidator ¶
func NewJWTValidator(ctx context.Context, config JWTValidatorConfig) (*JWTValidator, error)
NewJWTValidator creates a new JWT validator.
func (*JWTValidator) Middleware ¶
func (v *JWTValidator) Middleware(next http.Handler) http.Handler
Middleware creates an HTTP middleware that validates JWT tokens.
func (*JWTValidator) ValidateToken ¶
func (v *JWTValidator) ValidateToken(ctx context.Context, tokenString string) (jwt.MapClaims, error)
ValidateToken validates a JWT token.
type JWTValidatorConfig ¶
type JWTValidatorConfig struct { // Issuer is the OIDC issuer URL (e.g., https://accounts.google.com) Issuer string // Audience is the expected audience for the token Audience string // JWKSURL is the URL to fetch the JWKS from JWKSURL string // ClientID is the OIDC client ID ClientID string }
JWTValidatorConfig contains configuration for the JWT validator.
func NewJWTValidatorConfig ¶
func NewJWTValidatorConfig(issuer, audience, jwksURL, clientID string) *JWTValidatorConfig
NewJWTValidatorConfig creates a new JWTValidatorConfig with the provided parameters
Click to show internal directories.
Click to hide internal directories.