Documentation ¶
Index ¶
- type Enforcer
- func (e *Enforcer) AddActionAttributeFunction(function func(args ...interface{}) (interface{}, error))
- func (e *Enforcer) AddGroupingPolicy(policy []string)
- func (e *Enforcer) AddObjectAttributeFunction(function func(args ...interface{}) (interface{}, error))
- func (e *Enforcer) AddPermissionForUser(user string, permission string)
- func (e *Enforcer) AddPolicy(policy []string)
- func (e *Enforcer) AddRoleForUser(user string, role string)
- func (e *Enforcer) AddSubjectAttributeFunction(function func(args ...interface{}) (interface{}, error))
- func (e *Enforcer) ClearPolicy()
- func (e *Enforcer) DeletePermission(permission string)
- func (e *Enforcer) DeletePermissionsForUser(user string)
- func (e *Enforcer) DeleteRole(role string)
- func (e *Enforcer) DeleteRolesForUser(user string)
- func (e *Enforcer) DeleteUser(user string)
- func (e *Enforcer) Enable(enable bool)
- func (e *Enforcer) Enforce(rvals ...string) bool
- func (e *Enforcer) GetAllActions() []string
- func (e *Enforcer) GetAllObjects() []string
- func (e *Enforcer) GetAllRoles() []string
- func (e *Enforcer) GetAllSubjects() []string
- func (e *Enforcer) GetFilteredPolicy(fieldIndex int, fieldValue string) [][]string
- func (e *Enforcer) GetGroupingPolicy() [][]string
- func (e *Enforcer) GetModel() casbin.Model
- func (e *Enforcer) GetPermissionsForUser(user string) []string
- func (e *Enforcer) GetPolicy() [][]string
- func (e *Enforcer) GetRolesForUser(name string) []string
- func (e *Enforcer) InitWithConfig(cfgPath string)
- func (e *Enforcer) InitWithDB(modelPath string, driverName string, dataSourceName string)
- func (e *Enforcer) InitWithFile(modelPath string, policyPath string)
- func (e *Enforcer) LoadModel()
- func (e *Enforcer) LoadPolicy()
- func (e *Enforcer) RemoveFilteredGroupingPolicy(fieldIndex int, fieldValue string)
- func (e *Enforcer) RemoveFilteredPolicy(fieldIndex int, fieldValue string)
- func (e *Enforcer) RemoveGroupingPolicy(policy []string)
- func (e *Enforcer) RemovePolicy(policy []string)
- func (e *Enforcer) SavePolicy()
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Enforcer ¶
type Enforcer struct {
// contains filtered or unexported fields
}
Enforcer is the main interface for authorization enforcement and policy management.
func (*Enforcer) AddActionAttributeFunction ¶ added in v0.0.4
func (e *Enforcer) AddActionAttributeFunction(function func(args ...interface{}) (interface{}, error))
Add the function that gets attributes for a object in ABAC.
func (*Enforcer) AddGroupingPolicy ¶
Add a role inheritance rule to the current policy.
func (*Enforcer) AddObjectAttributeFunction ¶
func (e *Enforcer) AddObjectAttributeFunction(function func(args ...interface{}) (interface{}, error))
Add the function that gets attributes for a object in ABAC.
func (*Enforcer) AddPermissionForUser ¶ added in v0.0.4
Add a permission for a user or role.
func (*Enforcer) AddRoleForUser ¶ added in v0.0.4
Add a role for a user.
func (*Enforcer) AddSubjectAttributeFunction ¶
func (e *Enforcer) AddSubjectAttributeFunction(function func(args ...interface{}) (interface{}, error))
Add the function that gets attributes for a subject in ABAC.
func (*Enforcer) DeletePermission ¶ added in v0.0.4
Delete a permission.
func (*Enforcer) DeletePermissionsForUser ¶ added in v0.0.4
Delete permissions for a user or role.
func (*Enforcer) DeleteRole ¶ added in v0.0.4
Delete a role.
func (*Enforcer) DeleteRolesForUser ¶ added in v0.0.4
Delete all roles for a user.
func (*Enforcer) DeleteUser ¶ added in v0.0.4
Delete a user.
func (*Enforcer) Enable ¶
Change the enforcing state of casbin, when casbin is disabled, all access will be allowed by the Enforce() function.
func (*Enforcer) Enforce ¶
Decide whether a "subject" can access a "object" with the operation "action", input parameters are usually: (sub, obj, act).
func (*Enforcer) GetAllActions ¶
Get the list of actions that show up in the current policy.
func (*Enforcer) GetAllObjects ¶
Get the list of objects that show up in the current policy.
func (*Enforcer) GetAllRoles ¶
Get the list of roles that show up in the current policy.
func (*Enforcer) GetAllSubjects ¶
Get the list of subjects that show up in the current policy.
func (*Enforcer) GetFilteredPolicy ¶
Get all the authorization rules in the policy, a field filter can be specified.
func (*Enforcer) GetGroupingPolicy ¶
Get all the role inheritance rules in the policy.
func (*Enforcer) GetPermissionsForUser ¶ added in v0.0.4
Get permissions for a user or role.
func (*Enforcer) GetRolesForUser ¶ added in v0.0.4
Get roles for a user.
func (*Enforcer) InitWithConfig ¶ added in v0.0.4
Initialize an enforcer with a configuration file, by default is casbin.conf.
func (*Enforcer) InitWithDB ¶
Initialize an enforcer with a model file and a policy from database.
func (*Enforcer) InitWithFile ¶
Initialize an enforcer with a model file and a policy file.
func (*Enforcer) LoadModel ¶
func (e *Enforcer) LoadModel()
Reload the model from the model CONF file. Because the policy is attached to a model, so the policy is invalidated and needs to be reloaded by calling LoadPolicy().
func (*Enforcer) RemoveFilteredGroupingPolicy ¶ added in v0.0.4
Remove a role inheritance rule from the current policy, a field filter can be specified.
func (*Enforcer) RemoveFilteredPolicy ¶ added in v0.0.4
Remove an authorization rule from the current policy, a field filter can be specified.
func (*Enforcer) RemoveGroupingPolicy ¶
Remove a role inheritance rule from the current policy.
func (*Enforcer) RemovePolicy ¶
Remove an authorization rule from the current policy.
func (*Enforcer) SavePolicy ¶
func (e *Enforcer) SavePolicy()
Save the current policy (usually after changed with casbin API) back to file/database.