Casbin is a free authorization library that supports a variety of access control models including Access Control Lists, Role-Based Access Control and Attribute-Based Access Control. It is available in many programming languages, including Golang, Java (C/C++), Node.js (JavaScript), PHP, Laravel (Python),.NET (C#), Delphi (Rust), Ruby, Swift (Objective C), Lua (OpenResty), Dart(Flutter), and Elixir. This provides a consistent API on different platforms. Casbin abstracts the PERM metamodel into configuration files, allowing developers and administrators to change or upgrade authorization mechanisms simply by changing configurations. It supports a variety of databases, including MySQL, PostgreSQL and Oracle, MongoDB, Redis and AWS S3. The library includes a role manager that handles RBAC roles hierarchies, and it supports filtered policies management for efficient enforcement.