A Go library for fine-grained, policy-based access control inspired by AWS IAM, designed for microservices and IoT.
ORY Ladon is a Go library for implementing fine-grained, policy-based access control systems. It solves authorization challenges in distributed environments like microservices and IoT by allowing developers to define who can perform what actions on which resources under specific conditions. Inspired by AWS IAM policies, it provides a flexible alternative to traditional RBAC or ACL models.
Go developers building secure, distributed applications that require complex authorization logic, such as microservices architectures, multi-tenant SaaS platforms, or IoT ecosystems.
Developers choose Ladon for its AWS IAM-like flexibility, fine-grained policy model, and extensibility through custom conditions and storage adapters, all while being a lightweight, protocol-agnostic library written in Go.
A SDK for access control policies: authorization for the microservice and IoT age. Inspired by AWS IAM policies. Written for Go.
Inspired by AWS IAM, it allows defining complex rules with subjects, actions, resources, effects, and conditions for precise access control in distributed environments like microservices.
Includes built-in conditions like CIDR and string matching, plus support for custom conditions via Go programming, enabling context-aware authorization decisions.
Provides audit logging and a metrics interface for tracking authorization grants, denials, and errors, essential for security monitoring and compliance.
Does not impose a specific protocol or storage, giving developers full control over implementation, though it requires custom work for persistence and APIs.
Ladon is a library only; developers must implement their own HTTP or other protocol layers for API access, increasing integration effort and time.
The README admits regular expressions in policies cause O(n) complexity and poor performance with SQL adapters, with about a 1000:1 slowdown compared to in-memory storage.
Only ships with an in-memory manager; persistent storage relies on community-supported adapters for databases like CockroachDB, which may lack maturity or comprehensive support.
Ladon is an open-source alternative to the following products:
Apache Casbin: an authorization library that supports access control models like ACL, RBAC, ABAC.
Open Policy Agent (OPA) is an open source, general-purpose policy engine.
The most scalable and customizable permission server on the market. Fix your slow or broken permission system with Google's proven "Zanzibar" approach. Supports ACL, RBAC, and more. Written in Go, cloud native, headless, API-first. Available as a service on Ory Network and for self-hosters.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.