Skip to main content

Licensing

Enterprise OPA has built-in licensing and must be started with a valid license in order to run.

Obtaining a License

For existing customers, please contact your customer support representative for your license.

Trial License

To evaluate Enterprise OPA, you can obtain a trial license by either method:

Using a License Key

To use a license key, you must set the EOPA_LICENSE_KEY environment variable before running eopa, e.g.

export EOPA_LICENSE_KEY=...

eopa run ...

If you're running Enterprise OPA in Kubernetes, it's recommended to store the license key in a Kubernetes secret and reference it in the Deployment. First, create a secret similar to this:

apiVersion: v1
kind: Secret
metadata:
name: enterprise-opa-license
type: Opaque
stringData:
license: "..." # <-- set license key here

This secret can then be referenced in a Deployment:

apiVersion: apps/v1
kind: Deployment
metadata:
name: enterprise-opa
spec:
selector:
matchLabels:
app: enterprise-opa
template:
metadata:
labels:
app: enterprise-opa
name: enterprise-opa
spec:
containers:
- name: enterprise-opa
image: ghcr.io/styrainc/enterprise-opa:latest
env:
- name: EOPA_LICENSE_KEY
valueFrom:
secretKeyRef:
name: enterprise-opa-license
key: license
args:
- "run"
- "--server"

Please see the deployment documentation for more information on deploying Enterprise OPA in Kubernetes.

Using an Offline License File

For air-gapped environments or isolated networks, Enterprise OPA can use License files for offline validation.

Note

Offline license files are only available for paid licenses.

When using a License file, connectivity to the external licensing service is not required. However, Licenses are only available for a fixed amount of time and will need to rotated periodically.

License Restrictions

Trial licenses are capped at 10 concurrent instances, paid licenses quotas are subject to contract.