Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func JWTMiddleware ¶
func JWTMiddleware(config *JWTConfig) gin.HandlerFunc
JWTMiddleware crea middleware de autenticación JWT mejorado
func RequireRole ¶ added in v1.0.0
func RequireRole(role string) gin.HandlerFunc
RequireRole middleware que requiere un rol específico
Types ¶
type Claims ¶ added in v1.0.0
type Claims struct {
UserID string `json:"sub"`
TenantID string `json:"tenant_id"`
Role string `json:"role"`
Permissions []string `json:"permissions,omitempty"`
Email string `json:"email"`
SessionID string `json:"session_id,omitempty"`
TokenType string `json:"token_type"`
jwt.RegisteredClaims
}
Claims representa los claims del JWT token
type JWTConfig ¶
type JWTConfig struct {
// Token configuration
SecretKey string
TokenLookup string // "header:Authorization,query:token,cookie:jwt"
TokenHeadName string // "Bearer"
TokenExpiration time.Duration
// Validation options
SkipPaths []string
RequiredClaims []string
AllowedIssuers []string
// Cache configuration for token blacklist/validation
CacheClient cache.CacheInterface
CachePrefix string
CacheTTL time.Duration
// Security options
EnableBlacklist bool
MaxTokensPerUser int
// Custom functions
SkipperFunc func(*gin.Context) bool
ClaimsFunc func(*gin.Context, *Claims)
ErrorHandler func(*gin.Context, error)
}
JWTConfig configuración del middleware JWT mejorada
func DefaultJWTConfig ¶
DefaultJWTConfig retorna configuración por defecto mejorada
Click to show internal directories.
Click to hide internal directories.