Skip to content
Agent Permissions

Give the Agent the Smallest Key That Can Finish the Job

An instruction to “only update notes” is not access control. Separate read from write, scope records and fields, use short-lived credentials, approve material actions, and revoke stale grants.

Operations team defining tool permissions and approval boundaries for an AI agent

Field note

By XenGrowth EditorialPublished Reviewed 10 min read

Key takeaways

  • Authorize the workflow for a specific task, tenant, object, field, action, value, and time—not an agent persona in the abstract.
  • Separate observe, recommend, approve, and bounded execution; keep read and write credentials distinct.
  • Validate every tool request outside the model and use short-lived scoped credentials where the platform supports them.
  • Review actual permission use, denied actions, stale grants, and escalation patterns before expanding authority.

01

A helpful tool description is not access control

A prompt that says “only update campaign notes” can be ignored, misunderstood, or displaced by injected content. The credential and enforcement layer must make forbidden actions impossible or require an explicit human decision.

List the business task, permitted objects, fields, records, recipients, spend, time window, and volume. If a tool exposes a broad API, wrap it with a narrower operation rather than handing the model an administrator token.

02

Separate capability from authority

Use distinct modes: observe state, recommend a change, stage a change for approval, and execute inside a bounded policy. A model may be capable of deleting records; that does not mean the workflow ever needs that action.

Create different credentials for read and write, development and production, and each tenant or client. Prefer short-lived tokens and delegated user context when appropriate. Never reuse one hidden master key across every agent and environment.

Swipe to compare every column

ScopeSafer grantDangerous shortcut
DataNamed objects, fields, tenantFull CRM export
ActionCreate draft or taskArbitrary API request
ValueBudget and volume ceilingUnlimited spend or recipients
TimeShort-lived task credentialPermanent shared secret

03

Enforce the decision outside the language model

Validate schemas, object existence, tenant, current version, recipient, consent, amount, rate, and policy before execution. Display a before-and-after diff for approval and bind approval to the exact action so a changed parameter cannot reuse it.

Research on tool-risk mitigation describes per-step least-privilege filtering as a way to reduce attack surface while preserving useful capability. Treat such results as system-specific evidence, then test the pattern in your own harness and tools.

04

Remove permissions as actively as you grant them

Inventory grants, owners, purpose, last use, expiry, environment, and rotation. Revoke access when a workflow is retired, a user changes role, a client leaves, or a tool is replaced. Test that revocation stops queued as well as new work.

Review denied calls, unused grants, permission escalation, approval overrides, unusual record breadth, and tool paths from production. More autonomy should follow evidence that the narrower system is reliable—not frustration that the controls are working.

Primary sources and further reading

Use the source material to validate details against your own context and current platform configuration.

This field note follows the XenGrowth editorial policy: primary sources where available, visible limitations, material review dates, and no invented first-hand experience.

Stay with the problem

Explore AI & automation