Skip to content

Deploy Policy Changes

Policy changes affect STS decisions and Gateway access. Treat them as production changes with simulation, activation, audit review, and rollback readiness.

sequenceDiagram
  participant Author
  participant Console as Console/Admin API
  participant API
  participant Redis
  participant STS
  participant Audit
  Author->>Console: create policy version
  Console->>API: validate and store version
  Author->>Console: simulate policy set
  Console->>API: activate policy set version
  API->>Redis: publish policy invalidate
  STS->>Redis: consume invalidate
  STS->>Audit: emit decisions using current bundle
  1. Confirm the policy uses current resource IDs, scopes, and canonical terminology.
  2. Validate syntax and invariants through Console or Admin API.
  3. Simulate expected allow and deny cases.
  4. Confirm STS readiness and policy age metrics are healthy.
  5. Prepare rollback policy-set version.

Use Console policy and policy set views or Admin SDK/API automation. Do not use top-level caracal runtime commands for policy management.

CheckExpected
API activation responseNew policy-set version is active.
Redis caracal.policy.invalidateSTS consumers receive invalidation.
STS policy ageReturns under alert threshold.
Audit decisionsExpected allow/deny records appear for canary requests.
Gateway behaviorProtected upstream access follows the new decision.

Activate the last known-good policy-set version. Then verify STS policy freshness, canary decisions, audit records, and Gateway behavior.

SymptomCheck
Activation succeeds but decisions do not changePolicy invalidation stream, STS policy age, and STS logs.
Simulation differs from live decisionsInput shape, active grants, resource IDs, subject/session claims, and step-up state.
Policy fails closed unexpectedlyRego compile errors, missing scope/resource, or invalid grant.

Use Upgrade Caracal for image, chart, migration, and runtime configuration upgrades.