Casbin

Casbin

  • Docs
  • API
  • Editor
  • IDE Plugins
  • Single Sign-On (SSO)
  • Forum
  • Help
  • Blog
  • Pricing
  • Contact Sales
  • Languages iconEnglish
    • 中文
    • 한국어
    • Русский
    • Français
    • Deutsch
    • 日本語
    • Help Translate
  • GitHub

›Extensions

The Basics

  • Overview
  • Get Started
  • How it Works
  • Tutorials

Model

  • Supported Models
  • Syntax for Models
  • Effector
  • Function
  • RBAC
  • RBAC with Pattern
  • RBAC with Domains
  • Casbin RBAC v.s. RBAC96
  • ABAC
  • Priority Model
  • Super Admin

Storage

  • Model Storage
  • Policy Storage
  • Policy Subset Loading

Extensions

  • Enforcers
  • Adapters
  • Watchers
  • Dispatchers
  • Role Managers
  • Middlewares
  • GraphQL Middlewares
  • Cloud Native Middlewares

API

  • API Overview
  • Management API
  • RBAC API
  • RBAC with Domains API
  • RoleManager API
  • Data Permissions

Advanced Usage

  • Multi-threading
  • Benchmarks
  • Performance Optimization
  • Authorization of Kubernetes
  • Authorization of Service Mesh through Envoy

Management

  • Admin Portal
  • Casbin Service
  • Log & Error Handling
  • Frontend Usage

Editor

  • Online Editor
  • IDE Plugins

More

  • Our Adopters
  • Contributing
  • Privacy Policy
  • Terms of Service
Edit

Role Managers

The role manager is used to manage the RBAC role hierarchy (user-role mapping) in Casbin. A role manager can retrieve the role data from Casbin policy rules or external sources such as LDAP, Okta, Auth0, Azure AD, etc. We support different implementations of a role manager. To keep light-weight, we don't put role manager code in the main library (except the default role manager). A complete list of Casbin role managers is provided as below. Any 3rd-party contribution on a new role manager is welcomed, please inform us and I will put it in this list:)

Go
Java
Node.js
PHP
Python
Role managerAuthorDescription
Default Role Manager (built-in)CasbinSupports role hierarchy stored in Casbin policy
Session Role ManagerEDOMO SystemsSupports role hierarchy stored in Casbin policy, with time-range-based sessions
Okta Role ManagerCasbinSupports role hierarchy stored in Okta
Auth0 Role ManagerCasbinSupports role hierarchy stored in Auth0's Authorization Extension

For developers: all role managers must implement the RoleManager interface. Session Role Manager can be used as a reference implementation.

Role managerAuthorDescription
Default Role Manager (built-in)CasbinSupports role hierarchy stored in Casbin policy

For developers: all role managers must implement the RoleManager interface. Default Role Manager can be used as a reference implementation.

Role managerAuthorDescription
Default Role Manager (built-in)CasbinSupports role hierarchy stored in Casbin policy
Session Role ManagerCasbinSupports role hierarchy stored in Casbin policy, with time-range-based sessions

For developers: all role managers must implement the RoleManager interface. Default Role Manager can be used as a reference implementation.

Role managerAuthorDescription
Default Role Manager (built-in)CasbinSupports role hierarchy stored in Casbin policy

For developers: all role managers must implement the RoleManager interface. Default Role Manager can be used as a reference implementation.

Role managerAuthorDescription
Default Role Manager (built-in)CasbinSupports role hierarchy stored in Casbin policy

For developers: all role managers must implement the RoleManager interface. Default Role Manager can be used as a reference implementation.

API

See API section for details.

Last updated on 11/28/2022
← DispatchersMiddlewares →
  • API
Casbin
Docs
Getting StartedManagement APIRBAC APIMiddlewares
Community
Who's using Casbin?Stack Overflow
Casbin          jCasbin
Node-Casbin   PHP-CasbinPyCasbin          Casbin.NETCasbin-CPP        Casbin-RS
Follow @casbinHQ
Copyright © 2022 Casbin Organization