LiveIssues
← All organizations

Casbin

Authorization library that supports RBAC and ABAC

WebSecurity
3Years in GSoC
2020–22
22Total projects
3–10Projects per year, usually 9
10Projects in 2022

About

Casbin is a powerful and efficient open-source access control library. It provides support for enforcing authorization based on various access control models like ACL, RBAC, ABAC for Golang, Java, Node.js, PHP, Python, .NET (C#), Delphi and Rust.

What Casbin does:

  • Enforce the policy in the classic {subject, object, action} form or a customized form as you defined, both allow and deny authorizations are supported.
  • Handle the storage of the access control model and its policy.
  • Manage the role-user mappings and role-role mappings (aka role hierarchy in RBAC). Support built-in superuser like root or administrator.
  • A superuser can do anything without explict permissions.
  • Multiple built-in operators to support the rule matching. For example, keyMatch can map a resource key /foo/bar to the pattern /foo*.

What Casbin does NOT do:

  • Authentication (aka verify username and password when a user logs in) Manage the list of users or roles. I believe it's more convenient for the project itself to manage these entities.
  • Users usually have their passwords, and Casbin is not designed as a password container. However, Casbin stores the user-role mapping for the RBAC scenario.

For more details, see: casbin.org/

Projects per year

22 projects across 3 years.

Issues from Casbin, matched to you

Sign in with GitHub and LiveIssues checks what you already write against this organization's repositories, then brings you open issues nobody has claimed. Free and read-only.

Find my match