Documentation
¶
Index ¶
- Variables
- func CompareSlices(a, b []string) bool
- type Alias
- type CheckRequest
- type CheckRequestUser
- type CheckResponse
- type Dashboard
- type Database
- type Error
- type ErrorPayload
- type GetLMapRequest
- type GetPermissionRequest
- type GetRoleRequest
- type GetUserRequest
- type IDName
- type LMap
- type LMapCheckCreate
- type LMapPatch
- type LMapRoleIDs
- type Message
- type Meta
- type Permission
- type PermissionIDs
- type PermissionPatch
- type Resource
- type Response
- type ResponseCreate
- type ResponseCreateBulk
- type ResponseError
- type ResponseMessage
- type ResponseVersion
- type Role
- type RoleExtended
- type RoleIDs
- type RolePatch
- type RoleRelation
- type User
- type UserCreate
- type UserExtended
- type UserInfo
- type UserPatch
Constants ¶
This section is empty.
Variables ¶
Functions ¶
func CompareSlices ¶
Types ¶
type CheckRequest ¶
type CheckRequestUser ¶
type CheckResponse ¶
type CheckResponse struct {
Allowed bool `json:"allowed"`
}
type Dashboard ¶
type Dashboard struct { Roles []RoleExtended `json:"roles"` TotalRoles uint64 `json:"total_roles"` TotalPermissions uint64 `json:"total_permissions"` TotalUsers uint64 `json:"total_users"` TotalServiceAccounts uint64 `json:"total_service_accounts"` }
type Database ¶
type Database interface { GetUsers(req GetUserRequest) (*Response[[]UserExtended], error) GetUser(req GetUserRequest) (*UserExtended, error) CreateUser(user User) (string, error) DeleteUser(id string) error PutUser(user User) error PatchUser(id string, user UserPatch) error GetPermissions(req GetPermissionRequest) (*Response[[]Permission], error) GetPermission(id string) (*Permission, error) CreatePermission(permission Permission) (string, error) CreatePermissions(permission []Permission) ([]string, error) DeletePermission(id string) error PutPermission(permission Permission) error PatchPermission(id string, permission PermissionPatch) error GetRoles(req GetRoleRequest) (*Response[[]RoleExtended], error) GetRole(req GetRoleRequest) (*RoleExtended, error) CreateRole(role Role) (string, error) PutRole(role Role) error DeleteRole(id string) error PatchRole(id string, role RolePatch) error PutRoleRelation(relation map[string]RoleRelation) error GetRoleRelation() (map[string]RoleRelation, error) Dashboard() (*Dashboard, error) Check(req CheckRequest) (*CheckResponse, error) GetLMaps(req GetLMapRequest) (*Response[[]LMap], error) GetLMap(name string) (*LMap, error) CreateLMap(lmap LMap) error PutLMap(lmap LMap) error DeleteLMap(name string) error LMapRoleIDs() LMapRoleIDs CheckCreateLMap(groups []LMapCheckCreate) Backup(w io.Writer, since uint64) (uint64, error) Restore(r io.Reader) error Version() uint64 }
type Error ¶
type Error struct { Msg string `json:"message,omitempty"` Err error `json:"error,omitempty"` Code int `json:"-"` }
func NewErrorAs ¶
func (Error) MarshalJSON ¶
type ErrorPayload ¶
type ErrorPayload struct {
Err string `json:"error"`
}
type GetLMapRequest ¶
type GetPermissionRequest ¶
type GetRoleRequest ¶
type GetRoleRequest struct { ID string `json:"id"` Name string `json:"name"` PermissionIDs []string `json:"permission_ids"` RoleIDs []string `json:"role_ids"` Path string `json:"path"` Method string `json:"method"` Limit int64 `json:"limit"` Offset int64 `json:"offset"` AddPermissions bool `json:"add_permissions"` AddRoles bool `json:"add_roles"` AddTotalUsers bool `json:"add_total_users"` }
type GetUserRequest ¶
type GetUserRequest struct { ID string `json:"id"` Alias string `json:"alias"` RoleIDs []string `json:"role_ids"` UID string `json:"uid"` Name string `json:"name"` Email string `json:"email"` Path string `json:"path"` Method string `json:"method"` ServiceAccount *bool `json:"service_account"` Disabled *bool `json:"disabled"` Limit int64 `json:"limit"` Offset int64 `json:"offset"` AddRoles bool `json:"add_role"` AddPermissions bool `json:"add_permissions"` AddData bool `json:"add_data"` Sanitize bool `json:"sanitize"` }
type LMapCheckCreate ¶
type LMapRoleIDs ¶
type Permission ¶
type Permission struct { ID string `json:"id" badgerhold:"unique"` Name string `json:"name" badgerhold:"index"` Resources []Resource `json:"resources"` Description string `json:"description"` Data map[string]interface{} `json:"data"` }
Permission is a struct that represents a permission table in the database.
type PermissionIDs ¶
type PermissionIDs struct {
PermissionIDs []string `json:"permission_ids"`
}
type PermissionPatch ¶
type ResponseCreate ¶
type ResponseCreate struct {
ID string `json:"id"`
}
type ResponseCreateBulk ¶
type ResponseCreateBulk struct {
IDs []string `json:"ids"`
}
type ResponseError ¶
type ResponseError struct {
Message Message `json:"message"`
}
type ResponseMessage ¶
type ResponseMessage struct {
Message *Message `json:"message,omitempty"`
}
func NewResponseMessage ¶
func NewResponseMessage(text string) ResponseMessage
type ResponseVersion ¶
type ResponseVersion struct {
Version uint64 `json:"version"`
}
type Role ¶
type Role struct { ID string `json:"id" badgerhold:"unique"` Name string `json:"name" badgerhold:"index"` PermissionIDs []string `json:"permission_ids"` RoleIDs []string `json:"role_ids"` Data map[string]interface{} `json:"data"` Description string `json:"description"` }
Role is a struct that represents a role table in the database.
type RoleExtended ¶
type RoleRelation ¶
type User ¶
type User struct { ID string `json:"id" badgerhold:"unique"` Alias []string `json:"alias"` RoleIDs []string `json:"role_ids"` SyncRoleIDs []string `json:"sync_role_ids"` Details map[string]interface{} `json:"details"` Disabled bool `json:"-"` ServiceAccount bool `json:"service_account"` Local bool `json:"local"` }
User is a struct that represents a user table in the database.
type UserCreate ¶
type UserExtended ¶
Click to show internal directories.
Click to hide internal directories.