auth

package
v0.8.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 23, 2025 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const (
	HeaderHMACHash      = "X-HMAC-Hash"
	HeaderHMACTimestamp = "X-HMAC-Timestamp"
	HeaderHMACNonce     = "X-HMAC-Nonce"

	HMACKeyId     = "HMACKeyId"
	HMACTimestamp = "HMACTimestamp"
	HMACNonce     = "HMACNonce"
	DefaultKeyId  = "authenticated"
)
View Source
const (
	ContextJwtClaims = "jwtClaims"
)
View Source
const (
	DefaultTokenAuthHeader = "X-API-Key"
)

Variables

This section is empty.

Functions

func AuthMiddleware

func AuthMiddleware(auth Provider) gin.HandlerFunc

func GetHMACDetails

func GetHMACDetails(c *gin.Context) (string, string, string, bool)

GetHMACDetails fetch hmac details returns keyId, timestamp, nonce, true if success

func GetHMACIdentity

func GetHMACIdentity(c *gin.Context) (string, bool)

GetHMACIdentity fetch hmac keyId

func GetJWTClaims

func GetJWTClaims(c *gin.Context) (*jwtprovider.Claims, bool)

GetJWTClaims helper to get claims from gin context

func GetJWTToken

func GetJWTToken(c *gin.Context) (string, bool)

GetJWTToken helper to get JWT token from gin context

func GetSessionIdentity

func GetSessionIdentity(c *gin.Context) (any, bool)

Types

type Provider

type Provider interface {
	CanAccess(c *gin.Context) bool
}

func NewAuthJWT

func NewAuthJWT(p jwtprovider.JWTParser) Provider

func NewAuthSession

func NewAuthSession(gobIdentityTypes ...any) Provider

NewAuthSession creates a new auth session gobIdentityTypes are optional identity types for user identity that need to be registered with gob() for correct serialization/deserialization

func NewAuthToken

func NewAuthToken(headerName string, key string) Provider

NewAuthToken create simple auth token provider checks a predefined header for a specific token

func NewAuthTokenList

func NewAuthTokenList(headerName string, keyList []string) Provider

NewAuthTokenList create simple auth token provider checks if a predefined header has a specific token from a token list

func NewHMACAuthProvider

func NewHMACAuthProvider(provider *hmacprovider.HMACProvider) Provider

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL