Versions in this module Expand all Collapse all v4 v4.5.4 Jan 11, 2024 v4.5.3 Jan 11, 2024 Changes in this version + type AccessGenerate interface + Token func(ctx context.Context, data *GenerateBasic, isGenRefresh bool) (access, refresh string, err error) + type AuthorizeGenerate interface + Token func(ctx context.Context, data *GenerateBasic) (code string, err error) + type ClientInfo interface + GetDomain func() string + GetID func() string + GetSecret func() string + GetUserID func() string + IsPublic func() bool + type ClientPasswordVerifier interface + VerifyPassword func(string) bool + type ClientStore interface + GetByID func(ctx context.Context, id string) (ClientInfo, error) + type CodeChallengeMethod string + const CodeChallengePlain + const CodeChallengeS256 + func (ccm CodeChallengeMethod) String() string + func (ccm CodeChallengeMethod) Validate(cc, ver string) bool + type GenerateBasic struct + Client ClientInfo + CreateAt time.Time + Request *http.Request + TokenInfo TokenInfo + UserID string + type GrantType string + const AuthorizationCode + const ClientCredentials + const Implicit + const PasswordCredentials + const Refreshing + func (gt GrantType) String() string + type Manager interface + GenerateAccessToken func(ctx context.Context, gt GrantType, tgr *TokenGenerateRequest) (accessToken TokenInfo, err error) + GenerateAuthToken func(ctx context.Context, rt ResponseType, tgr *TokenGenerateRequest) (authToken TokenInfo, err error) + GetClient func(ctx context.Context, clientID string) (cli ClientInfo, err error) + LoadAccessToken func(ctx context.Context, access string) (ti TokenInfo, err error) + LoadRefreshToken func(ctx context.Context, refresh string) (ti TokenInfo, err error) + RefreshAccessToken func(ctx context.Context, tgr *TokenGenerateRequest) (accessToken TokenInfo, err error) + RemoveAccessToken func(ctx context.Context, access string) (err error) + RemoveRefreshToken func(ctx context.Context, refresh string) (err error) + type ResponseType string + const Code + const Token + func (rt ResponseType) String() string + type TokenGenerateRequest struct + AccessTokenExp time.Duration + ClientID string + ClientSecret string + Code string + CodeChallenge string + CodeChallengeMethod CodeChallengeMethod + CodeVerifier string + RedirectURI string + Refresh string + Request *http.Request + Scope string + UserID string + type TokenInfo interface + GetAccess func() string + GetAccessCreateAt func() time.Time + GetAccessExpiresIn func() time.Duration + GetClientID func() string + GetCode func() string + GetCodeChallenge func() string + GetCodeChallengeMethod func() CodeChallengeMethod + GetCodeCreateAt func() time.Time + GetCodeExpiresIn func() time.Duration + GetRedirectURI func() string + GetRefresh func() string + GetRefreshCreateAt func() time.Time + GetRefreshExpiresIn func() time.Duration + GetScope func() string + GetUserID func() string + New func() TokenInfo + SetAccess func(string) + SetAccessCreateAt func(time.Time) + SetAccessExpiresIn func(time.Duration) + SetClientID func(string) + SetCode func(string) + SetCodeChallenge func(string) + SetCodeChallengeMethod func(CodeChallengeMethod) + SetCodeCreateAt func(time.Time) + SetCodeExpiresIn func(time.Duration) + SetRedirectURI func(string) + SetRefresh func(string) + SetRefreshCreateAt func(time.Time) + SetRefreshExpiresIn func(time.Duration) + SetScope func(string) + SetUserID func(string) + type TokenStore interface + Create func(ctx context.Context, info TokenInfo) error + GetByAccess func(ctx context.Context, access string) (TokenInfo, error) + GetByCode func(ctx context.Context, code string) (TokenInfo, error) + GetByRefresh func(ctx context.Context, refresh string) (TokenInfo, error) + RemoveByAccess func(ctx context.Context, access string) error + RemoveByCode func(ctx context.Context, code string) error + RemoveByRefresh func(ctx context.Context, refresh string) error