Validate Request with Open Policy Agent (OPA)¶
The Open Policy Agent (OPA) is an open source, general-purpose policy engine that unifies policy enforcement. In Choreo Connect, you can offload some responsibility of making the decision to authorize or not when a consumer invokes APIs based on policies attached to APIs.
Choreo Connect uses OPA’s policy evaluation REST API interface to communicate with OPA. Following diagram describes the request/response of OPA validation.
Tip
You can deploy OPA server as a sidecar with Choreo Connect Runtime (Enforcer and Router) in a Kubernetes deployment, if you want to improve communication between Enforcer and OPA server.
| Numbers | Description |
|---|---|
| 1 | Client request |
| 2 | Request to validate (i.e. authentication, rate-limiting, OPA validation and other validations) the client request through Enforcer |
| 3 | Enforcer calling the OPA server with the JSON payload described in Request Payload to the OPA server |
| 4 | Response from OPA server after validating the request as described in Response Payload from the OPA server |
| 5 | Respond the validation status to the Router |
| 6,7 | Response from the backend |
| 8 | Response to the client |
Please refer the documentation on Validate Request with Open Policy Agent (OPA) to learn how to attach and configure OPA policies to APIs.
Top