PDP
PDP copied to clipboard
Permit Policy Decision Point service. High-performance, policy-driven authorization for your apps and service.

Permit.io PDP
The PDP (Policy decision point) syncs with the authorization service and maintains up-to-date policy cache for open policy agent.
Running a PDP
PDPs are connected to your Permit.io account using an API Key. Check out the Permit.io documentation to learn how to get an Environment API Key.
You can run a PDP in a docker container by running the following command:
docker run -it -p 7766:7000 -e PDP_API_KEY=<YOUR_API_KEY> -e PDP_DEBUG=True permitio/pdp-v2:latest
Deploying PDP to Production
You can deploy the PDP to production in multiple designs. See the Permit.io documentation for more information.
Contributing
Setting up the development environment
- Clone the repository
- Install the dependencies
pip install ".[dev]"
Running locally (during development)
PDP_API_KEY=<YOUR_API_KEY> uvicorn horizon.main:app --reload --port=7000
You can pass environment variables to control the behavior of the PDP image. For example, running a local PDP against the Permit API:
PDP_CONTROL_PLANE=https://api.permit.io PDP_API_KEY=<YOUR_API_KEY> uvicorn horizon.main:app --reload --port=7000
Building a Custom PDP Docker image
For ARM architecture:
VERSION=<TAG> make build-arm64
For AMD64 architecture:
VERSION=<TAG> make build-amd64
Running the image in development mode
VERSION=<TAG> API_KEY=<PDP_API_KEY> make run