Documentation ¶
Index ¶
- Variables
- type AccessToken
- type AccessTokenManager
- func (s *AccessTokenManager) Count() (int, error)
- func (s *AccessTokenManager) DeleteByAccessToken(token string) error
- func (s *AccessTokenManager) Insert(user int64, uses int64, path string, short bool) (*AccessToken, error)
- func (s *AccessTokenManager) InsertEternal(user int64, path string) (*AccessToken, error)
- func (s *AccessTokenManager) InsertUnsafe(at *AccessToken) error
- func (s *AccessTokenManager) SelectByAccessToken(token string, path string) (*AccessToken, error)
- func (atm *AccessTokenManager) Update(at *AccessToken) error
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrAccessTokenExpired = errors.New("access token expired")
View Source
var ErrAccessTokenInvalidPath = errors.New("wrong path for access token")
View Source
var ErrAccessTokenNotFound = errors.New("access token not found")
View Source
var ErrAccessTokenReused = errors.New("access token reuse")
View Source
var ErrUserInvalid = errors.New("user invalid")
View Source
var PathInvalid = errors.New("path invalid")
Functions ¶
This section is empty.
Types ¶
type AccessToken ¶
type AccessToken struct { models.Record ID int64 `db:"pk,id"` Token string `db:"token"` TokenData types.JsonMap `db:"token_data"` Path string `db:"path"` Creator int64 `db:"creator_id"` Expires types.DateTime `db:"expires"` Uses int64 `db:"uses"` }
func (AccessToken) TableName ¶
func (a AccessToken) TableName() string
type AccessTokenManager ¶
type AccessTokenManager struct {
// contains filtered or unexported fields
}
func (*AccessTokenManager) Count ¶
func (s *AccessTokenManager) Count() (int, error)
func (*AccessTokenManager) DeleteByAccessToken ¶
func (s *AccessTokenManager) DeleteByAccessToken(token string) error
func (*AccessTokenManager) Insert ¶
func (s *AccessTokenManager) Insert(user int64, uses int64, path string, short bool) (*AccessToken, error)
func (*AccessTokenManager) InsertEternal ¶
func (s *AccessTokenManager) InsertEternal(user int64, path string) (*AccessToken, error)
TODO: maybe eternal ats are a bad idea Eternal ATs can only used once, but they never expire
func (*AccessTokenManager) InsertUnsafe ¶
func (s *AccessTokenManager) InsertUnsafe(at *AccessToken) error
Creating an AT with user defined values is considered unsafe
func (*AccessTokenManager) SelectByAccessToken ¶
func (s *AccessTokenManager) SelectByAccessToken(token string, path string) (*AccessToken, error)
We do not allow selection by AT without
- checking the path
- checking the expiration
- checking & decreasing use
func (*AccessTokenManager) Update ¶
func (atm *AccessTokenManager) Update(at *AccessToken) error
Click to show internal directories.
Click to hide internal directories.