Documentation
¶
Index ¶
- Variables
- func GetPublicKey(key string) func(token *jwt.Token) (interface{}, error)
- func GetTokenFromAuthBearer(r *http.Request) string
- func GetTokenFromHeader(r *http.Request, key string) string
- func GetTokenFromQuery(r *http.Request, key string) string
- type AuthClaims
- type Details
- type Options
- type TokenSource
- type VerifierService
- type VerifierServiceCreator
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // DefaultAuthHeaderKey ... DefaultAuthHeaderKey = `X-AuthVerifierToken` // DefaultExpiry ... DefaultExpiry = 2800 // minutes ( 2 days default ) // DefaultGetQueryParam ... DefaultGetQueryParam = "verifier" // ErrMissingParams ... ErrMissingParams = errors.New("missing required parameters") // ErrEmptyToken ... ErrEmptyToken = errors.New("empty token") // ErrInvalidToken ... ErrInvalidToken = errors.New("invalid token") // ErrConvertClaims ... ErrConvertClaims = errors.New("fail convert claims") )
Functions ¶
func GetPublicKey ¶
GetPublicKey ...
func GetTokenFromAuthBearer ¶
GetTokenFromAuthBearer ...
func GetTokenFromHeader ¶
GetTokenFromHeader ...
Types ¶
type AuthClaims ¶
type AuthClaims struct { jwt.StandardClaims // standard claims MetaInfo interface{} `json:"meta_info,omitempty"` Details *Details `json:"details,omitempty"` }
AuthClaims custom claims
func (*AuthClaims) CheckSubject ¶
func (s *AuthClaims) CheckSubject(salt string) bool
CheckSubject ...
type Details ¶
type Details struct { UUID string `json:"uuid,omitempty"` AuthToken string `json:"auth_token,omitempty"` RefreshToken string `json:"refresh_token,omitempty"` AuthType string `json:"auth_type,omitempty"` Name string `json:"name,omitempty"` Method string `json:"method,omitempty"` Roles []string `json:"roles,omitempty"` }
Details ...
type Options ¶
type Options struct { PrivateKey string PublicKey string TokenSource TokenSource Expiry int }
Options ...
type TokenSource ¶
TokenSource ...
type VerifierService ¶
type VerifierService struct {
// contains filtered or unexported fields
}
VerifierService ...
func (*VerifierService) Sign ¶
func (s *VerifierService) Sign(payload *AuthClaims) (string, error)
Sign ... sign the payload
func (*VerifierService) UnSign ¶
func (s *VerifierService) UnSign(req *http.Request) (*AuthClaims, error)
UnSign ... verify the signed payload
type VerifierServiceCreator ¶
type VerifierServiceCreator interface { Sign(payload *AuthClaims) (string, error) UnSign(req *http.Request) (*AuthClaims, error) }
VerifierServiceCreator ...
func NewVerifierService ¶
func NewVerifierService(opts *Options) VerifierServiceCreator
NewVerifierService create a service
Click to show internal directories.
Click to hide internal directories.