AI Engineer World's Fair 2025
CIAM for AI: Authn/Authz for Agents — Michael Grinich, CEO of WorkOS
Read the talk
Agent Identity: Who Is Acting, and What Can They Do?
An assistant that can help across enterprise systems can also damage them. Michael Grinich explores how customer identity and access management must adapt to agents.
From a talk by Michael Grinich
Before you start: Familiarity with APIs, access tokens and the distinction between authentication and authorization will help.
A cleanup request becomes a database deletion
Imagine an internal IT assistant built to help employees troubleshoot their laptops. A user asks it to delete unused files to free some space. The assistant thinks, then reports that it has deleted the production database. This is Grinich’s fictional opening example, but the failure mode is concrete: a nondeterministic system has turned a modest request into a destructive action.
Removing database access addresses that particular disaster, but the same question returns with Jira, Salesforce, Slack and email. An assistant’s usefulness depends on the systems it can reach; each connection also gives its mistakes somewhere to land. Useful access needs an enforceable boundary around what the agent may do.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
An identity between a person and a service
Agents need first-class identities in the B2B SaaS ecosystem. Treating them as ordinary bots or integrations leaves out an important relationship: they act on behalf of people. Grinich calls for shared standards that make that relationship explicit enough for engineers and enterprise IT to protect users.
An agent may work across many tools and sometimes combine access to multiple users’ data. Conventional machine-to-machine authentication, such as certificate-based authentication between services, identifies the participating systems. An agent also needs to carry the human context behind its work. It is therefore a hybrid: a machine that operates with some of the behavior and delegated authority of a person. Enterprise demand for the productivity gains makes this an immediate design problem rather than something to settle after adoption.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Give the agent a scoped shadow identity
Four architectural patterns address different parts of this problem: persona shadowing, delegation chains, capability tokens and escalation to humans. Grinich presents them as approaches he sees emerging, not a prescribed architecture that every application must adopt.
Persona shadowing creates a secondary identity derived from a human user, with only a subset of that user’s privileges. The separation gives the system an independent place to enforce stricter limits while retaining attribution to the original human. Pure impersonation lacks that separation: if the agent exactly mirrors the person, it inherits too much power.
An enterprise identity provider could represent a human Michael alongside Agent One Michael and Agent Two Michael. Role templates can define the privileges assigned to each shadow persona. The human identity remains the source of accountability, while the agent identities provide distinct enforcement boundaries. Of the patterns in the survey, Grinich describes this as the closest to agent identity deployments he has observed.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Carry authority across systems, then narrow it to an action
Delegation chains address what happens when work moves from one system to another. Grinich uses JSON Web Tokens, or JWTs, as the analogy: a signed token can carry claims that another system verifies cryptographically, without consulting a central session record for that signature check. A delegation token carries verifiable authority onward through successive calls.
Each link must preserve the original user’s authorization context. That makes delegation a context-passing requirement for remote procedure calls, not merely a token attached to the first request. It can also sit on top of shadow identities: the shadow identifies the agent, while the chain records the authority under which downstream work proceeds. Grinich points toward UMA and OIDC extensions as possible supporting approaches.
Capability tokens narrow the question from a general role to a specific permitted operation. The example is Agent X reading Bob’s calendar for the next 60 minutes. The token is a secure voucher for that bounded activity: it can name the resource and action, expire after a set interval, and carry enough information for verification.
A compact JSON representation of that authorization intent makes the boundaries visible:
json
{
"agent": "Agent X",
"resource": "Bob's calendar",
"action": "read",
"valid_for_minutes": 60
}
These are illustrative claim names, not a token format. The capability must be protected against forgery and its restrictions enforced by the receiving system. In the bearer-voucher model Grinich describes, possession of the valid token proves authorization and lets the holder pass that authority onward.
The scope can shrink further to one action or one API call. Grinich connects this approach to Google’s Macaroons work. The useful distinction is between carrying broad membership in a role and carrying a credential for the particular thing that needs to happen.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Approval is a limited resource
Escalation to humans is straightforward: the agent proposes an action, and a person chooses Approve or Deny. But repeated prompts produce consent fatigue. Grinich compares this with Mac or Windows installation dialogs: eventually users approve automatically. The same behavior can lead people to grant broad OAuth scopes without meaningful scrutiny. An approval trail may satisfy an IT process while providing less protection than its designers expect.
The patterns therefore fit together rather than compete for a single winner.
| Pattern | Main boundary |
|---|---|
| Persona shadowing | A separate identity with reduced privileges |
| Delegation chains | Authority carried through successive calls |
| Capability tokens | A specific operation, resource and lifetime |
| Human escalation | A person’s decision before proceeding |
Which combination makes sense depends on the application, its access patterns, its customers and the restrictions in their environments. Some systems may use all four; others may need a different approach.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Extend familiar authorization infrastructure
The protocol landscape starts with familiar infrastructure. OAuth provides delegated authorization; OpenID Connect adds an identity layer. Grinich describes bringing OAuth 2.1 authorization to MCP, distinguishing the authorization server that grants access from the resource server that serves protected tools or data. The June 2025 MCP specification makes those separate roles explicit, permits colocated or separate hosting, and references OAuth 2.1 as a draft.
The awkward fit is primarily the familiar human-consent flow and its coarse, static scopes. OAuth itself does not always require a human interface: its client credentials grant already supports confidential clients obtaining tokens without an additional authorization request. That solves a machine authentication case, but not the whole problem of an agent carrying a person’s authority across changing tasks. OAuth still has a major practical advantage: developers know it, and many applications already integrate it.
User-Managed Access, or UMA, extends OAuth by letting a resource owner proactively establish access for another party through a central authorization server. The owner sets policy; an OAuth-based handshake enforces it at the resource API. For a personal assistant, this means defining what the assistant may do on an ongoing basis, rather than encoding every decision in a consent dialog. Consent and access policy become something managed outside the individual interaction.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Negotiate new access and present verifiable claims
Grant Negotiation and Authorization Protocol, or GNAP, is specified in RFC 9635. Its appeal here is dynamic negotiation. Familiar static scopes might grant Gmail read/write access or permission to post to Twitter. An agent, however, may discover that its task requires an action outside its original grant. It needs to propose that additional access and negotiate authority before proceeding.
GNAP predates the current wave of agents, which makes it an existing framework to examine rather than a protocol invented solely for this use case. Grinich considers the ideas relatively mature, while reporting limited implementation in the wild.
OIDC-A, OpenID Connect for agents, aims to put agent identity claims, delegation chains and cryptographic attestations more directly into OpenID Connect. Grinich is explicitly uncertain about its institutional standing, mentioning hearsay about missing approval. It should be treated here as a proposal, not an established standard; a publicly documented individual OIDC-A proposal describes these features without establishing institutional endorsement.
W3C Verifiable Credentials offer another building block: a way to present verifiable claims. Grinich starts with a human example, a signed JSON object asserting that someone earned a Bachelor of Science degree from Stanford. He then extends the idea to an Alice agent carrying a claim about Alice’s employment at WorkOS into another system. The credential conveys an assertion that can be checked across organizational boundaries.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Put enforcement outside the agent
The emerging deployment pattern is middleware between agent code and enterprise systems. A service or open-source framework provides the trust boundary instead of leaving enforcement inside the agent’s reasoning. Evals and guardrails do not guarantee that prompt injection or prompt hijacking cannot redirect an agent. Treating the agent as untrusted gives the intervening layer a clear job: dynamically enforce access policy and log what happens.
Grinich describes WorkOS’s implementation in terms of identity, authorization and abuse detection. AuthKit provides identity infrastructure, including the MCP work he discussed; he cites Cursor as a user. FGA supplies fine-grained authorization. A further system detects fraud, bots and abuse. The completed diagram places AuthKit, FGA and Radar together in the central layer between application code and resources.
He also points to Microsoft workload identities and Cloudflare’s MCP authorization work. Cloudflare’s position in the network layer makes the middleware approach a natural fit. The shared architectural idea is to make access enforcement a separate responsibility from the code choosing the agent’s next action.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
When the application’s users are mostly agents
Enterprise IT has traditionally divided applications into approved and unapproved products. Agent behavior makes that distinction less informative. An approved product can gain capabilities that act unpredictably; an unapproved product may become important enough that the organization needs to bring it under management. Computer-use systems such as Claude and browser infrastructure such as Browserbase can also operate existing applications through interfaces that do not necessarily reveal the agent to IT.
Grinich estimates that most applications currently receive about 95% human activity and 5% automated activity, then forecasts a transition through an even split to about 95% agent activity and 5% human activity. These are an estimate and a forecast, with no measured application cohort, sampling period or traffic methodology supplied. The implication is a shift in who software must recognize and authorize, not just an increase in API volume.
More machine collaboration could unlock substantial productivity across third-party systems, but only if identity and authorization preserve user trust. Grinich imagines trillions of agents alongside billions of people—a vast workforce resembling an army of interns. He closes by inviting engineers building agents and identity systems to collaborate, through conversation, a Twitter message or email, on the infrastructure needed to support that future.
The closing question asks when agent interactions might reach 50%. Grinich gives no date: it depends on the product. His analogy is a ghost kitchen. You repeatedly order its pizza for delivery, then visit and discover that there are no dine-in customers. Software may develop the same way, with applications people use exclusively through agents.
As an early example, Grinich cites Perplexity hotel booking through an unnamed API provider that, he says, lacks a normal user interface. His answer is therefore about uneven adoption rather than a universal timeline: some products may already function like software ghost kitchens, including products being built by people in the audience. For those applications, delegated agent identity is already part of the product’s primary interface.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Resources
From the talk
The foundational OAuth specification, including delegated authorization and the client credentials grant.
The specification for resource-owner-controlled access using a centralized authorization service.
The Grant Negotiation and Authorization Protocol specification for negotiating access rights and tokens.
The 2014 paper introducing delegable authorization credentials restricted through contextual caveats.
Further reading
Grinich's companion explanation of agent identity patterns, authorization infrastructure and expected adoption.
A versioned explanation of MCP authorization roles, server discovery and token validation.
An individual proposal for agent identity claims, cryptographic attestation and delegation chains in OpenID Connect.
- W3C Verifiable Credentials Data Model v2.0Documentation
The W3C model for expressing credentials and presenting verifiable claims.
Updates since the talk
Current Cloudflare guidance for adding authorization to MCP servers.
Current Browserbase documentation for persisting browser state across sessions.
Read the complete timestamped transcript
- 0:00
[on-hold music] My talk that was up here said CIAM for AI.
- 0:18
Um, that's a bit of industry lingo. It stands for customer identity and access management. Really what I'm gonna be talking about here is auth login for agents. Um, we just heard from, uh, from someone from Hex.
- 0:29
Hex is actually a WorkOS customer. We provide identity services to lots and lots of different SaaS businesses, B2B products, and our fastest-growing segment is AI companies. Turns out AI products need identity and authentication, so we have a lot of experience seeing this.
- 0:43
So I wanna talk about, um, how you can bring identity specifically to agentic-based applications, what we're seeing in the world today. So to start, I'll just start with a little bit of a story.
- 0:52
Um, I want you to imagine that you're, uh, building, uh, like a, a new chat tool, you know, kind of like a ChatGPT internally for one of your companies, and it's, uh, it's like an IT support tool.
- 1:03
So it's gonna help people not have to reach out to your IT team to get help with their laptop, you know, debug issues they might have. So you ship this thing, and a user signs in, and they say, um, "Okay, you know, my laptop had been filling up with files.
- 1:15
Uh, let's delete some, some unused files, um, just to clear up some space." And the LLM thinks for a bit, and then it goes, "Yeah, certainly, sir. I went ahead and deleted your production database."
- 1:26
And this is, you know, a bit of a, a fictitious situation, but it's not too far off from reality, where these non-deterministic agentic systems can go off the rails and have pretty destructive actions in, in your, um, your environment and your product.
- 1:39
And these agents only work if you give them access to everything. This example here, you might say, "Well, I'll just disable access to the production database," but what about Jira?
- 1:48
What about Salesforce or your Slack instance, your email? Um, agents are only as powerful as the systems you give them to. So inherently, there's this whole problem around kind of identity authentication, authorization for these systems.
- 2:00
And really what I wanna emphasize here is there's a shift coming where we need to think about agents as really having first-class identity support. What defines an agent in the B2B SaaS ecosystem?
- 2:09
It's different than a bot or an integration. A-agents are really a new paradigm for engineers and also enterprise IT to be working with. And my call to all of you is actually to collaborate with us to figure out how we can come together to work on these new standards for agent identity so users can stay safe and
- 2:25
protected, and we can all leverage it to scale and grow forward.
- 2:29
Agents, uh, behave a little bit different than people. Um, you know, agents interact across many, many different tools, and specifically, they need to act on behalf of users. They're, they're similar to users, but, um, like I mentioned, they need that wide data access to do a lot of different things.
- 2:42
They might need to be able to access data from multiple different users in one. So i-identity stuff here I'm gonna talk about, they're similar to users, but, but a bit different.
- 2:52
Agents really need to, to support, like, a machine identity natively. If you've ever heard of, like, machine-to-machine auth. Anybody heard a-about that before? Like certificate-based auth. It's, it's actually not the same framework as, as agents because in those scenarios, you really just have services talking to each other.
- 3:07
Um, agents behave more like people than systems, so it's kind of this hybrid between a machine and a, and a person identity. And last, I'll just say here before diving into some, uh, some more details, we really need to do this.
- 3:18
AI is clearly taking over the world. It's kind of preaching to the choir here at the, um, AI Engineer World Summit. But, um, uh, inside of the enterprise, people are racing to adopt agents because they understand the productivity gains that it can have.
- 3:31
So we can't just, like, wait, wait to do this and hope that it takes care of itself. We need to figure it out very soon. There's a lot of urgency around it.
- 3:39
So I'm gonna switch gears a little bit and talk about, first of all, why, um, identity for agents is hard. Like, what makes it different, and why is it challenging?
- 3:46
Well, the first thing is agents need to log in in a headless way, and when I s- when I say that, I mean that they need to be able to sign in without necessarily typing into a web browser.
- 3:56
It's, it's different than, like, API auth 'cause you might want tokens to persist for a while but not forever. Um, you also might want your agent to actually use the front-end application and click around like a computer use system.
- 4:08
So they need to be able to sign in but at the same time, um, uh, not be signed out like a, like a normal user. Um, these sessions need to be long-lived.
- 4:17
There's a question around where these credentials should live, how to refresh them, how do agents store them securely. This is one of the hard problems around, around agents. You'll hear from Paul, uh, for browser-based in a little bit.
- 4:27
Um, that's a question, you know, for browser-based. Like, as people sign in and create sessions, where is that stored? How is it, how is it kept secure?
- 4:33
Another challenge here on agents is the least privilege access model. So giving agents only a scoped-down ability to do something very specific. You know, on the one hand, um, you wanna scope down an agent's access to a very small amount.
- 4:45
It can only send a certain email or access a certain amount of data. But on the other hand, these non-determini- non-deterministic systems, you wanna give them access to be able to do a lot of things.
- 4:54
You know, you, you wanna actually give it access to your whole environment, your whole code base, maybe all of your bugs, all of your customer conversations. Um, so there's an authorization challenge around this where the existing, like, least privilege model doesn't necessarily apply.
- 5:08
You can't really constrain it. Permissions need to be dynamic for agents.
- 5:13
And lastly here, compliance. That example I gave earlier around the agent deleting the production database, um, you know, it, it, it's something we need to have a track record of who's done what.
- 5:24
Agents also need to be tied to a person at the end of the day, often for legal compliance. If you do something like SOC 2 compliance, you know, all of your code has to be reviewed by people.
- 5:34
What happens if you have, if you have agents reviewing code? And lastly, agents can just do a lot of stuff really fast. There's an old joke, um, I think it goes, "To err is human, but to screw up ten thousand times per second, you need a computer."
- 5:48
Agents will be like that, right? Like, they'll be able to go spawn other agents and do a lot of stuff. And so the visibility and the observability into agentic systems will be just as important.
- 5:56
So logging systems, enterprise logging management, how you get agent logs into those things, all very hard, all very complicated, but important to solve for us to actually scale these into production.
- 6:06
So it's, it's really challenging actually to, to kind of bring identity and build these agentic systems. Um, I wanna propose a few architecture patterns here as to how we can actually do it.
- 6:17
Um, and these are things that I'm kind of seeing people start adapting out in the wild. Um, I'll go-- There's four of them. I'll go through them, uh, each individually.
- 6:25
Um, uh, these are not prescriptive by any means or, like, the be-all, end-all. It's just some things that I've, I've seen so far.
- 6:33
Cool. It's persona shadowing, delegation chains, capability tokens, and lastly, escalation to humans, human-in-the-loop.
- 6:43
All right. Persona shadowing. So persona shadowing is sort of like impersonation, where you give an agent an identity that shadows a user. So this reflects off of a user.
- 6:53
It's kind of like a secondary user from your identity system. It has a subset of the privileges that a user might have, and it lets that, that agent go do things on behalf of a user.
- 7:02
And this separation lets the system enforce stricter limits and access control around that, um, that actual, uh, shadow, shadow agent here. So you get this, like, isolation and accountability.
- 7:12
However, every action is still explicitly tied to an original human identity, which has the benefit there. Um, impersonation, just pure impersonation, gives too much power, um, if it's just exactly mirrored as a person, so this kind of shadow-scoped identity lets you delegate a subset of the privileges.
- 7:28
And you can even create, like, role templates off of this. This is probably the closest I've seen to people using agents-- i-iden-identity in the wild. You kinda take your enterprise IdP, and if there's, like, the Michael prime, the human Michael, I have, like, Agent One Michael and Agent Two Michael or something like that, which are shadow personas
- 7:45
off of my own identity scoped down. So this is one way that you can achieve, uh, identity for agents.
- 7:52
A second here is delegation chains. So if you've ever used JWTs, JSON Web Tokens, where there's, uh, they're signed, there's a cryptographic signature you can verify as you pass them along from system to system to system, um, you know, they're, they're stateless in that way.
- 8:05
Delegation chains are kind of like that, where you can mint a token for an agent that maybe has some, you know, verifiable permission and pass it on step by step.
- 8:13
Um, it, it means that each link in the chain must carry forward the original user's authorization, so it requires a different level of kind of remote procedure, um, uh, calling in that way, context passing.
- 8:24
Uh, and it's sort of like those shadow personas in the sense that you can, you can layer it on top of shadow, shadow users. Um, this can be supported by a few different things I'll talk about in a second, the, the UMA and OIDC extensions, um, but this is-- this kind of idea of delegating access step by
- 8:40
step by step, um, is, is becoming more popular. So again, you create that token, you pass it to different systems, and it can persist from, from one to the other.
- 8:52
Capability-based tokens. So essentially giving a token that can do a specific thing. Agent X can read Bob's calendar for the next 60 minutes. You create a token just for that action, es-essentially only for that thing.
- 9:04
You know, it's like a secure voucher, and those can expire after a certain amount of time. They can have scoped access. Um, these tokens can be self-contained and time-bound, so it can simplify how actually verification works on it.
- 9:15
And essentially, po-possession of that token, of that voucher, lets you prove that you're authorized to do something so you can pass it along. Kinda similar to the JWT stuff I mentioned earlier, but around capabilities versus roles or permissions.
- 9:27
You could even have a, a token like this minted for just one specific action, one specific API call. Um, if you're familiar with the Macaroons work that Google has done, this is kind of a version, a version of that.
- 9:41
And lastly here, escalation to humans, human-in-the-loop. Approve everything, right? Pretty simple to understand. When an agent needs to do something, it bubbles it up to you, and you hit Approve or Deny.
- 9:50
Um, problem with this is that, uh, p-- users get, you know, consent fatigue. Hit Approve, Approve, Approve, Approve. You know, if you have, like, a-- like, your Mac or your Windows laptop, and it's asking you, "Hey, do you wanna install this thing?"
- 10:01
Eventually, users just start hitting Approve on everything, just OAuthing, giving broad scopes. And so this actually doesn't really achieve, um, a secure model, even though from a compliance perspective it might be acceptable from IT.
- 10:14
So these are four techniques that people are, um, kind of adopting today, persona shadowing, delegation chains, capability tokens, and, you know, escalation to humans. Um, I think actually, like, the right approach is a combination of these things in different, different scenarios.
- 10:29
So depending on what application you're building, the access patterns, you know, who your customers are,
- 10:34
like, what, kind of what restrictions they have in their environment, um, you might adopt different pieces of these or all of them or maybe something totally different. Um, but they're just some of the architectural techniques that I'm seeing for kind of securing and bringing identity to agentic systems.
- 10:50
Okay. We're gonna keep going. I'm going pretty fast. [chuckles] Um, next I wanna talk about, um, one of my favorite things, which is acronyms.
- 11:00
Uh, we love acronyms at WorkOS. Um, there's acronyms everywhere in the identity and security space. I wanna talk a little bit about some emerging standards and protocols specifically for bringing identity to agentic systems that are out there.
- 11:12
So some of these you might have heard of. Some of those-- some of these you certainly haven't. They're brand new. Uh, but I'll go through a few of them just so you'll have some, some lingo as you think about this maybe over the next year.
- 11:22
Cool. The first is OAuth. How many people have built something with OAuth? Like, pretty much everybody. Yeah, OAuth. Uh, standard authorization, um, delegation system on the internet. Um, OpenID Connect, if you're not familiar with that, it's kind of like OAuth's, like, younger, hotter cousin or something.
- 11:37
Um, essentially allows for delegation of the identity and authorization. This has come to MCP relatively recently, so you can, through MCP, um, you can add a OAuth 2.1 authorization server, split the authorization from the resource server, and essentially create identity for MCP servers.
- 11:54
Um, OAuth, problem with it is it was built for human consent and not machines, so it kinda depends on, like, a, a user interface. We need to adapt it for machine auth.
- 12:02
It's also-- has static scopes. There's a lot of problems with it for i-- uh, agentic identity. But the benefit is everybody here knows it, right? And it's, it's already integrated with a lot of applications.
- 12:11
So there's a ton of momentum just generally around OAuth for agentic identity.
- 12:18
UMA, User-Managed Access. This is actually an extension to OAuth that allows a user or resource owner to pr- pro- proactively grant another party, a requester, access to resources from a central authorization server.
- 12:30
Kind of like what we're seeing with the MCP work that I mentioned. Um, it essentially lets a user set policies around, like, what an agent can do, but uses the OAuth-based handshake to enforce those policies on resource APIs.
- 12:41
So it's an extension to OAuth for those resources. Agents are really all about accessing resources and doing specific actions. Um, so you know, for an AI agent, it could leverage this UMA to control maybe what a personal AI c- assistant is allowed to do.
- 12:54
It's externalizing the content in access policy rather than baking it into the OAuth consent dialogue that you approve specific things. It's, it's on a go-forward basis. User-managed access.
- 13:06
Another one is GNAP, GNAP, Grant Negotiation and Authorization Protocol. Um, if you're a masochist like me, you can go read the RFC 9635. There's a lot of cool stuff in this.
- 13:16
This is d- designed actually for a dynamic negotiation of token scopes. So we've all probably seen in OAuth, you have these static token scopes. Gmail, it's like read and write access.
- 13:24
You know, maybe it's your Twitter account, it can post tweets. But we really need, like, dynamic tokens, or uh, dy- excuse me, dynamic scopes because as an agent is running, it might need to go do something that you didn't previously authorize it to do, that you might not have known it needed to do.
- 13:38
Maybe it proposes it wants to go do something that wasn't even in the original scope. So this dynamic negotiation of tokens is actually an important way to have, um, interaction with, with agentic identity.
- 13:49
Um, uh, GNAP is actually a flexible framework for this. It was built before all the stuff around agents. Um, so it's like pretty, pretty cool. It's like relatively well-baked.
- 13:57
Unfortunately, it's not that well implemented out there in the wild, so it's a lot of really good ideas, but, um, kind of lower on the implementation stack.
- 14:06
There's more. OIDCA, OpenID Connect for agents. Um, this is very much in the protocol phase. Um, it's an emerging protocol for OpenID Connect. I actually was told recently that the guy that's doing this is kind of, uh, doing it without the consent of the OIDC Federation, and so maybe it's not even real.
- 14:22
I don't know. Um, this is how cutting-edge this stuff is. But essentially it allows you to bake agent identity claims and delegation chains into OpenID Connect more natively. So people are really trying to bring OpenID Connect into the agentic world.
- 14:33
It also allows for, um, cryptographic attestations for, for tokens. Um, if these big words don't mean anything to you, don't worry. Um, uh, but essentially it's an extension to OIDC.
- 14:43
And last one here, secure credential presentation. The WC3 created something called Verifiable Credentials a while ago. It's really used for people. So if you, like get a, you know, a degree from Stanford, they can like mint that and actually you can have a signed JSON object that says, you know, you got a Bachelor's of Science degree.
- 14:59
Um, people are applying this to agentic systems, which is pretty cool. Um, so you know, an agent could have this like verifiable credential. You know, Alice does work at WorkOS, Alice agent, and that could be passed on to other systems.
- 15:12
So leveraging this existing, um, verifiable credential work.
- 15:18
I'm sort of running short on time, so I'm gonna skip forward a little bit of some of this stuff. Um, in the industry, what we're seeing is that it's still really early, and the pattern that's really emerging is middleware for agents.
- 15:30
So rather than baking it into the application code, people are writing their agentic code and then leveraging services or open source frameworks to actually create a trust boundary in between, in between your agentic code and enterprise systems.
- 15:42
You can't guarantee your agent is gonna do anything very specific. Even, you know, if you have evals around it or guardrails, people can still prompt inject, they can prompt hijack.
- 15:50
Um, you kinda have to treat your agent as like untrusted. And so this l- idea of like putting a layer in between that's managed, that can be dynamic, that can actually log and enforce things, um, is the most common.
- 16:01
This is what we've done at WorkOS. Um, we've built a bunch of stuff around here. We have an identity product called AuthKit. That's what I was mentioning for MTP.
- 16:09
Um, like Cursor uses this today at WorkOS. We also have something called, um, FGA for authorization, granular access to permissions. And we actually run this middleware. We even have a, a system that can detect fraud, bots, abuse.
- 16:22
So we found this middleware approach of layering something in between application code and kind of enterprise resources to be really, really powerful. Um, Microsoft is doing some cool stuff with their workload identities actually.
- 16:34
And I would also recommend going looking, looking at Cloud- Cloudflare's work around their MCP Auth. Um, Cloudflare is a fantastic, like, networking, you know, stack solution. Um, and because they're in the network layer, they, they already are doing this middleware stuff.
- 16:49
So to kinda wrap up what's next. Well, I would say like in the previous world, especially around enterprise IT, it was very black and white. You know? Th- there were trusted things and untrusted things.
- 16:59
There were apps that were blessed by IT and apps that were maybe not blessed, that were kinda using renegade products. And you could, you could kinda know what to trust and whatnot.
- 17:07
Unfortunately, this has broken down. Everything's now in a gray area. 'Cause you might have trusted products that now have agentic behavior and can go do crazy things out in the world, right?
- 17:16
And you might have products that are actually like haven't been trusted by IT, but you need to adopt them and bring them in to start using them more and more.
- 17:22
Um, or even like potentially interacting with existing products through agen- agents that IT can't see. Something like Claude's computer use, right? Or we'll, we'll kind of talk a little bit about...
- 17:32
Paul, Paul will talk about browser-based. You know, be able to log in to existing systems, but have agent experiences on top of it. Today, about 95, you know, percent of traffic for most apps is people interfacing with them.
- 17:45
It's humans, you know, logging in and doing stuff today, and maybe about 5% is automated or m- you might have an API where people are scripting stuff. And what I anticipate is this is actually gonna transition, where it'll go, you know, from 95% maybe to 50%, and then eventually I think what we're gonna see is that like
- 18:02
95% of traffic and activity will actually be agents interfacing with products, and like 5% will be us mere mortals doing it instead of, instead of agents. And this is actually gonna be really profound.
- 18:13
It's gonna allow, allow for like a brand-new level of collaboration with machines, much more productivity. You know, connecting to these third-party systems. It's gonna be really, really, really powerful.
- 18:22
But it requires us to have a totally new way of thinking about identity for agentic systems for this to be secure and for-- not to erode, you know, user trust.
- 18:31
And I think it's just gonna keep going from here. It's not gonna stop. We're gonna get more and more and more and more agents in the world. If we have billions of people on the planet today, you know, I think we're gonna have like trillions of agents at some point going and doing things for us.
- 18:45
Um, kind of like a giant army of interns working, making us more productive. I think that's really exciting. Um, if you're interested in this and working on identity or you're building agents, um, what I would ask is just please send me a message or come talk with us.
- 18:57
We're really excited to help support people building products like this, and engineers, and we would love to hear from you. So you can scan this and DM me on Twitter or just email me.
- 19:06
Um, thanks so much for the time. Excited to chat with you. [audience applauding]
- 19:09
Thank you so much, Michael. I have a super interesting question for you. You predict 95% agentic interaction with these APIs. What's your timeline to 50%? How long do you think it's gonna take us to-
- 19:20
I, I think it depends on the product. Um, yeah, I mean, I, I haven't quite seen this yet, but, um, you, you know how there's those like restaurants that open just for doing delivery food?
- 19:32
Ghost kitchens.
- 19:33
Ghost kitchens, you know? Um, and then you like s- you're like, "Oh, I've, I've ordered pizza from that place a bunch of times. I'm, I'm gonna go actually check it out."
- 19:38
And you go in and you're like the only one there. I think it's gonna be like that for software. There will be apps that we use exclusively through agents.
- 19:45
Um, Perplexity just launched the ability to book, um, uh, hotels through Perplexity, and there's actually a company that provides an API for doing this that doesn't actually have like a normal interface.
- 19:55
They're like... So I, I think it's already happening, it's just, you know, like, like, uh, was it Alan Kay that said, "The future's already here-
- 20:02
Equally distributed
- 20:03
... it's just not equally distributed."
- 20:04
Yeah, yeah.
- 20:05
So it's probably already happening amongst you. [upbeat music]