api

package
v0.0.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 19, 2017 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

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) AddGroupingPolicy

func (e *Enforcer) AddGroupingPolicy(policy []string)

Add a role inheritance rule to the current policy.

func (*Enforcer) AddGroupingPolicyForPolicyType

func (e *Enforcer) AddGroupingPolicyForPolicyType(ptype string, policy []string)

Add a role inheritance rule to the current policy, policy type can be specified.

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) AddPolicy

func (e *Enforcer) AddPolicy(policy []string)

Add an authorization rule to the current policy.

func (*Enforcer) AddPolicyForPolicyType

func (e *Enforcer) AddPolicyForPolicyType(ptype string, policy []string)

Add an authorization rule to the current policy, policy type can be specified.

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) ClearPolicy

func (e *Enforcer) ClearPolicy()

Clear all policy.

func (*Enforcer) Enable

func (e *Enforcer) Enable(enable bool)

Change the enforcing state of casbin, when casbin is disabled, all access will be allowed by the Enforce() function.

func (*Enforcer) Enforce

func (e *Enforcer) Enforce(rvals ...string) bool

Decide whether a "subject" can access a "object" with the operation "action", input parameters are usually: (sub, obj, act).

func (*Enforcer) GetAllActions

func (e *Enforcer) GetAllActions() []string

Get the list of actions that show up in the current policy.

func (*Enforcer) GetAllObjects

func (e *Enforcer) GetAllObjects() []string

Get the list of objects that show up in the current policy.

func (*Enforcer) GetAllRoles

func (e *Enforcer) GetAllRoles() []string

Get the list of roles that show up in the current policy.

func (*Enforcer) GetAllSubjects

func (e *Enforcer) GetAllSubjects() []string

Get the list of subjects that show up in the current policy.

func (*Enforcer) GetFilteredPolicy

func (e *Enforcer) GetFilteredPolicy(fieldIndex int, fieldValue string) [][]string

Get all the authorization rules in the policy, a field filter can be specified.

func (*Enforcer) GetFilteredPolicyForPolicyType

func (e *Enforcer) GetFilteredPolicyForPolicyType(ptype string, fieldIndex int, fieldValue string) [][]string

Get all the authorization rules in the policy, a field filter can be specified, policy type can be specified.

func (*Enforcer) GetGroupingPolicy

func (e *Enforcer) GetGroupingPolicy() [][]string

Get all the role inheritance rules in the policy.

func (*Enforcer) GetGroupingPolicyForPolicyType

func (e *Enforcer) GetGroupingPolicyForPolicyType(ptype string) [][]string

Get all the role inheritance rules in the policy, policy type can be specified.

func (*Enforcer) GetPolicy

func (e *Enforcer) GetPolicy() [][]string

Get all the authorization rules in the policy.

func (*Enforcer) GetPolicyForPolicyType

func (e *Enforcer) GetPolicyForPolicyType(ptype string) [][]string

Get all the authorization rules in the policy, policy type can be specified.

func (*Enforcer) GetRoles

func (e *Enforcer) GetRoles(name string) []string

Get the roles assigned to a subject.

func (*Enforcer) GetRolesForPolicyType

func (e *Enforcer) GetRolesForPolicyType(ptype string, name string) []string

Get the roles assigned to a subject, policy type can be specified.

func (*Enforcer) InitWithDB

func (e *Enforcer) InitWithDB(modelPath string, driverName string, dataSourceName string)

Initialize an enforcer with a model file and a policy from database.

func (*Enforcer) InitWithFile

func (e *Enforcer) InitWithFile(modelPath string, policyPath string)

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) LoadPolicy

func (e *Enforcer) LoadPolicy()

Reload the policy from file/database.

func (*Enforcer) RemoveGroupingPolicy

func (e *Enforcer) RemoveGroupingPolicy(policy []string)

Remove a role inheritance rule from the current policy.

func (*Enforcer) RemoveGroupingPolicyForPolicyType

func (e *Enforcer) RemoveGroupingPolicyForPolicyType(ptype string, policy []string)

Remove a role inheritance rule from the current policy, policy type can be specified.

func (*Enforcer) RemovePolicy

func (e *Enforcer) RemovePolicy(policy []string)

Remove an authorization rule from the current policy.

func (*Enforcer) RemovePolicyForPolicyType

func (e *Enforcer) RemovePolicyForPolicyType(ptype string, policy []string)

Remove an authorization rule from the current policy, policy type can be specified.

func (*Enforcer) SavePolicy

func (e *Enforcer) SavePolicy()

Save the current policy (usually after changed with casbin API) back to file/database.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL