AI Agent Access Control and Governance

Security teams managing what data and APIs autonomous AI agents can access and what actions they can take.

The answer

AI agents operating autonomously need bounded access — they should not be able to request arbitrary data or call any API. Corules's Gate 1 constraint evaluation defines the bounds of what an agent is allowed to propose before it reasons. This means the agent is told 'you may only consider discounts up to 25% for this customer' before generating its response. The agent cannot reason its way around this constraint because it never receives the option. Gate 2 validates the final action before execution.

How it works

Corules's policy runtime sits in the enforcement path between your AI agent and the action it wants to take. The agent sends a structured context payload to /v1/validate. Corules evaluates the context against a compiled CEL policy set and returns a structured decision — ALLOW, BLOCK, or ESCALATE — with a reason and audit ID.

Every decision is recorded in an immutable audit ledger. You can replay any past decision by providing the policy_set_version and the normalized input hash — the result will be identical.

Policy example

Policies are written in CEL (Common Expression Language). They are compiled once at publish time and evaluated in microseconds at request time.

// Gate 1 tells the agent its allowed action space:
GET /v1/constraints?actor=agent_sales_01&use_case=discount_approval
→ {
    "max_discount_pct": 0.25,
    "allowed_customer_tiers": ["standard", "premium"],
    "required_approval_above": 0.20
  }
// Agent cannot propose outside these bounds

Frequently Asked Questions

How is actor identity established for AI agents?

Agents use signed JWT tokens that carry their role and permissions. Identity is resolved from the token, not from the agent's self-report. This is a critical security property.

Can different agents have different permission sets?

Yes. Constraints are computed per actor × use case. A sales AI and a finance AI operating in the same system receive different constraint bounds.

See it working in your environment

Start free — no credit card, no sales call. Evaluate up to 1,000 decisions per month.

Get started free