jwt

package module
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Oct 13, 2023 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// LOGIN_TYPE payload key
	LOGIN_TYPE = "loginType"
	LOGIN_ID   = "loginId"
	DEVICE     = "device"
	// EFF expirationTime
	EFF    = "eff"
	RANDOM = "random"
	// NEVER_EXPIRE if expiration time <= -1, return NEVER_EXPIRE
	NEVER_EXPIRE = constant.NeverExpire
	// NOT_VALUE_EXPIRE if expiration time < time.now(), return NOT_VALUE_EXPIRE
	NOT_VALUE_EXPIRE = constant.NotValueExpire
	// EXTRA_DATA extra data key
	EXTRA_DATA = "extraData"
)

jwt payload key

Variables

This section is empty.

Functions

This section is empty.

Types

type IEnforcer

type IEnforcer interface {
	// Login login api
	Login(id string, ctx ctx.Context) (string, error)
	LoginByModel(id string, loginModel *model.Login, ctx ctx.Context) (string, error)

	GetLoginId(ctx ctx.Context) (string, error)
	GetClaims(ctx ctx.Context) (jwt.Claims, error)
	GetExtraData(ctx ctx.Context, key string) (interface{}, error)
	GetRequestToken(ctx ctx.Context) string

	GetIdByToken(token string) (string, error)
	GetClaimsByToken(token string) (jwt.Claims, error)
	GetExtraDataByToken(token string, key string) (interface{}, error)

	GetTokenTimeout(token string) (int64, error)

	SetAuth(manager interface{})
	CheckRole(ctx ctx.Context, role string) error
	CheckPermission(ctx ctx.Context, permission string) error

	GetSecretKey() string
	SetSecretKey(secret string)

	SetType(t string)
	GetType() string
	GetAdapter() persist.Adapter
	SetAdapter(adapter persist.Adapter)
	SetWatcher(watcher persist.Watcher)
	GetWatcher() persist.Watcher
	SetLogger(logger log.Logger)
	GetLogger() log.Logger
	EnableLog()
	IsLogEnable() bool
	GetTokenConfig() config.TokenConfig
}

type StatelessEnforcer

type StatelessEnforcer struct {
	// contains filtered or unexported fields
}

StatelessEnforcer use Jwt implement

func NewEnforcer

func NewEnforcer(args ...interface{}) (*StatelessEnforcer, error)

NewEnforcer new jwt enforcer, parameter need TokenConfig or string

func (*StatelessEnforcer) CheckPermission

func (s *StatelessEnforcer) CheckPermission(ctx ctx.Context, permission string) error

func (*StatelessEnforcer) CheckRole

func (s *StatelessEnforcer) CheckRole(ctx ctx.Context, role string) error

func (*StatelessEnforcer) EnableLog

func (s *StatelessEnforcer) EnableLog()

func (*StatelessEnforcer) GetAdapter

func (s *StatelessEnforcer) GetAdapter() persist.Adapter

func (*StatelessEnforcer) GetClaims

func (s *StatelessEnforcer) GetClaims(ctx ctx.Context) (jwt.Claims, error)

GetClaims get claims by web context

func (*StatelessEnforcer) GetClaimsByToken

func (s *StatelessEnforcer) GetClaimsByToken(token string) (jwt.Claims, error)

GetClaimsByToken get token claims

func (*StatelessEnforcer) GetExtraData

func (s *StatelessEnforcer) GetExtraData(ctx ctx.Context, key string) (interface{}, error)

GetExtraData get extra data by web context

func (*StatelessEnforcer) GetExtraDataByToken

func (s *StatelessEnforcer) GetExtraDataByToken(token string, key string) (interface{}, error)

GetExtraDataByToken parse extraData map

func (*StatelessEnforcer) GetIdByToken

func (s *StatelessEnforcer) GetIdByToken(token string) (string, error)

GetIdByToken parse token and get id

func (*StatelessEnforcer) GetLogger

func (s *StatelessEnforcer) GetLogger() log.Logger

func (*StatelessEnforcer) GetLoginId

func (s *StatelessEnforcer) GetLoginId(ctx ctx.Context) (string, error)

func (*StatelessEnforcer) GetRequestToken

func (s *StatelessEnforcer) GetRequestToken(ctx ctx.Context) string

GetRequestToken get token from request

func (*StatelessEnforcer) GetSecretKey

func (s *StatelessEnforcer) GetSecretKey() string

func (*StatelessEnforcer) GetTokenConfig

func (s *StatelessEnforcer) GetTokenConfig() config.TokenConfig

func (*StatelessEnforcer) GetTokenTimeout

func (s *StatelessEnforcer) GetTokenTimeout(token string) (int64, error)

GetTokenTimeout parse and get token timeout

func (*StatelessEnforcer) GetTokenTimeoutByCtx

func (s *StatelessEnforcer) GetTokenTimeoutByCtx(ctx ctx.Context) (int64, error)

GetTokenTimeoutByCtx similar with GetTokenTimeout

func (*StatelessEnforcer) GetType

func (s *StatelessEnforcer) GetType() string

func (*StatelessEnforcer) GetWatcher

func (s *StatelessEnforcer) GetWatcher() persist.Watcher

func (*StatelessEnforcer) IsLogEnable

func (s *StatelessEnforcer) IsLogEnable() bool

func (*StatelessEnforcer) Login

func (s *StatelessEnforcer) Login(id string, ctx ctx.Context) (string, error)

Login loginById and loginModel, return tokenValue and error ctx.Context can be nil

func (*StatelessEnforcer) LoginByModel

func (s *StatelessEnforcer) LoginByModel(id string, loginModel *model.Login, ctx ctx.Context) (string, error)

LoginByModel login by id and loginModel, return tokenValue and error ctx.Context can be nil

func (*StatelessEnforcer) SetAdapter

func (s *StatelessEnforcer) SetAdapter(adapter persist.Adapter)

func (*StatelessEnforcer) SetAuth

func (s *StatelessEnforcer) SetAuth(manager interface{})

func (*StatelessEnforcer) SetLogger

func (s *StatelessEnforcer) SetLogger(logger log.Logger)

func (*StatelessEnforcer) SetSecretKey

func (s *StatelessEnforcer) SetSecretKey(secret string)

func (*StatelessEnforcer) SetType

func (s *StatelessEnforcer) SetType(t string)

func (*StatelessEnforcer) SetWatcher

func (s *StatelessEnforcer) SetWatcher(watcher persist.Watcher)

Jump to

Keyboard shortcuts

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