AI Systems and Enterprise Identity — Where Most Deployments Cut Corners
Authentication and authorisation are conventional enterprise architecture topics. In AI systems they tend to be deferred, abbreviated, or wired up wrongly. A practitioner view of the patterns that actually hold up.
In the AI engagements we have reviewed for remediation, the most common architectural gap isn't model selection or prompt engineering — it is identity. Authentication and authorisation are standard enterprise architecture concerns, well-understood and well-tooled. In AI deployments, they tend to be deferred, abbreviated, or wired up in ways that create exposure the team didn't intend.
This piece is a practitioner view of how enterprise identity should integrate with AI systems, where the common gaps are, and what the patterns that hold up actually look like.
What identity has to do in an AI system
A working identity model for an AI system answers several questions:
- Who is the user making the request?
- What is their organisational context (tenant, role, group)?
- What permissions do they have on the underlying systems the AI touches?
- What permissions do they have on the AI system itself (which features, which workloads)?
- What is the audit identity associated with their actions through the AI?
In a conventional application, the same questions arise. The answers usually come from the corporate identity provider — Microsoft Entra (formerly Azure AD), Okta, Ping, a SAML federation. The application validates the user's token; the user's identity propagates through the application; downstream calls carry the user's identity.
AI systems should do the same. They often don't.
The common gaps
Service-account integration with downstream systems
The AI system holds a service account credential for the downstream system. Every call the AI makes uses the service account, regardless of which user initiated the action.
This collapses access control. The AI can return data the user shouldn't see; the AI can call functions the user shouldn't invoke; the audit trail shows the service account, not the user.
The fix: propagate the user's identity. Either by using the user's token directly (where the downstream system supports it) or by representing the user's identity in the service-account call (claims passed through, or on-behalf-of patterns).
No tenant isolation
A multi-tenant AI system that doesn't enforce tenant boundaries at the data layer. The retrieval index is shared; the vector store has no filter on tenant; cached results leak across tenants.
The fix: tenant context as a first-class filter at every retrieval and every downstream call. Audit that nothing crosses the boundary.
Token freshness ignored
The user's token has a lifetime. After it expires, calls made with it should fail. AI systems sometimes cache tokens beyond their lifetime or use refresh tokens improperly, extending access beyond what the user's session was supposed to enable.
The fix: respect token lifetimes. Re-authenticate when sessions are stale. Treat tokens as credentials, not as persistent identifiers.
Identity at the LLM call but not at the function call
The system authenticates the user at the front door. The LLM is invoked. The function call from the LLM goes out using the system's credentials, not the user's.
The fix: identity propagation at every layer. The function executor checks the user's permissions before executing, regardless of what the LLM has been told.
Insufficient audit granularity
The audit log records that the system did things; it doesn't always record which user the things were done for. After an incident, the question "who initiated this" can't be answered.
The fix: every audit log entry includes the user identity, the session, the request ID. Joinable across layers.
The integration patterns that work
OAuth / OIDC at the front door
The standard pattern for modern enterprise applications. The user authenticates against the corporate IdP. The application receives an OIDC token. The token is validated; the user's identity and claims are available to the application.
For an AI system, the same applies. The AI is just another application from the IdP's perspective. The token provides identity; claims provide context.
Claims propagation
The user's claims travel with the request through the AI system:
- Identity (sub claim, email, name)
- Tenant or organisation
- Role
- Group memberships
- Custom claims relevant to the workload
When the AI calls a function, the claims are part of the call context. The function executor uses them to enforce permissions.
Token exchange for downstream calls
When the AI calls a downstream system on the user's behalf, the call should be made with credentials representing the user.
The pattern depends on the downstream system:
- OAuth-aware systems — pass the user's token, or exchange it for a downstream token
- SAML-federated systems — request a SAML assertion for the user, present to the downstream
- API key-based systems — use a service account but include the user identity as a header or claim that the downstream enforces
- Legacy systems — use a service account but log the user identity for audit; enforce permissions at the AI layer if the downstream cannot
The choice depends on the downstream system. The principle is the same: the downstream call represents the user, not the AI.
Authorisation at the function-call layer
When the LLM proposes a function call, the function executor performs authorisation:
- Is the user authorised to invoke this function?
- Are the function arguments within the user's permission scope?
- Are there policy constraints that apply (this user can read but not write, this user can read only their tenant's data)?
The LLM is not the authorisation engine. The function executor is. The LLM proposes; the executor disposes.
Tenant-aware retrieval
For multi-tenant systems, retrieval respects tenant boundaries:
- Vector store queries filtered by tenant
- Document stores accessed with tenant-aware credentials
- Caches keyed by tenant
- No cross-tenant inference even from aggregate signals
Session-scoped state
State that persists across an interaction (conversation history, intermediate results) is scoped to the session and the user. State does not leak across sessions or users.
Token rotation and revocation
The system handles token rotation gracefully. When a user's session is terminated (logout, revocation), state associated with the session is invalidated.
What we keep seeing
Recurring patterns in enterprise AI identity engagements:
Pilots run on service accounts; production proposals don't change that. The pilot was fast to build because it used a service account; the production migration leaves the service account in place. The exposure ships with the system.
Permission propagation gaps are the most common finding. In remediation engagements, we find them in roughly two-thirds of the systems we review.
Tenant boundary issues happen in multi-tenant SaaS contexts. A team builds a single-tenant pilot, expands to multi-tenant production, doesn't adapt the data layer. Cross-tenant leakage becomes the incident waiting to happen.
Audit identity gaps surface during incidents. The team responds to a complaint, tries to identify which user took the action, finds the log doesn't say. The retrofit is significant.
Modern IdP integration is straightforward but often deferred. Most enterprises have an IdP that supports OAuth/OIDC well. The integration work is routine. It just doesn't get prioritised in the pilot phase and ships unfinished.
What we recommend
For enterprise teams building AI systems in 2024:
- Integrate with the corporate IdP at the front door. OAuth/OIDC for modern systems; SAML where the IdP doesn't support OIDC.
- Propagate user identity through every layer of the system.
- Authorise at the function-call layer, not just at the front door.
- Respect token lifetimes. Don't cache or extend.
- Enforce tenant boundaries at the data layer, not in application logic alone.
- Log audit identity with every recorded action.
- Plan token exchange patterns for downstream calls. The user is the actor, not the AI.
Enterprise identity for AI systems is not a new architecture problem. It is the same architecture problem solved many times in conventional systems. The teams that approach AI identity with that recognition produce systems that integrate cleanly with the existing enterprise controls. The teams that treat AI as a new architecture without these constraints produce systems that operate as privilege bypasses, often without realising it until the audit or the incident.
RELATED READING
More from the field.
Service practices the article draws on, related programmes, and other pieces on adjacent topics.
Service practices
Related pieces
LLM Security — Threats, Mitigations, and What Enterprise Teams Should Actually Do
The LLM security landscape in mid-2024 has more named threats than mature mitigations. A practitioner view of which threats deserve attention and which technical and operational controls actually reduce risk.
Three Years of Enterprise AI — What We Got Right and Wrong
A practitioner reflection on three years of enterprise AI work — the patterns I called correctly, the calls I got wrong, and what to take from each into 2026 and beyond.
The 2026 AI Infrastructure Shift — What's Changing Underneath
The infrastructure layer for enterprise AI is shifting in 2026. New hardware, new deployment patterns, new economics. A look at what's actually different and what it means for architecture decisions.
Discuss this work
Bring an enterprise programme.
If anything in this piece resonates with what you're building, talk to us. Senior practitioners engage directly on architecture and delivery.
Work with the practitioners
Bring an enterprise programme.
Architecture audit, new delivery, modernisation, or in-flight rescue — Intellectual engages directly on enterprise programmes with senior practitioners.