Default rule

Give the agent less access than the human who designed it. The builder's administrator account is convenient for a prototype and usually the wrong production identity.

Separate four questions that get mixed together

QuestionExample
What can the agent read?Customer records, inboxes, files, SharePoint sites, databases
What can the agent decide?Classification, priority, recommended response, routing, approval recommendation
What can the agent change?CRM fields, tickets, documents, permissions, orders, user accounts
What can the agent communicate externally?Email customers, post to chat, submit forms, make API calls as the company

An agent may reasonably have broad read access for a search task while having no autonomous write access at all. Do not treat "agent access" as one binary permission.

Use a permission ladder

  1. Read-only, narrow scope.
    Start with the smallest dataset or system segment needed for the use case.
  2. Read-only, broader scope.
    Expand only when retrieval quality or business coverage clearly requires it.
  3. Prepare an action, human approves.
    The agent drafts the email, CRM update, refund recommendation, or change request but a person authorizes execution.
  4. Autonomous low-impact write.
    Allow narrowly defined actions that are reversible, observable, and bounded.
  5. High-impact action with explicit controls.
    Financial, destructive, security, legal, or external actions should require stronger validation, approval, or deterministic policy checks.

Credentials should match the workflow's role

A common small-business pattern is an automation built under the owner's Google or Microsoft account because that account can access everything. It works immediately. It also means the workflow may inherit mailbox access, files, contacts, calendars, customer information, and administrative permissions far beyond what it needs.

  • Use dedicated application or service identities where supported and appropriate.
  • Use delegated user access only when the workflow truly needs to act as that user.
  • Request the narrowest OAuth scopes that support the function.
  • Do not store API keys in prompts, workflow notes, spreadsheets, or source code.
  • Document where secrets live, who can rotate them, and how to revoke them.
  • Plan what happens when the employee who created the integration leaves.

Human approval is a control, not a workaround

Use approval when the cost of a wrong autonomous action is materially higher than the cost of a brief review. Examples include:

  • sending a customer-facing message with financial, legal, or contractual impact;
  • issuing a refund, credit, or payment;
  • creating, disabling, or changing user access;
  • deleting or moving important data;
  • changing a security configuration;
  • approving a vendor or purchase;
  • making a compliance determination;
  • publishing externally under an executive or company identity.

n8n and other platforms increasingly provide human-in-the-loop patterns around agent tool calls. The important design decision is not whether the platform has an approval node. It is which actions require approval, what evidence the reviewer sees, how long the approval remains valid, and what happens when nobody responds.

Prompt injection becomes more important when the model has tools

If an agent reads untrusted email, documents, web content, tickets, or user input, that content can contain instructions intended to influence the model. When the model has only a summarization task, the consequence may be a bad summary. When the model can send email, fetch secrets, or execute tools, the consequence can be much larger.

Design assumption

Treat external content as data, not authority. Do not let text retrieved from a customer email, web page, document, or ticket redefine the system's permissions or bypass approval rules.

Keep deterministic policy outside the model

Do not rely on a prompt alone for rules like "never refund more than $500," "never email outside our domain," or "never disable an administrator." Encode enforceable limits in the workflow or application layer so the model cannot talk its way around them.

Log decisions without leaking secrets

You need enough evidence to reconstruct what happened: the business record, the agent's requested action, the tool called, the approved arguments, the result, and the reviewer when applicable. But logs should not become a second secret store. Redact credentials, tokens, sensitive authentication material, and unnecessary customer data.

Use stop conditions

An agent should know when not to act. Common stop conditions include:

  • required data is missing;
  • two authoritative systems disagree;
  • confidence is below a defined threshold;
  • the action exceeds a dollar, permission, or risk boundary;
  • the user request conflicts with policy;
  • the tool returns an unexpected state;
  • the action has already happened;
  • the workflow cannot establish who or what the target record is.

The goal is bounded agency

The useful question is not "Can the AI do this?" It is "What authority should this automated identity have, under what conditions, with what evidence, and how do we stop or reverse it?" That is ordinary systems and security engineering applied to a new kind of decision-maker.

Related White Paper

Your AI Has Access to Your Business. Now What?

A small-business guide to permissions, data security, human approval, and guardrails.

Primary references