Documentation
¶
Index ¶
- Constants
- func ScopesAvailable() []string
- type Scopes
- type Storage
- func (s Storage) Create(u *User) error
- func (s Storage) Get(username string) (*User, error)
- func (s Storage) GetBySession(id string) (*User, error)
- func (s Storage) GetByToken(token string) (*User, error)
- func (s Storage) List() ([]User, error)
- func (s Storage) RunGc()
- func (s Storage) Upsert(username, email string, scopes Scopes) (*User, error)
- type Token
- type User
- func (u User) CreateSession(remoteIP string, expires int64, scopes Scopes) (string, error)
- func (u User) Delete() error
- func (u User) DeleteSession(id string) error
- func (u User) DeleteToken(id int64) error
- func (u User) GenerateToken(description string, expires int64, scopes Scopes) (*Token, error)
- func (u User) GetAuditLog() (string, error)
- func (u User) ListTokens() ([]Token, error)
- func (u User) Update(reason string) error
Constants ¶
View Source
const ( ScopeDevicesR = scopeR << scopeShiftDevices ScopeDevicesRU = (scopeU | scopeR) << scopeShiftDevices ScopeDevicesC = scopeC << scopeShiftDevices ScopeDevicesD = scopeD << scopeShiftDevices ScopeUpdatesR = scopeR << scopeShiftUpdates ScopeUpdatesRU = (scopeU | scopeR) << scopeShiftUpdates ScopeUpdatesD = scopeD << scopeShiftUpdates ScopeUsersR = scopeR << scopeShiftUsers ScopeUsersRU = (scopeU | scopeR) << scopeShiftUsers ScopeUsersC = scopeC << scopeShiftUsers ScopeUsersD = scopeD << scopeShiftUsers )
Variables ¶
This section is empty.
Functions ¶
func ScopesAvailable ¶
func ScopesAvailable() []string
ScopesAvailable returns a list of all available scopes as strings for display purposes.
Types ¶
type Scopes ¶
type Scopes uint64
Scopes is a bitmask representation of RBAC access. Scopes are done in groups of four bits to denote Read, Update, Create, Delete. This 64-bit value gives room for 16 different resources.
func ScopesFromSlice ¶
ScopesFromSlice parses a slice of scope strings into a Scopes bitmask.
func ScopesFromString ¶
ScopesFromString parses a comma-separated list of scopes into a Scopes bitmask.
type User ¶
type User struct {
Username string
Password string
Email string
CreatedAt int64
Deleted bool
AllowedScopes Scopes
AuthProviderData []byte
// contains filtered or unexported fields
}
func (User) CreateSession ¶
func (User) DeleteSession ¶
func (User) DeleteToken ¶
func (User) GenerateToken ¶
func (User) GetAuditLog ¶
func (User) ListTokens ¶
Click to show internal directories.
Click to hide internal directories.