Documentation
¶
Index ¶
- type Authorizer
- func (a *Authorizer) AllowPolicy(action string, fn PolicyFunc)
- func (a *Authorizer) Can(user *core.User, action string, resource interface{}) bool
- func (a *Authorizer) DefineRole(role string, permissions ...string)
- func (a *Authorizer) GetRolePermissions(role string) []string
- func (a *Authorizer) GrantPermission(role, permission string)
- func (a *Authorizer) HasPermission(user *core.User, permission string) bool
- func (a *Authorizer) RevokePermission(role, permission string)
- type PolicyFunc
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Authorizer ¶
type Authorizer struct {
// contains filtered or unexported fields
}
Authorizer manages roles, permissions, and policies
func (*Authorizer) AllowPolicy ¶
func (a *Authorizer) AllowPolicy(action string, fn PolicyFunc)
AllowPolicy registers a policy function for an action
func (*Authorizer) Can ¶
func (a *Authorizer) Can(user *core.User, action string, resource interface{}) bool
Can checks if a user can perform an action on a resource using policies
func (*Authorizer) DefineRole ¶
func (a *Authorizer) DefineRole(role string, permissions ...string)
DefineRole defines a role with a set of permissions
func (*Authorizer) GetRolePermissions ¶
func (a *Authorizer) GetRolePermissions(role string) []string
GetRolePermissions returns the permissions for a given role
func (*Authorizer) GrantPermission ¶
func (a *Authorizer) GrantPermission(role, permission string)
GrantPermission adds a permission to an existing role
func (*Authorizer) HasPermission ¶
func (a *Authorizer) HasPermission(user *core.User, permission string) bool
HasPermission checks if any of the user's roles grants the specified permission
func (*Authorizer) RevokePermission ¶
func (a *Authorizer) RevokePermission(role, permission string)
RevokePermission removes a permission from a role
type PolicyFunc ¶
PolicyFunc defines a function that checks whether a user can perform an action on a resource
Click to show internal directories.
Click to hide internal directories.