
Once agents can take actions, they become non-human identities with privileges — and that turns “AI productivity” into “security surface.” This post explains the new threat model, why “kill switches” are really identity and execution controls, and the architecture patterns that make agentic systems operable.
Axel Domingues
March’s hot topic wasn’t “agents can do more tasks.”
It was the uncomfortable follow-up:
Agents are becoming a cybersecurity problem.
Not because models are evil.
Because agents are power:
When you add autonomy to access, you create a new class of actor inside your organization:
a non-human identity that behaves like a fast intern with root access.
This article is the engineering lens:
I’m not teaching exploitation. I’m teaching how to design systems so that even if something goes wrong, you can contain it, explain it, and recover.
The shift
Agents turn LLMs from “text output” into privileged action — and security people notice immediately.
The new primitive
An agent is a non-human identity: credentials + scopes + budgets + auditability.
The meme that matters
“Kill switch” isn’t a feature — it’s an identity and execution control plane.
The goal
Agents that are least-privileged, sandboxed, observable, and revocable.
We’ve had “AI security” discussions for years.
But agentic systems changed the economics:
In short:
Agents are a third category — and most stacks don’t have a clean model for them yet.
That’s why the conversation in March shifted to terms like:
Stop thinking of an agent as “a chatbot that can click things.”
Think of an agent as a service account with a brain:
If you accept that model, the architecture becomes obvious:
Treat agents like privileged services, not like UI features.
A process that interprets goals and takes actions via tools (APIs, connectors, automations). The important part is not “reasoning.” It’s side effects.
Credentials owned by software, not a person. Examples: API keys, OAuth tokens, service accounts. Agents need these — and that makes them governable.
A control layer in front of all tools that enforces allowlists, scopes, budgets, approvals, and logging.
A control that can immediately stop an agent’s ability to act: revoke credentials, terminate sessions, disable risky tools, quarantine skills, and block outgoing calls.
The sandbox / VM / container boundaries that limit filesystem, network egress, process spawning, and secret access.
Security discussions get vague fast. Let’s stay concrete.
Agentic systems create risk in four predictable ways.
Untrusted text (emails, tickets, docs, web pages) can contain instructions that try to steer the agent into unsafe actions.
The fix is not “tell the model to ignore it.” The fix is policy boundaries + tool gating.
If an agent can access high-scope credentials, any bug or malicious tool call can exfiltrate them.
The fix is dedicated identities, short-lived tokens, and secret isolation.
As soon as you can “install skills,” you have the same problem npm has:
The fix is allowlists, signatures, scanning, sandboxing, and provenance.
Agent activity often looks like “API-to-API automation,” not a human in a browser. That can bypass controls built around user sessions and UI patterns.
The fix is treat agent actions as first-class audit events with dedicated monitoring.
None of these are exotic.
They’re classic security problems — with a new actor that makes them happen faster and more often.
Everyone says “agents need a kill switch.”
Good instinct. Bad implementation if it’s only UI.
A real kill switch must stop capability, not just a process.
Here’s what “kill switch” should mean in an agent architecture:
Revoke identity
Invalidate tokens and service accounts immediately. Rotate credentials. Break sessions.
Terminate execution
Stop the runner: cancel jobs, terminate the sandbox, freeze queues.
Disable tools
Turn off high-risk connectors (email send, deploy, payments) at the gateway.
Quarantine skills
Block a skill/package version, isolate its runtime, and prevent re-install.
It’s how you make experimentation safe enough to deploy.
If you want one blueprint, it’s this:

You need a way to mint and manage identities for agents:
Rule: an agent never borrows a human’s permanent identity.
All tool calls flow through a gateway that enforces:
Rule: the model is not the boundary. The gateway is.
Run agents in an environment designed to fail safely:
Rule: assume compromise and design for containment.
Least privilege is not a slogan. It’s a configuration discipline.
Name the workflow:
If you can’t describe the job, you can’t scope it.
Don’t give an agent “access to GitHub.” Give it:
Prefer tokens that expire quickly and can be revoked centrally. Long-lived secrets are blast-radius multipliers.
Examples:
Rate-limit:
Budgets turn “oops” into “contained oops.”
If you’re running agents, you need a new set of logs.
Not “chat logs.”
Action logs.
A minimal “agent audit event” should include:
If the actor is software, you must log it like software.“Something posted to Slack and we don’t know who did it.”
Most teams freeze because they imagine “agent security” as a massive program.
You can start small if you sequence it correctly.
Even if it’s manual at first: separate tokens and accounts per agent.
Centralize tool calls. Enforce allowlists and basic scopes.
Revocation + tool disable + runner cancel. Make it real, not decorative.
Move the agent runner into a VM/container with tight mounts and egress controls.
Log actions, approvals, and denials. Watch the “high-risk tool call” stream.
Once you have logs, you can learn baselines and detect drift.
This isn’t glamorous — and that’s the point. Security architecture is supposed to look boring when it works.
Agents are not just smarter UIs.
They are new security principals.
So the winning posture for 2026 is simple:
March takeaway
Treat agents as non-human identities with privileges.
Design for least privilege, sandboxed execution, tool gateways, audit trails, and fast revocation.
That’s how you get automation without losing control.
“Kill switch” discussion (Okta)
A mainstream signal that agent identity and revocation controls are becoming executive-level security requirements.
Agent-generated app traffic
A useful framing: agents generate API-native traffic that bypasses UI-centric monitoring assumptions.
Sometimes that’s part of the story, but it’s not the main one.
The main shift is that agents have:
Even a mediocre model becomes dangerous if it can take privileged actions without strong controls.
Turning off a process is not enough.
You need to revoke the agent’s ability to act:
Otherwise the agent comes back on reboot and keeps going.
Separate identities.
Give agents dedicated credentials with minimal scope. Stop borrowing human sessions. Once you do that, everything else (revocation, logging, policy) becomes implementable.
Security controls don’t have to block productivity.
Start with:
Then tighten gradually as you learn where the system actually misbehaves.