Okta, Entra Agent ID, SailPoint or CyberArk? Who actually does what for your AI agents
Okta and Microsoft Entra give an AI agent its own login and tokens. SailPoint finds agents and makes someone answer for each one, and CyberArk, now part of Palo Alto Networks' Idira platform, sits in the path and takes access back when a task ends. Here's what each one actually does today, where the gaps are and how teams combine them.
part 4 of 4 · Before you sign an identity contractthe ideaOkta or Entra issues the tokens; SailPoint and Idira work on top
after reading, you can- Work out which product gives your agents their logins and which ones only check on them
- Spot the gaps each vendor admits to in its own docs, like tokens that outlive a switch-off
- Plan the combination that fits what you run today, so you don't rip out a working identity provider
Your AI agents need logins of their own, and four vendors now sell a way to give them one. They don't do the same job, though. Most companies end up with an identity provider for the agent's tokens and something else to find, review and stop agents, so pick by the gap you have today.
What agent identity means, in everyday words
An AI agent is software that reads, writes and acts in your systems, often for a person. To do that it has to sign in somewhere. Plenty of early agents signed in with a developer's API key or a shared service account, so nobody could tell what the agent did from what the person did. Agent identity gives each agent its own account, an owner who answers for it, credentials that expire quickly and a way to switch it off. Okta and Microsoft Entra hand out those accounts and tokens. SailPoint keeps the register and runs the reviews. CyberArk's Idira guards the riskiest doors and takes access back when the job is done.
Picture contractors in an office building. The identity provider prints each contractor a badge with their own name on it. Governance keeps the list of who is on site, who hired them and whether they still need to be there. The privilege layer is the guard at the server room, who opens the door for one job and locks it again behind them.
- Teams building Copilot Studio agents
- Okta shops with homegrown agents
- SailPoint or CyberArk customers
- Security leads asked to approve an agent
- Auditors reviewing AI access
Why this matters before the next agent goes live
An agent on a borrowed login holds everything that login holds. If a prompt it didn't expect tricks it, or the developer who built it leaves and nobody claims it, the audit log points at a person who did nothing wrong. OWASP's top 10 for agentic applications gives this its own entry, ASI03, Identity and Privilege Abuse.
The vendors moved quickly this year, and the names moved with them. Identity Security Cloud became Human Fabric, CyberArk's platform lives on inside Palo Alto's new Idira, and Entra's agent registry moved into Agent 365. A slide deck from the spring is probably out of date, so check every product name in a proposal against the vendor's docs.
-
01 Register the agent
The agent gets its own record, kept apart from people and old service accounts, so the logs name the agent and not whoever built it.
-
02 Name a human owner
Someone in the business answers for what the agent is for. When that person leaves, ownership has to pass to someone else or it quietly lapses.
-
03 Give it a short-lived credential
No passwords and no shared keys. The agent proves who it is with a key pair, a metadata document or a federated credential, and the tokens it gets expire fast.
-
04 Check every call
Every call carries a token made for that one app or MCP server, and the server turns away anything else. Put a gateway in the path and it can also check which tool the agent wants to run.
-
05 Review what it can reach
The owner signs off on each connection on a schedule, the same way managers review staff access. If nobody confirms a connection, it goes.
-
06 Switch it off fast
When an agent misbehaves you block new sign-ins and, ideally, kill the tokens it already holds. Some products can only do the first half today.
For engineers, the plumbing underneath is mostly standard OAuth. When an MCP serverdefinitionSoftware that gives agents tools over the Model Context Protocol. If you switch on authorization, it treats agents like any other API client and checks their OAuth tokens. uses authorization, the spec treats it as an OAuth resource server. It has to publish protected resource metadata (RFC 9728) and must refuse any token that was issued for someone else, and clients have to send a resource indicator with every token request.
A Stack Overflow question asks whether each layer of a multi-agent system should fetch its own token or pass one down the chain. For MCP the answer is clear: servers must not accept or pass on tokens issued for someone else, so each hop needs its own. Delegation goes back to RFC 8693, where the act claim records which agent acted for which user. Cross App AccessdefinitionAn IETF draft that Okta's Agent SSO is built on. The agent trades a user's sign-in assertion for a token to another app, and nobody sees a consent screen., the IETF draft behind Okta's Agent SSO, lets an agent trade a user's single sign-on assertion for a token to another app without a consent screen.
What each product actually gives you today
We worked from each vendor's admin docs and release notes, because the launch posts and the docs don't always agree. Okta's product page promises every agent explicit human ownership, for example, while its admin guide marks the owner field optional. The table sticks to what the docs say.
| What you need | Okta for AI Agents | Microsoft Entra Agent ID | SailPoint Agentic Fabric | Idira (CyberArk) |
|---|---|---|---|---|
| Main job | Identity provider: registers agents and issues their tokens | Identity provider: agent identities built from blueprints, tokens from Entra | Governance: finds agents, assigns owners, runs reviews | Privilege broker: sits in front of MCP servers and grants access per task |
| What an agent is | A WorkloadPrincipal in Universal Directory, staged and then activated | A special service principal with no credentials of its own, created from a blueprint | Its own identity type, a kind of machine identity | A record in a central agent registry with owner, purpose, status and permissions |
| Issues the agent's tokens | Yes: org and custom authorization servers, Cross App Access, Agent Gateway | Yes: on-behalf-of, client credentials or agent user flows; confidential clients only | No. Your identity provider issues them; per-call allow or deny is announced, no GA date yet | Yes, for traffic through its broker: OAuth 2.1 client credentials and short-lived tokens |
| Owner rule | Owners optional; Okta recommends at least two, up to five people or a group | At least one sponsor required; a Lifecycle Workflow (Agent 365 or E7) can move it to the manager when they leave | One primary owner plus up to 10 backups; passes down the list, then to the manager | Ownership attribute on each agent; the inventory flags agents missing an owner |
| Finds unregistered agents | ISPM: browser plug-in in managed Chrome, Agentforce, Copilot Studio; CrowdStrike endpoints in early access | Entra lists Agent ID agents; Agent 365 registry sync (manual) adds Bedrock, Vertex AI, Claude, Databricks Genie, Agentforce, Snowflake, Oracle | Connectors for AWS, Foundry, Vertex, Agentforce, ServiceNow, Snowflake and more, plus endpoint and browser sensors | Scans SaaS, cloud and developer environments for active agents |
| Reviews and requests | Okta Identity Governance certifies agent resource connections and the linked app | Access packages with sponsor-driven expiry; Microsoft tells sponsors to attest every 6 to 12 months | Certifies the agent's access and the tools it reaches; access requests; audit | Access reviews show what each agent can reach and which permissions are in use |
| Stopping a bad agent | Deactivate blocks new sessions; gateway tokens live until they expire; token revocation planned for Q4 | Disable one identity, a blueprint, or a blueprint in every tenant; Conditional Access block templates | Deactivate on the source for AWS, Cursor, Databricks, Entra and n8n; kill switch announced, no setup docs found | Broker denies access and revokes task access when the job ends |
| Other vendors' agents | Imports from Bedrock, Foundry, Copilot Studio, Agentforce, ServiceNow, Snowflake and others; gateway clients include Claude Code and Cursor | Sidecar container for Bedrock or any containerized agent; federation from AWS and Google Cloud | Vendor-neutral connectors; needs a Human Fabric (SaaS) tenant even when bought standalone | Any agent using OAuth 2.1 against remote MCP servers; Prisma AIRS gateway |
| Licence | Agent SSO in core SSO (250 ID-JAG tokens per user per app per month); Okta for AI Agents is a separate subscription | Agent ID for all Entra customers; Conditional Access for agents needs E7, or Agent 365 plus P1 or E3; agent governance needs Agent 365 or E7 | Agentic Business or Agentic Business Plus suites, 5 non-human identities per human included; no public price | Add-on licence for existing CyberArk customers; no public price |
| Generally available | May 2026; Agent SSO August 2026 | April 2026 | August 4, 2026 | First release late 2025; Idira platform May 12, 2026 |
What changed in the last six months
Okta put Agent SSO into its core SSO plans at no extra cost. If an agent speaks Cross App Access, it gets short-lived tokens for your enterprise apps and nobody stores a user's password for it. Watch the cap, though: 250 tokens per user per app each month.
Admins used to set up client credentials for each MCP server by hand. Now Okta finds the provider's registration endpoint, registers the client and stores the credentials itself. Custom MCP servers can share one authorization server, and a token for one still won't work on another.
Entra's own registry pages are gone, and the full inventory now sits in Agent 365, agents without an Agent ID included. If you used the old Graph registry API, expect to register those agents again once Microsoft names a date.
Microsoft's message center says the CreateAsManager permission stops being granted automatically from November 4. Agent blueprints that create agent identities with no signed-in user, and relied on that grant, will get 403 errors unless an admin grants it. A new tenant setting decides whether ordinary users can create agent blueprints.
Expect the old name, Agent Identity Security, in older proposals; the product is Agentic Fabric now and comes standalone or in suites. Identity Security Cloud is Human Fabric. IdentityIQ 9.0 just sends human identity data over to it.
SailPoint has described a design with Google's Agent Gateway where every tool call gets a yes or no from SailPoint before it runs, though there's no GA date yet. The gateway does the blocking, and your identity provider still signs the user in and issues the token.
Palo Alto closed the deal in February and launched Idira, its identity platform built on CyberArk, in May. If you already run CyberArk, you keep the platform you have. Protecting agents costs extra, because it's sold as a separate licence.
Policies get specific: this user, through this agent, may call these tools on this MCP server and nothing else. Database access through Idira's MCP server is handed out per task and taken back afterwards.
- Creates the agent's account and signs its tokens
- Decides at sign-in whether the agent gets a token
- Knows the agents registered with it best
- Stops new sign-ins fast; older tokens usually run to expiry
- Keeps one register across clouds and builders. Shadow agents show up there too
- Ties each agent to an owner and runs the reviews
- Access lasts one task with Idira. When an agent goes rogue, the broker just refuses its next call
- Leaves tokens to your identity provider, unless the traffic goes through Idira's broker
How the four products got here
- Feb 2025CyberArk buys Zilla Security
That product is now Idira Identity Governance, the part of Idira that runs access reviews.
- Jul 30, 2025Palo Alto Networks agrees to buy CyberArk
- Feb 11, 2026The CyberArk deal closes
- Apr 2026Entra Agent ID platform generally available
- May 1, 2026Agent 365 GA; Entra registry pages retired
- May 2026Okta for AI Agents generally available
- May 12, 2026Palo Alto launches Idira, built on CyberArk
- Aug 4, 2026SailPoint Agentic Fabric generally available
- Aug 24, 2026Okta Agent SSO added to core SSO
- Oct 22, 2026Idira GA as identity provider for Prisma AIRS gateway
- Nov 4, 2026Entra stops auto-granting CreateAsManager
Rollout per Microsoft's message center, expected to finish late November.
- Q4 2026 (planned)Okta plans token revocation at its Agent Gateway
Where each one wins, and the catch
Pick Okta if your people already sign in through it and most of your agents live outside Microsoft. It pulls in agents built on Bedrock, Foundry, Agentforce, ServiceNow, Snowflake and a few more. Put Claude Code, Codex or Cursor behind the Agent Gateway and one policy covers every MCP tool they reach. Agent SSO is free up to the cap, so the pilot doesn't wait on procurement.
Read the gateway's limits before you design around it. It only carries MCP tool calls, it only reaches remote servers that take OAuth bearer tokens, and it runs only in Okta's cloud. An MCP server sitting inside your private network is out of its reach.
Entra wins in a Microsoft 365 shop. Copilot Studio has created an Agent ID for every new agent since May, and you can't opt out, so you already have agent identities whether you planned for them or not. Sponsors are mandatory, a Lifecycle Workflow can pass sponsorship to the manager when someone leaves, and one Conditional Access policy can block every agent built from a blueprintdefinitionThe Entra template that holds an agent's credentials and permissions. Turn it off and every agent identity built from it stops signing in, which is handy when you're not sure which one misbehaved..
The catch is licensing and reach. Agent ID itself is free, but Conditional Access for agents needs E7, or Agent 365 on top of Entra P1, and the agent governance features need Agent 365 or E7. Conditional Access only sees tokens Entra issues, so an agent calling an API with a static key walks straight past it.
SailPoint wins if you already run access reviews there and your agents are spread over several clouds. Its ownership model goes furthest. Each agent gets a primary owner and up to ten backups, and when the owner leaves, the next person on the list takes over. Reviews cover the tools an agent can reach, too, which is what auditors tend to ask about first.
It won't replace your identity provider. SailPoint doesn't issue tokens, its deactivate action only reaches five source types today, and deleting an agent in SailPoint leaves it running at the source. For IdentityIQ customers, SailPoint documents agent governance only in Agentic Fabric, its SaaS product; the 9.0 integration pushes people data one way into it.
Idira earns its place where an agent could do real damage. Think production databases, cloud consoles and any MCP server that writes. New MCP servers stay disabled until someone in security approves them, access lasts for a single task, and a rogue agent gets its next call refused.
It only controls what passes through it. An agent that calls an API directly, outside the broker or the Prisma AIRS gateway, isn't covered. Several pieces are still listed as coming soon, among them removing standing privileges on cloud providers and native SPIFFE identities in AWS.
The gaps nobody puts on the slide
Every product documents a hole somewhere, usually a long way from the launch blog. These are the ones that change a design.
- Okta's kill switch blocks new sessions only. Its own gateway docs say revoked tokens stay valid until they expire, and revoking live tokens at the gateway is only planned for Q4.
- In Entra, a Conditional Access policy aimed at an agent doesn't cover the agent acting for a user. In that flow the user is the token's subject, so the user's policies apply, and ID Protection pins the risk on the user as well.
- Every risk detection Entra runs on agents is offline today. That's useful for the investigation, but it won't catch an agent in the act.
- Entra has no dynamic client registration. One developer on Hacker News describes building a shim that hands every client the same pre-registered client ID, because many MCP clients assume it exists.
- SailPoint's scheduled dataset aggregation runs every 12 hours. Unless someone triggers a manual run, a shadow agent can run for up to half a day before it shows up in the register.
- Okta marks agent owners optional, and its docs don't say what happens to an agent when its owner leaves. Build that check yourself with the agent event hooks in Okta Workflows.
Few teams pick just one. The usual pattern is an identity provider for tokens with SailPoint or Idira on top, and SailPoint's onboarding asks you to pick Entra ID or Okta as the identity provider. Moving agents between identity providers is the expensive part, because each agent's credentials, app links and policies get rebuilt by hand.
Some Okta settings can't be changed later at all. An OIDC app link is permanent, and so is the registration method once you choose a client ID metadata document, so settle those before the first production agent.
What to do now
What to do now, by role
- Ask for every AI agent you run and who answers for it. Expect gaps the first time.
- Decide which job you're buying for first: tokens, owners and reviews, or locking down risky access.
- Ask vendors which proposal items are GA today, and get dates in writing for the planned ones.
- Move agents off personal API keys and shared service accounts, one at a time, in a change window.
- Set Entra's 'Users can create agent blueprints' switch the way you want it before the November rollout.
- Give every Okta agent at least two owners. The field is optional, so nothing stops an agent going live with none.
- Find out how long your agent tokens last and write it down, because a disabled agent keeps working for exactly that long.
- Give agents a client ID metadata document or a key pair to prove who they are. Microsoft tells you not to use client secrets in production, so don't start there.
- Request a separate token for each MCP server, with a resource indicator naming it. Your servers should reject any token that was issued for a different one.
- Don't pass a user's token through to downstream APIs; exchange it for one that names the agent.
- Run the discovery you already own, whether Okta ISPM, Agent 365 or SailPoint sensors, and compare it with the registered list.
- Disable a pilot agent on purpose and time how long its existing tokens keep working.
- Set an alert for agent identities created outside the blueprints and builders you've approved, so nobody can quietly put a pilot into production.
Harden it once, then reuse it for every agent
The setup that makes the next agent easy
- 01One identity per agent
No agent shares a login with a person or with another agent. In Entra that's one agent identity per agent, made from a blueprint. In Okta it's one WorkloadPrincipal each.
- 02Owners who stay current
Require an owner when the agent is registered, and wire leaver events to reassign it. SailPoint does this out of the box. Entra does it through a Lifecycle Workflow you set up, which needs Agent 365 or E7, and in Okta you'll build it with the agent event hooks in Workflows.
- 03Short tokens, scoped to one server
Keep agent token lifetimes short, since a disabled agent keeps working until its tokens run out. Scope each token to one MCP server or one API.
- 04A gateway in front of tools that write
Put MCP servers that change data behind a gateway or broker that checks the tool as well as the token. Okta Agent Gateway and Idira both do this, and Microsoft's MCP firewall is in preview.
- 05Reviews that include the tools
Have owners certify what each agent can reach every quarter or half-year. Remove whatever the owner doesn't confirm.
- 06Practise the switch-off
Disable a pilot agent on purpose, check that it actually stops, and write down how long it took. Do it again after every product upgrade.
Before: agents ride on borrowed logins
Agents sign in with a developer's API key or a shared service account. The logs name the person, nobody owns the agent, and switching it off breaks other jobs that use the same login.
After: no more borrowed logins, and one place to switch an agent off
Agents get their own logins from Okta or Entra, with an owner on record. SailPoint runs the reviews, and calls that change data pass through a broker that only lets the agent in for the task at hand.
If an agent goes wrong
If an agent does something nobody asked for
Use this when an agent deletes records, emails the wrong people or pulls data it shouldn't have. Getting the order right matters more than speed.
- 01Containfirst hour
- Start in your identity provider: deactivate the agent in Okta or disable it in Entra. If several agents came from the same Entra blueprint, disable the blueprint and they all stop.
- Disable its resource connections or MCP servers too. Deactivating the agent alone can leave its existing tokens working for a while.
- Rotate any static secret or API key the agent could read. Assume it copied whatever it could see.
- 02Investigatefirst day
- Pull the agent's sign-ins and token history from Okta's System Log or Entra's sign-in and audit logs.
- Use the gateway or broker audit to see who started each session and which tool ran on which server.
- Check whether the agent was acting for a user. In Entra, that activity and its risk score show up under the user's name, so look there as well as at the agent.
- 03Removefirst days
- Strip permissions the agent didn't need and any connection nobody can explain.
- Delete or disable the agent in the builder platform as well. A delete in SailPoint doesn't reach the source system.
- 04Recoverfirst week
- Rebuild the agent with a fresh identity and short-lived credentials before you switch it back on.
- Restore damaged records from backup and have the owner sign off on what changed.
- 05Report and learnwithin 30 days
- Bring in legal and your insurer early. If personal data was exposed, follow whatever notification rules apply to you, and keep a timeline as you go.
- Add the gap that let it happen to the onboarding checklist. Then re-run the access review, because other agents could have the same loose permission.
What this looks like in real estates
Three typical situations
- the setup
- A mid-size insurer runs Microsoft 365 and Entra. Business teams built dozens of Copilot Studio agents, some of them before May, when Copilot Studio still made plain app registrations.
- what happens
- The newer agents have Agent IDs and sponsors. The older ones are classic app registrations, so policies aimed at agent identities don't reach them. One of them still holds a Graph permission nobody remembers granting.
- what to do
- Migrate the old app-registration agents to Agent IDs yourself, in the Power Platform admin center or with PowerShell, and block the risky ones by policy meanwhile. Check Agent 365 licensing before anyone promises Conditional Access for agents.
- the setup
- A software company runs Okta for all its staff and has a handful of homegrown agents on Bedrock. Every MCP tool call those agents make goes through Okta's Agent Gateway.
- what happens
- One agent starts making odd tool calls. The admin deactivates it in Okta, which blocks new sessions, but tokens already cached at the gateway stay valid until they expire, so calls keep landing for a while.
- what to do
- Deactivate the agent's resource connections as well, which cuts its access to those servers, and keep gateway token lifetimes short. Keep an eye on Okta's planned token revocation at the gateway.
- the setup
- A regional bank runs SailPoint IdentityIQ on premises and CyberArk for privileged access. The audit committee wants AI agents in next year's access certifications.
- what happens
- SailPoint only documents agent governance in its cloud Agentic Fabric. The bank's IdentityIQ 9.0 just sends people across to it, so agent reviews would live in a second console. Meanwhile the agents that query the core database still use a vaulted service account.
- what to do
- Decide whether agent reviews belong in Agentic Fabric or in Idira. Put agent database access behind Idira's broker with access per task, so the review covers something the bank can actually enforce.
How Cohash helps
We usually start with an inventory: which agents you run and whose logins they borrow. After that it's about making the tools you own do more, and only then looking at buying. Our identity engineers work across Okta, Microsoft Entra, SailPoint and CyberArk. Read about our AI agent identity practice, bring in an identity engineer, or book an assessment to map your agents first.
What to take from this
- 01
Tokens come from Okta or Entra. Owners and reviews come from SailPoint, and Idira locks down risky access. Expect to run two of these.
- 02
Start with your biggest gap. For some teams it's agents still borrowing people's logins, for others it's agents nobody owns, or agents that can change production with nobody watching.
- 03
Disabling an agent doesn't always kill the tokens it already holds. Keep token lifetimes short and test the switch-off.
- 04
In Entra, a policy on the agent doesn't cover the agent acting for a user, so the user's policies have to carry that load.
- 05
Get GA status in writing. Several headline features are still only planned.
01Do I need all four of these products?
Usually not. You need an identity provider to issue the agent's tokens, which is Okta or Entra, and then SailPoint or Idira for whichever gap hurts more: owners and reviews, or control over risky access. Heavily regulated firms sometimes need both on top.
02Can SailPoint replace Okta or Entra as the place our agents sign in?
No. SailPoint doesn't issue tokens. In the design it has shown with Google's Agent Gateway, your identity provider issues the token and SailPoint says yes or no to each tool call. Use it to find agents and put their access through certifications.
03Is Microsoft Entra Agent ID free?
You can register agents in Entra for free. Conditional Access for them is where you pay: Microsoft 365 E7, or Agent 365 with at least Entra P1 or Microsoft 365 E3. The agent governance features need Agent 365 or E7. Agent 365 on its own is USD 15 per user per month, and each licence covers a person who manages or sponsors agents.
04If we deactivate an agent in Okta, does it stop straight away?
Partly. Deactivating the agent blocks new sessions straight away, and deactivating a resource connection denies its further access to that resource. Tokens already cached at Okta's Agent Gateway stay valid until they expire. Okta says it plans to add revocation of live tokens at the gateway in Q4.
05What happened to CyberArk?
Palo Alto Networks bought it. The deal closed on 11 February 2026, and in May Palo Alto launched Idira, its identity platform built on CyberArk. You don't have to move anywhere as a CyberArk customer; the platform you run keeps working. Agent and machine identity protection is a separate licence, though, so get it priced on its own line.
06We run SailPoint IdentityIQ on premises. Can it govern AI agents?
SailPoint documents agent governance only in Agentic Fabric, which is a cloud service. IdentityIQ 9.0 has a plugin that pushes people data one way into it, and agent discovery, ownership and reviews happen there. Plan for a SaaS tenant if agents are in scope.
07Which one should a Microsoft 365 shop pick?
Start with Entra Agent ID, because Copilot Studio and Foundry already create agent identities in your tenant. Budget for Agent 365 (with Entra P1 or E3 for Conditional Access) or E7 if you want Conditional Access and governance on them. Add SailPoint or Idira only if you have agents outside Microsoft or high-risk access to lock down.
08Why do MCP servers struggle with Entra sign-in?
Many MCP clients expect dynamic client registration, and Entra doesn't offer it. One developer on Hacker News describes writing a small shim that hands every client the same pre-registered client ID. The newer MCP spec prefers client ID metadata documents and keeps dynamic registration only for authorization servers that don't support them yet, so check what each client supports.
Three questions, about a minute
Pick an answer and we'll tell you if it's right, and why it is or isn't. The score stays in this browser.
-
Q1Your Okta admin deactivates a misbehaving agent, but its MCP tool calls keep going for a few minutes. What's the most likely reason?
show the answer
B. Tokens already cached at the gateway stay good until they run out Deactivating the agent blocks new sessions. Okta's gateway docs say revoked tokens stay valid until they expire, which is why short lifetimes and disabling the resource connection matter.
-
Q2Someone's agent is acting for them in Microsoft 365 and it looks risky. IT wants Conditional Access to stop it. Where does the policy go?
show the answer
C. At the user it's acting for, because that's whose policies Entra checks In the on-behalf-of flow Entra treats the user as the subject, so the user's policies decide. Aim a policy at the agent identity and you only catch the agent's own autonomous calls.
-
Q3Your bank's agents already get tokens from the identity provider. The auditors want every agent's access reviewed and signed off. Which product fills that gap?
show the answer
A. SailPoint Agentic Fabric SailPoint finds agents, ties each one to an owner and certifies both its access and its tools. It leaves token issuance to the identity provider the bank already runs.