Documentation ¶
Index ¶
- type DomainManager
- func (dm *DomainManager) AddDomainMatchingFunc(name string, fn MatchingFunc)
- func (dm *DomainManager) AddLink(name1 string, name2 string, domains ...string) error
- func (dm *DomainManager) AddMatchingFunc(name string, fn MatchingFunc)
- func (rm *DomainManager) BuildRelationship(name1 string, name2 string, domain ...string) errordeprecated
- func (dm *DomainManager) Clear() error
- func (dm *DomainManager) DeleteLink(name1 string, name2 string, domains ...string) error
- func (rm *DomainManager) GetAllDomains() ([]string, error)
- func (dm *DomainManager) GetDomains(name string) ([]string, error)
- func (dm *DomainManager) GetRoles(name string, domains ...string) ([]string, error)
- func (dm *DomainManager) GetUsers(name string, domains ...string) ([]string, error)
- func (dm *DomainManager) HasLink(name1 string, name2 string, domains ...string) (bool, error)
- func (dm *DomainManager) PrintRoles() error
- func (dm *DomainManager) SetLogger(logger log.Logger)
- type MatchingFunc
- type Role
- type RoleManager
- type RoleManagerImpl
- func (rm *RoleManagerImpl) AddDomainMatchingFunc(name string, fn MatchingFunc)
- func (rm *RoleManagerImpl) AddLink(name1 string, name2 string, domains ...string) error
- func (rm *RoleManagerImpl) AddMatchingFunc(name string, fn MatchingFunc)
- func (rm *RoleManagerImpl) BuildRelationship(name1 string, name2 string, domain ...string) errordeprecated
- func (rm *RoleManagerImpl) Clear() error
- func (rm *RoleManagerImpl) DeleteLink(name1 string, name2 string, domains ...string) error
- func (rm *RoleManagerImpl) GetAllDomains() ([]string, error)
- func (rm *RoleManagerImpl) GetDomains(name string) ([]string, error)
- func (rm *RoleManagerImpl) GetRoles(name string, domains ...string) ([]string, error)
- func (rm *RoleManagerImpl) GetUsers(name string, domain ...string) ([]string, error)
- func (rm *RoleManagerImpl) HasLink(name1 string, name2 string, domains ...string) (bool, error)
- func (rm *RoleManagerImpl) PrintRoles() error
- func (rm *RoleManagerImpl) Range(fn func(name1, name2 string, domain ...string) bool)
- func (rm *RoleManagerImpl) SetLogger(logger log.Logger)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DomainManager ¶ added in v2.43.2
type DomainManager struct {
// contains filtered or unexported fields
}
func NewDomainManager ¶ added in v2.43.2
func NewDomainManager(maxHierarchyLevel int) *DomainManager
NewDomainManager is the constructor for creating an instance of the default DomainManager implementation.
func (*DomainManager) AddDomainMatchingFunc ¶ added in v2.43.2
func (dm *DomainManager) AddDomainMatchingFunc(name string, fn MatchingFunc)
AddDomainMatchingFunc support use domain pattern in g
func (*DomainManager) AddLink ¶ added in v2.43.2
func (dm *DomainManager) AddLink(name1 string, name2 string, domains ...string) error
AddLink adds the inheritance link between role: name1 and role: name2. aka role: name1 inherits role: name2.
func (*DomainManager) AddMatchingFunc ¶ added in v2.43.2
func (dm *DomainManager) AddMatchingFunc(name string, fn MatchingFunc)
AddMatchingFunc support use pattern in g
func (*DomainManager) BuildRelationship
deprecated
added in
v2.43.2
func (rm *DomainManager) BuildRelationship(name1 string, name2 string, domain ...string) error
Deprecated: BuildRelationship is no longer required
func (*DomainManager) Clear ¶ added in v2.43.2
func (dm *DomainManager) Clear() error
Clear clears all stored data and resets the role manager to the initial state.
func (*DomainManager) DeleteLink ¶ added in v2.43.2
func (dm *DomainManager) DeleteLink(name1 string, name2 string, domains ...string) error
DeleteLink deletes the inheritance link between role: name1 and role: name2. aka role: name1 does not inherit role: name2 any more.
func (*DomainManager) GetAllDomains ¶ added in v2.43.2
func (rm *DomainManager) GetAllDomains() ([]string, error)
GetAllDomains gets all domains
func (*DomainManager) GetDomains ¶ added in v2.43.2
func (dm *DomainManager) GetDomains(name string) ([]string, error)
GetDomains gets domains that a user has
func (*DomainManager) GetRoles ¶ added in v2.43.2
func (dm *DomainManager) GetRoles(name string, domains ...string) ([]string, error)
GetRoles gets the roles that a subject inherits.
func (*DomainManager) GetUsers ¶ added in v2.43.2
func (dm *DomainManager) GetUsers(name string, domains ...string) ([]string, error)
GetUsers gets the users of a role.
func (*DomainManager) HasLink ¶ added in v2.43.2
HasLink determines whether role: name1 inherits role: name2.
func (*DomainManager) PrintRoles ¶ added in v2.43.2
func (dm *DomainManager) PrintRoles() error
PrintRoles prints all the roles to log.
func (*DomainManager) SetLogger ¶ added in v2.43.2
func (dm *DomainManager) SetLogger(logger log.Logger)
SetLogger sets role manager's logger.
type MatchingFunc ¶
type Role ¶
type Role struct {
// contains filtered or unexported fields
}
Role represents the data structure for a role in RBAC.
type RoleManager ¶
type RoleManager struct {
*DomainManager
}
func NewRoleManager ¶
func NewRoleManager(maxHierarchyLevel int) *RoleManager
type RoleManagerImpl ¶ added in v2.43.2
type RoleManagerImpl struct {
// contains filtered or unexported fields
}
RoleManagerImpl provides a default implementation for the RoleManager interface
func NewRoleManagerImpl ¶ added in v2.43.2
func NewRoleManagerImpl(maxHierarchyLevel int) *RoleManagerImpl
NewRoleManagerImpl is the constructor for creating an instance of the default RoleManager implementation.
func (*RoleManagerImpl) AddDomainMatchingFunc ¶ added in v2.43.2
func (rm *RoleManagerImpl) AddDomainMatchingFunc(name string, fn MatchingFunc)
AddDomainMatchingFunc support use domain pattern in g
func (*RoleManagerImpl) AddLink ¶ added in v2.43.2
func (rm *RoleManagerImpl) AddLink(name1 string, name2 string, domains ...string) error
AddLink adds the inheritance link between role: name1 and role: name2. aka role: name1 inherits role: name2.
func (*RoleManagerImpl) AddMatchingFunc ¶ added in v2.43.2
func (rm *RoleManagerImpl) AddMatchingFunc(name string, fn MatchingFunc)
AddMatchingFunc support use pattern in g
func (*RoleManagerImpl) BuildRelationship
deprecated
added in
v2.43.2
func (rm *RoleManagerImpl) BuildRelationship(name1 string, name2 string, domain ...string) error
Deprecated: BuildRelationship is no longer required
func (*RoleManagerImpl) Clear ¶ added in v2.43.2
func (rm *RoleManagerImpl) Clear() error
Clear clears all stored data and resets the role manager to the initial state.
func (*RoleManagerImpl) DeleteLink ¶ added in v2.43.2
func (rm *RoleManagerImpl) DeleteLink(name1 string, name2 string, domains ...string) error
DeleteLink deletes the inheritance link between role: name1 and role: name2. aka role: name1 does not inherit role: name2 any more.
func (*RoleManagerImpl) GetAllDomains ¶ added in v2.43.2
func (rm *RoleManagerImpl) GetAllDomains() ([]string, error)
GetAllDomains gets all domains
func (*RoleManagerImpl) GetDomains ¶ added in v2.43.2
func (rm *RoleManagerImpl) GetDomains(name string) ([]string, error)
GetDomains gets domains that a user has
func (*RoleManagerImpl) GetRoles ¶ added in v2.43.2
func (rm *RoleManagerImpl) GetRoles(name string, domains ...string) ([]string, error)
GetRoles gets the roles that a user inherits.
func (*RoleManagerImpl) GetUsers ¶ added in v2.43.2
func (rm *RoleManagerImpl) GetUsers(name string, domain ...string) ([]string, error)
GetUsers gets the users of a role. domain is an unreferenced parameter here, may be used in other implementations.
func (*RoleManagerImpl) HasLink ¶ added in v2.43.2
HasLink determines whether role: name1 inherits role: name2.
func (*RoleManagerImpl) PrintRoles ¶ added in v2.43.2
func (rm *RoleManagerImpl) PrintRoles() error
PrintRoles prints all the roles to log.
func (*RoleManagerImpl) Range ¶ added in v2.43.2
func (rm *RoleManagerImpl) Range(fn func(name1, name2 string, domain ...string) bool)
func (*RoleManagerImpl) SetLogger ¶ added in v2.43.2
func (rm *RoleManagerImpl) SetLogger(logger log.Logger)
SetLogger sets role manager's logger.