🔐 New: A CISO’s benchmark for authorization maturity ➔ [Download the ebook](https://solutions.cerbos.dev/authorization-maturity-model-a-cisos-benchmark)

# Deploy Cerbos on Amazon Elastic Beanstalk

Run the Cerbos PDP alongside your application on Elastic Beanstalk using Docker or multi-container environments.

[Container documentation](https://docs.cerbos.dev/cerbos/latest/installation/container.html)

### Multi-container

Run Cerbos alongside your application in a multi-container Docker environment managed by Elastic Beanstalk

### Auto-scaling

Cerbos scales automatically with your Elastic Beanstalk environment as instances are added or removed

### Managed platform

Let Elastic Beanstalk handle provisioning, load balancing, and health monitoring while Cerbos handles authorization

## What is Cerbos?

Cerbos is an open-source authorization layer that decouples access control from your application code. It runs as a stateless Policy Decision Point (PDP) that evaluates fine-grained policies at request time.

Authorization policies are written in human-readable YAML supporting [RBAC](/content/features-benefits-and-use-cases/rbac/index.html), [ABAC](/content/features-benefits-and-use-cases/abac/index.html), and [conditional rules](/content/features-benefits-and-use-cases/pbac/index.html). They can be updated, tested, and deployed independently of your application.

Deploying Cerbos via Amazon Elastic Beanstalk gives you a production-ready authorization service that scales horizontally and fits naturally into your existing infrastructure and observability stack.

[Policy-as-codeHuman-readable YAML policies managed like source code](/content/features-benefits-and-use-cases/human-readable-authorization/index.html) [Scalable PDPStateless policy decision point with sub-millisecond latency](/content/features-benefits-and-use-cases/scalability/index.html) [Centralized managementManage, test, and deploy policies from a single control plane](/content/features-benefits-and-use-cases/centralized-management/index.html)

### How to deploy Cerbos on Elastic Beanstalk

1. **Create a Dockerrun.aws.json**, Define a multi-container configuration that includes the official Cerbos container image alongside your application container.
2. **Configure policy loading**, Set environment variables to point Cerbos at a Git repository or Cerbos Hub for policy storage.
3. **Deploy the environment**, Upload the configuration to Elastic Beanstalk and launch the environment.
4. **Connect your application**, Use a Cerbos SDK to send authorization checks to Cerbos running on localhost within the same instance.

## FAQ

### How do I deploy Cerbos on Elastic Beanstalk?

Use a multi-container Docker environment in Elastic Beanstalk. Add the Cerbos container alongside your application container in a Dockerrun.aws.json file.

### Does Cerbos require any external dependencies?

No. Cerbos is fully stateless and requires no database or message queue. Policies can be loaded from a Git repository or Cerbos Hub.

### Can Cerbos scale with Elastic Beanstalk auto-scaling?

Yes. When running as a sidecar container in the same environment, Cerbos scales automatically with your application instances. Each instance gets its own Cerbos PDP.

## Cerbos + Amazon Elastic Beanstalk

- Cerbos runs alongside your workloads in Amazon Elastic Beanstalk
- No external databases or message queues required
- Built-in metrics, distributed tracing, and structured logging
- Stateless PDP instances scale horizontally

[Book a free policy workshop](/content/workshop/index.html) [Try the Playground](/content/features-benefits-and-use-cases/cerbos-playground/index.html)
