Documentation
¶
Index ¶
- func AccountIDCookie() string
- func AddTokenMD(ctx context.Context, token string) context.Context
- func DefaultAdminGroup() string
- func DefaultAdminGroups() []string
- func DefaultSuperAdminGroup() string
- func DefaultUserGroup() string
- func Header() string
- func JWTCookie() string
- func RefreshCookie() string
- func Scheme() string
- func SessionIDCookie() string
- type API
- type Claims
- type Options
- type Payload
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AccountIDCookie ¶
func AccountIDCookie() string
AccountIDCookie is name of cookie holding account ID of signed in user
func AddTokenMD ¶
AddTokenMD adds token as authorization metadata to context and returns the updated context object
func DefaultAdminGroup ¶
func DefaultAdminGroup() string
DefaultAdminGroup is the default admin group
func DefaultAdminGroups ¶
func DefaultAdminGroups() []string
DefaultAdminGroups returns the default administrators group
func DefaultSuperAdminGroup ¶
func DefaultSuperAdminGroup() string
DefaultSuperAdminGroup is the default super admin group
func RefreshCookie ¶
func RefreshCookie() string
RefreshCookie is name of cookie holding jwt refresh token
func SessionIDCookie ¶
func SessionIDCookie() string
SessionIDCookie is name of cookie holding session ID of signed in user
Types ¶
type API ¶
type API interface {
AuthenticateRequest(ctx context.Context) error
AuthenticateRequestV2(ctx context.Context) (*Payload, error)
AuthorizeGroup(ctx context.Context, allowedGroups ...string) (*Payload, error)
AuthorizeActor(ctx context.Context, actorID string) (*Payload, error)
AuthorizeActors(ctx context.Context, actorID ...string) (*Payload, error)
AuthorizeActorAndGroup(ctx context.Context, actorID string, allowedGroups ...string) (*Payload, error)
AuthorizeActorOrGroup(ctx context.Context, actorID string, allowedGroups ...string) (*Payload, error)
AuthorizeAdmin(ctx context.Context) (*Payload, error)
AuthorizeAdminStrict(ctx context.Context, adminID string) (*Payload, error)
AdminGroups() []string
AddAdminGroups(groups ...string)
IsAdmin(group string) bool
GenToken(ctx context.Context, payload *Payload, expires time.Time) (string, error)
GenTokenUsingKey(ctx context.Context, claims *Claims, expires time.Time, signingKey []byte) (string, error)
GenTokenFromClaims(ctx context.Context, claims *Claims, expires time.Time) (string, error)
GetJwtPayload(ctx context.Context) (*Payload, error)
GetPayloadFromJwt(jwt string) (*Payload, error)
GetClaims(ctx context.Context) (*Claims, error)
GetClaimsFromJwt(jwt string) (*Claims, error)
GetMetadataFromJwt(jwt string) (metadata.MD, error)
GetMetadataFromCtx(ctx context.Context) (metadata.MD, error)
AuthorizeFunc(ctx context.Context) (context.Context, error)
}
API is the interface used for authentication and authorization
type Claims ¶
type Claims struct {
*Payload
jwt.StandardClaims
}
Claims contains JWT claims information
Click to show internal directories.
Click to hide internal directories.