Documentation ¶
Index ¶
- Constants
- type Error
- type Permissions
- type Role
- type Store
- func (s *Store) AllRoles() ([]string, error)
- func (s *Store) AllUsers() ([]string, error)
- func (s *Store) CreateOrUpdateRole(r Role) (role Role, created bool, err error)
- func (s *Store) CreateOrUpdateUser(user User) (out User, created bool, err error)
- func (s *Store) CreateRole(role Role) error
- func (s *Store) CreateUser(user User) (User, error)
- func (s *Store) DeleteRole(name string) error
- func (s *Store) DeleteUser(name string) error
- func (s *Store) DisableSecurity() error
- func (s *Store) EnableSecurity() error
- func (s *Store) GetRole(name string) (Role, error)
- func (s *Store) GetUser(name string) (User, error)
- func (s *Store) SecurityEnabled() bool
- func (s *Store) UpdateRole(role Role) (Role, error)
- func (s *Store) UpdateUser(user User) (User, error)
- type User
Constants ¶
View Source
const ( // StorePermsPrefix is the internal prefix of the storage layer dedicated to storing user data. StorePermsPrefix = "/2" // RootRoleName is the name of the ROOT role, with privileges to manage the cluster. RootRoleName = "root" // GuestRoleName is the name of the role that defines the privileges of an unauthenticated user. GuestRoleName = "guest" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Permissions ¶
type Permissions struct {
KV rwPermission `json:"kv"`
}
func (Permissions) Grant ¶
func (p Permissions) Grant(n *Permissions) (Permissions, error)
Grant adds a set of permissions to the permission object on which it is called, returning a new permission object.
func (Permissions) Revoke ¶
func (p Permissions) Revoke(n *Permissions) (Permissions, error)
Revoke removes a set of permissions to the permission object on which it is called, returning a new permission object.
type Role ¶
type Role struct { Role string `json:"role"` Permissions Permissions `json:"permissions"` Grant *Permissions `json:"grant,omitempty"` Revoke *Permissions `json:"revoke,omitempty"` }
type Store ¶
type Store struct {
// contains filtered or unexported fields
}
func (*Store) CreateOrUpdateRole ¶
func (*Store) CreateOrUpdateUser ¶
func (*Store) CreateRole ¶
func (*Store) DeleteRole ¶
func (*Store) DeleteUser ¶
func (*Store) DisableSecurity ¶
func (*Store) EnableSecurity ¶
func (*Store) SecurityEnabled ¶
type User ¶
type User struct { User string `json:"user"` Password string `json:"password,omitempty"` Roles []string `json:"roles"` Grant []string `json:"grant,omitempty"` Revoke []string `json:"revoke,omitempty"` }
func (User) CheckPassword ¶
Click to show internal directories.
Click to hide internal directories.