CompoundTrust

AI Security Readiness Kit

AI agent permissions: seven lines for one agent

Identity, credential life, reads, tools, limits, approval and stop. Each one a decision someone signs.

The one-page AI agent permission set. The seven lines, the worst-case test and a worked example, with space to write your own agent's set and sign it. A4, prints without scaling.
Download the PDF

An agent nobody scoped

A hypothetical example. An AI agent chases unpaid invoices. It can also change payment records. Then one email from outside asks it to swap a supplier's bank details. Nothing in its setup says no.

Ask who approved its access. Usually someone who clicked Allow in a pilot. That is a default. Not a decision.

Purpose says what an agent is for. Not what it may do.

The OWASP Top 10 for agentic applications calls the principle least agency. Autonomy is earned. It is not granted by default.

The seven lines

  1. Identity. The agent gets its own identity. Not a person's account and not a shared service account. Otherwise every action looks like someone else's.
  2. Credential life. How long its token lasts and who can revoke it mid-task. Hours rather than months. Never a token that does not expire.
  3. Reads. Name every source it reads. Mark the ones written outside your organisation. That is where a hidden instruction can come from.
  4. Tools and actions. An allow list of named tools. For each one say read or write. Anything not on the list is not permitted.
  5. Limits. Maximum value, maximum volume, maximum rate. Limits turn a bad hour into a small incident.
  6. Approval. Which actions need a person first. Start with anything irreversible, anything that leaves the organisation, and anything that moves money.
  7. Stop. Who can stop it and how fast. What happens to work in progress. And when that stop was last tested.

Every action is logged under the agent's own identity. That is how you explain afterwards what it did and why.

Worked example: the invoice agent

Hypothetical.

Run that email again. The agent cannot touch payee records. The request goes nowhere. Nobody had to spot it.

The worst-case test

Write the worst thing the agent could do before a person intervenes. One sentence. For the invoice agent it is twenty wrong reminders in an hour. Small. Visible. Easy to put right.

If you cannot write that sentence, the set is not finished. A worst case nobody can state is the finding.

Fix these first

What I would do on Monday

What this page is not

It is not an OWASP template. The seven lines are a working set built on the OWASP guidance, not a format OWASP publishes.

Sources

The invoice agent is hypothetical.

The same material, narrated: Day 30 of The First 90 Days on the CompoundTrust channel. Start with Day 1, the AI inventory, if you have not got one yet.

← AI Security Readiness Kit