rbac

package
v0.8.0 Latest Latest
Warning

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

Go to latest
Published: Jun 28, 2017 License: Apache-2.0 Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

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 {
	// contains filtered or unexported fields
}

RoleManager represents the interface to manage the roles in RBAC.

func NewRoleManager

func NewRoleManager(level int) *RoleManager

NewRoleManager is the constructor for RoleManager.

func (rm *RoleManager) AddLink(name1 string, name2 string, domain ...string)

AddLink adds the inheritance link between role: name1 and role: name2. aka role: name1 inherits role: name2. domain is a prefix to the roles.

func (rm *RoleManager) DeleteLink(name1 string, name2 string, domain ...string)

DeleteLink deletes the inheritance link between role: name1 and role: name2. aka role: name1 does not inherit role: name2 any more. domain is a prefix to the roles.

func (*RoleManager) GetRoles

func (rm *RoleManager) GetRoles(name string) []string

GetRoles gets the roles that a subject inherits.

func (*RoleManager) GetUsers added in v0.7.0

func (rm *RoleManager) GetUsers(name string) []string

GetRoles gets the users that inherits a subject.

func (rm *RoleManager) HasLink(name1 string, name2 string, domain ...string) bool

HasLink determines whether role: name1 inherits role: name2. domain is a prefix to the roles.

func (*RoleManager) PrintRoles

func (rm *RoleManager) PrintRoles()

PrintRoles prints all the roles to log.

Jump to

Keyboard shortcuts

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