auth

package
v0.0.2 Latest Latest
Warning

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

Go to latest
Published: Jan 25, 2024 License: Apache-2.0 Imports: 10 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrNotFound = errors.New("key not found in cache")

Functions

func GetAuthToken

func GetAuthToken(req *http.Request) string

Types

type Auth

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

func New

func New(endpoint string, clientId string, clientSecret string, cache Cache) *Auth

func (*Auth) ExchangeUserToken

func (this *Auth) ExchangeUserToken(userid string) (token Token, err error)

type Cache

type Cache interface {
	UseWithExpirationInResult(key string, getter func() (interface{}, time.Duration, error), result interface{}) (err error)
}

type CacheImpl

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

func NewCache

func NewCache(expiration time.Duration) *CacheImpl

func (*CacheImpl) Invalidate

func (this *CacheImpl) Invalidate(key string) (err error)

func (*CacheImpl) Use

func (this *CacheImpl) Use(key string, getter func() (interface{}, error), result interface{}) (err error)

func (*CacheImpl) UseWithExpirationInResult

func (this *CacheImpl) UseWithExpirationInResult(key string, getter func() (interface{}, time.Duration, error), result interface{}) (err error)

type Item

type Item struct {
	Key   string
	Value []byte
}

type OpenidToken

type OpenidToken struct {
	AccessToken      string    `json:"access_token"`
	ExpiresIn        float64   `json:"expires_in"`
	RefreshExpiresIn float64   `json:"refresh_expires_in"`
	RefreshToken     string    `json:"refresh_token"`
	TokenType        string    `json:"token_type"`
	RequestTime      time.Time `json:"-"`
	ParsedToken      Token     `json:"-"`
}

type Token

type Token struct {
	Token       string              `json:"__token"`
	Sub         string              `json:"sub,omitempty"`
	RealmAccess map[string][]string `json:"realm_access,omitempty"`
}

func GetParsedToken

func GetParsedToken(req *http.Request) (token Token, err error)

func Parse

func Parse(token string) (claims Token, err error)

func (Token) GetRoles

func (this Token) GetRoles() []string

func (Token) GetUserId

func (this Token) GetUserId() string

func (Token) IsAdmin

func (this Token) IsAdmin() bool

func (Token) Jwt

func (this Token) Jwt() string

func (Token) String

func (this Token) String() string

func (Token) Valid

func (this Token) Valid() error

Jump to

Keyboard shortcuts

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