casbin: github.com/casbin/casbin/rbac Index | Files | Directories

package rbac

import "github.com/casbin/casbin/rbac"

Index

Package Files

role_manager.go

type RoleManager Uses

type RoleManager interface {
    // Clear clears all stored data and resets the role manager to the initial state.
    Clear() error
    // AddLink adds the inheritance link between two roles. role: name1 and role: name2.
    // domain is a prefix to the roles (can be used for other purposes).
    AddLink(name1 string, name2 string, domain ...string) error
    // DeleteLink deletes the inheritance link between two roles. role: name1 and role: name2.
    // domain is a prefix to the roles (can be used for other purposes).
    DeleteLink(name1 string, name2 string, domain ...string) error
    // HasLink determines whether a link exists between two roles. role: name1 inherits role: name2.
    // domain is a prefix to the roles (can be used for other purposes).
    HasLink(name1 string, name2 string, domain ...string) (bool, error)
    // GetRoles gets the roles that a user inherits.
    // domain is a prefix to the roles (can be used for other purposes).
    GetRoles(name string, domain ...string) ([]string, error)
    // GetUsers gets the users that inherits a role.
    // domain is a prefix to the users (can be used for other purposes).
    GetUsers(name string, domain ...string) ([]string, error)
    // PrintRoles prints all the roles to log.
    PrintRoles() error
}

RoleManager provides interface to define the operations for managing roles.

Directories

PathSynopsis
default-role-manager

Package rbac is imported by 18 packages. Updated 2020-06-18. Refresh now. Tools for package owners.