Overview
Casbin is an efficient, open-source access control library that enforces authorization and supports multiple access control models.
Implementing rule-based access control is straightforward: define subjects, objects, and permitted actions in a policy file in any format that fits your needs. This pattern is consistent across all Casbin implementations. The model file gives developers and administrators full control over authorization logic—layout, execution flow, and conditions. The Enforcer component evaluates incoming requests against your model and policy.
Linguaggi Supportati da Casbin
Casbin provides native support for multiple programming languages so you can integrate it into a wide range of projects and workflows:
![]() | ![]() | ![]() | ![]() |
|---|---|---|---|
| Casbin | jCasbin | node-Casbin | PHP-Casbin |
| Pronto per la produzione | Pronto per la produzione | Pronto per la produzione | Pronto per la produzione |
![]() | ![]() | ![]() | |
|---|---|---|---|
| PyCasbin | Casbin.NET | Casbin-CPP | Casbin-RS |
| Pronto per la produzione | Pronto per la produzione | Pronto per la produzione | Pronto per la produzione |
Feature Set by Language
We aim for feature parity across all language implementations; complete uniformity is not yet achieved.
| Funzionalità | Go | Java | Node.js | PHP | Python | C# | Delphi | Rust | C++ | Lua | Dart | Elixir |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Enforcement | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| RBAC | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ABAC | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Scaling ABAC (eval()) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Adapter | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |






