apache/casbin
Apache Casbin: an authorization library that supports access control models like ACL, RBAC, ABAC. observed · 2026-08-28
Health v2 · maintenance only
98/100
- Activity 98
- Release rhythm 98
- Longevity 100
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-02. Adoption (stars, forks) is never an input.
- gap_med: 2.0
- age_days: 3434
- days_rel: 13
- days_push: 12
- n_releases_24m: 55
Adoption not part of the score
20349 stars · 1755 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-29, confidence not recorded
Apache Casbin is an open-source authorization library that enforces access control using models such as ACL, RBAC, ABAC, ReBAC, and MAC, defined via PERM metamodel configuration files. It is implemented natively in many languages (Go, Java, Node.js, PHP, Python, .NET, Rust, C++, and more) with consistent APIs and pluggable policy storage adapters for databases, files, and cloud storage.
Use cases
- enforce role-based access control in a Go web app
- implement ABAC permission checks with attribute conditions
- store authorization policies in MySQL or Postgres
- manage RBAC role hierarchies across microservices
- switch access control models without rewriting code
- add multi-tenant authorization with filtered policy loading
- centralize authz logic across multiple programming languages
When to choose
- you need flexible, model-driven authorization (ACL/RBAC/ABAC) decoupled from application code
- you want consistent authorization logic across polyglot services
- you need pluggable policy persistence in many databases or storage backends
- you want a mature, widely adopted access control engine with an online policy editor
When to avoid
- you only need simple hardcoded role checks with no policy flexibility
- you need full-featured authentication (login, OAuth/OIDC flows) - Casbin handles authorization, not authentication
- your language lacks the adapter or feature (e.g., watcher, filtered adapter) you require
Facets
library · maturity stable
authorization auth security middleware security backend developer-tools apis go cross-platform jvm python rust cpp dotnet php rbac abac acl access-control iam policy-engine perm-metamodel multi-language nodejs
10 sources
- readme: https://github.com/apache/casbin · fetched 2026-08-28 · 4d176afcab39
- homepage: https://casbin.apache.org/ · fetched 2026-08-29 · 65e3cbc745a4
- site_page: https://casbin.apache.org/docs/overview · fetched 2026-08-29 · e6df9330fc66
- site_page: https://casbin.apache.org/docs/downloads · fetched 2026-08-29 · 34577d2c2ff2
- site_page: https://casbin.apache.org/docs/get-started · fetched 2026-08-29 · 1cef184398ca
- site_page: https://casbin.apache.org/docs/category/access-control-models · fetched 2026-08-29 · 323b2c9c0a23
- site_page: https://casbin.apache.org/docs/category/storage · fetched 2026-08-29 · 36570671a14a
- site_page: https://casbin.apache.org/docs/adapters · fetched 2026-08-29 · cd140120068d
- site_page: https://casbin.apache.org/docs/category/api · fetched 2026-08-29 · 4099ba1bb75f
- site_page: https://casbin.apache.org/docs/ide-plugins · fetched 2026-08-29 · 5a9e92f4f45a
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| apache/casbin | main | 98 |
For agents
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem