Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Middleware ¶
type Middleware interface {
AllOfRoles(requiredRoles ...string) gin.HandlerFunc
AnyOfRoles(allowedRoles ...string) gin.HandlerFunc
AnyAuthenticated() gin.HandlerFunc
}
func NewAuthMiddleware ¶
func NewAuthMiddleware(verifier TokenVerifier) Middleware
func NewMockedAuthMiddleware ¶
func NewMockedAuthMiddleware(mockedToken *TokenContext) Middleware
type TokenContext ¶
type TokenContext struct {
ID string `json:"id,omitempty" bson:"_id,omitempty"`
IssuedAt time.Time `json:"issuedAt" bson:"issuedAt"`
ExpiresAt time.Time `json:"expiresAt,omitempty" bson:"expiresAt,omitempty"`
Issuer string `json:"issuer,omitempty" bson:"issuer,omitempty"`
Subject string `json:"subject,omitempty" bson:"subject,omitempty"`
IP string `json:"ip,omitempty" bson:"ip,omitempty"`
Roles []string `json:"roles" bson:"roles"`
Resources []string `json:"resources" bson:"resources"`
Raw string `json:"raw" bson:"raw"`
}
func GetTokenContext ¶
func GetTokenContext(c *gin.Context) *TokenContext
type TokenGenerator ¶
type TokenManager ¶
type TokenManager interface {
TokenVerifier
TokenGenerator
TokenRevoker
}
type TokenOpt ¶
type TokenOpt = func(*TokenOptions)
type TokenOptions ¶
type TokenRevoker ¶
type TokenRevoker interface {
Revoke(*TokenContext) error
}
type TokenVerifier ¶
type TokenVerifier interface {
Verify(tokenString string) (*TokenContext, error)
}
Click to show internal directories.
Click to hide internal directories.