Microsoft Entra Agent ID
Conditional Access

Microsoft Entra Conditional Access for agents overview

In brief

The overview now explains how Conditional Access evaluates the token subject and resource, and distinguishes delegated, agent-identity, and agent-user-account scenarios. Licensing and network-control requirements remain documented.

What Entra admins need to know

Administrators can use the access pattern to choose the appropriate policy target and guidance, while checking the stated licensing and network prerequisites.

This editorial summary was generated by AI from the documentation changes. Verify important details in the full Microsoft Learn article.

Documentation change

The comparison below shows only the changed extract. Use the full-page view for complete context.

#customer intent: As an identity administrator, I want to understand how Conditional Access evaluates agent access so that I can choose the right policy target and guidance.

Microsoft Entra Conditional Access for agents overview

Conditional Access for agents is an intelligentextension of the Conditional Access policy engine that helps organizations controlcontrols how users and agents access corporate resources.resources protected by Microsoft Entra ID. It brings together real-time signals such as user'sevaluates the subject that requests an access token and the resource that the token is for.

Understanding the agent's context, device, location,access pattern helps you target the correct identity. An agent can act on behalf of a signed-in user, use its own agent identity, or use its own agent user account.

Requirements and session risk information to determine when to allow, block, or limit access, or require more verification steps.licensing

Conditional Access for agents requires Microsoft Entra ID P1 or P2 and a Microsoft Agent 365 license for each user. Enforcement of Agent 365 licensing is coming soon. Network controls for agents require Microsoft Entra Internet Access.

For more information, see What is Microsoft Entra Agent ID.

Learn about Conditional Access for agents:

How Conditional Access evaluates agent access requests

To access a corporate resource such as a SharePoint file, MCP servers,server, or Open API services,service, a user or agent first requests an access token from Microsoft Entra ID.

When a Conditional Access policy applies, Microsoft Entra ID evaluates the configured policy requirements before issuingit issues the token. If the requirements are satisfied, an access token is issued.Microsoft Entra ID issues the token. The token is then presented to the target resource, whichresource validates the token and uses its claims to make authorization decisions.

The following diagram illustrates this process.

:::image type="content" source="media/agent-id/data-access-patterns-diagram.png" alt-text="Diagram showing the data access patterns for agent identities." lightbox="media/agent-id/data-access-patterns-diagram.png":::

How subjects and audiences are used

Microsoft Entra ID issues an access token to a subject for a specific audience (resource). Each access token has exactly one subject and one audience.audience:

  • Subject: The identity receivingthat receives the token.
    • In delegated access scenarios,access, the token represents the user while also identifyingand identifies the calling application or agent.
    • In application-only scenarios,access, the application or autonomous agent is the subject.
    • In agent's agent-user account scenarios,access, the agent's user account is the subject.

  • Audience: The target resource that the token is intended for.
    • The resource must be registered in Microsoft Entra ID.
    • If a subject needs to accessaccesses multiple resources (for example, multiple MCP servers or APIs),resources, it typically requiresneeds a separate access token for each resource, each with its own audience and permissions.resource.

    Conditional Access policies are evaluated based onevaluates both the subject requestingthat requests access and the audience being accessed.

    How Conditional Access decisions are made

    Conditional Access It evaluates policies operate as if-then statements:

    • If the conditions defined in a policy are met, the configured access controls are enforced.
    • If the required controls are satisfied, access is granted.
    • If the required controls are not satisfied, access is denied.

    For example, an organization may require multifactor authentication before a user can authorize an agent to access their email. Similarly, an organization may configure a policy to block access from agents identified as high risk.

    When Conditional Access is evaluated

    Conditional Access is evaluated wheneverwhen Microsoft Entra ID issues or refreshes an access token. Some resources also support Continuous Access Evaluation, which can trigger near-real-time enforcement for specific events.

    AgentChoose an agent access patternspattern

    Agents canChoose the access Microsoft Entra-protected resources using onepattern based on the subject of the following patterns:token, not the platform where the agent was built.

    If the agentAccess patternPolicy targetGuidance
    Accesses downstream resources for a signed-in userOn-behalf-of (OBO), also known as delegated accessUsers and groupsAgent OAuth flows: On-behalf-of
    Accesses resources with its own agent identity and no signed-in userApplication-only, also known as client credentials or app-only accessAgent identity or agent identity blueprintSecure autonomous agents with Conditional Access
    Accesses resources through its own user accountAgent-user accessAgent's user accountSecure agents that act as users with Conditional Access

    An agent can use more than one access pattern. Create separate policies for each token subject that the agent uses. A policy that targets an agent identity doesn't apply to the agent's user account, and a policy that targets the agent's user account doesn't apply to the agent identity.

    Agents actingthat act on behalf of a user

    The most common access pattern isIn the on-behalf-of (OBO) flow. In thisOBO flow, a user signs in to an agent application, and theapplication. The agent accesses downstream resources usingwith the user's identity and delegated permissions. For example,

    The agent can't reuse the user's original token because that token is for a different audience. The agent exchanges the token for a new token for the target resource. Conditional Access evaluates this token exchange.

    Because the user is the subject, Conditional Access policies target users and groups, not agent identities. The OBO flow describes the authentication flow, not a type of agent. Any agent can use this flow when a signed-in user is present and the agent needs the user's identity and permissions.

    Agents that act as applications

    In application-only access, an agent reads your emails, it accesses your mailbox on your behalf. For more information about how the OBO flow works for agents, see Agent OAuth flows: On-behalf-of.

    In this flow, the agent can't reuse the user's original token because it was issued for a different audience. Instead, the agent uses the OBO flow to exchange tokens with Microsoft Entra ID, obtaining a new token scoped to the target resource. This token exchange is also evaluated by Conditional Access, letting admins enforce granular controls over which resources agents can access on behalf of the user.

    Because the user is the subject in this flow, Conditional Access policies target users and groups, not agent identities.

    Agents acting as an application

    Agents might access resources without a signed-in user. In this case the agent accesses the resource with its own identity. This flow is also known as client credentials flow, or app only access. All types of agents might use this flow. For more information about how agents authenticate with their own identity, see Agent OAuth flows: Autonomous apps.

    resources with its own agent identity and no signed-in user. This flowaccess pattern applies in the following common scenarios:to agents that:

    • Autonomous agents that operate independently runRun in the background, respond to events, or run on a schedule.
      • For example, an agent that generates a daily report and sends the result to a group of employees.
      • In this scenario, there's no user present, and the agent operates on its own.
    • Interactive agents that useUse their own identity don't always access resources on for a user's behalf; sometimes they use their own identity.
      • For example, if an agent calls a backend SMS service that users doncan't have access to, the OBO flow doesn't apply, and the agent authenticates directly as itself.
      access.
    • AgentsAre published on the web for public use don't authenticate the without delegated user or don't support delegating the user's context to corporate resources.context.

    In these scenarios, the agent requests an access token using its own agent identity and credentials managed through the agent identity blueprint. The token is issued to the agent identity (not the user). Therefore,identity. Conditional Access policies are scoped totherefore target the agent identity rather than the user.or its agent identity blueprint. For step-by-step policy configuration,examples, see Secure autonomous agents with Conditional Access.

    Agents actingthat act as ausers

    An agent user

    Sometimes it's not enough for account lets an agent to perform tasks on behalf ofhave a user or operate with its own identity. In certain scenarios, an agent has its own agent's user account that functions as a digital worker with its own mailbox, access to chat, and the ability toor participate in collaborative workflows as a team member.

    In this model, an admin An administrator creates athe user account in the directory and links it to the agent's identity. From there, it's like any other user account. Licenses can be assigned to access Microsoft 365 resources such as a mailbox and calendar. The account can be added to administrative units and security groups just like a human user account.

    Agents using this flow are also considered autonomous agents as they don't involve a user interface for human interaction. In this model, the accessThe token is issued to the agent's user account (the token subject), and policy is evaluated againstaccount. Conditional Access policies therefore target the agent's user account, not the agent identity. For step-by-step policy configuration, see Conditional Access for autonomous agents. For more information about the agent user OAuth flow, see Agent user OAuth flow.

    Agents runningthat run on managed endpoints like Windows 365 Cloud PCs for Agentssuch as Windows 365 Cloud PCs for Agents can also be subject touse device compliance and compliant network controls. Use theThe Agent execution environments (Preview) condition to scopelimits these policies to endpoint-based sessions only.sessions. For more information,policy examples, see Require a compliant device for agents' user accountsSecure agents that act as users with Conditional Access.

    Conditional Access policies and agentAgent identity blueprints

    In addition to the specific agent access patterns, you can also select agent identity blueprints to apply Conditional Access policies to a class of agents. EveryAn agent identity is derivedblueprint defines the configuration and governance model for agent identities created from it. A policy that targets a blueprint applies to all agent identities created from that blueprint, including agent identities created later.

    Targeting an agent identity blueprint, which defines its configuration and governance model. Applying a policy at the blueprint level automatically covers alldoesn't cover agent identities derived from it, including any new ones added in the future. Targeting the agent identity blueprint does not cover agents' user accounts.

    The following diagram shows that only agent identities associated with blueprint "A" are granted access; all other agents are excluded and blocked.

    :::image type="content" source="media/agent-id/conditional-access-agent-identity-blueprint-diagram.png" alt-text="Diagram showing thea Conditional Access flow forpolicy applied to agent identity blueprints.identities from one blueprint." lightbox="media/agent-id/conditional-access-agent-identity-blueprint-diagram.png":::

    For example, imagine aseveral agents in one project where you have several agents, each with its own purpose. Somemight operate independently, while others collaborate with other agents (A2A) to complete tasks.independently or work together. If they're all created under come from the same blueprint, a singleone policy applied to thaton the blueprint enforcescan apply consistent access controls across the entire collection.

    Attribute-driven Conditional Access

    As the number of agent identities grows, individually managing each one across every policy becomes unsustainable. Custom security attributesCustom security attributes let you categorize agent identities and resources with business-specific labels, thenlabels. Conditional Access policies can target those attributes in Conditional Access policies. instead of individual objects.

    Policies automaticallybased on custom security attributes apply to everymatching agent withidentities, including matching attributes, including ones added in the future.identities created later.

    :::image type="content" source="media/agent-id/conditional-access-agent-diagram.png" alt-text="Diagram showing the Conditional Access flow forapplied to agent identities.identities by using custom security attributes." lightbox="media/agent-id/conditional-access-agent-diagram.png":::

    For a full walkthrough on creating custom security attributes and using them in a Conditional Access policy,policy example, see Conditional Access for autonomous agentsAllow approved agents by using custom security attributes.

    Conditional Access boundariesBoundaries and limitations

    Conditional Access policies don't apply when:in these cases:

    • An agent identity blueprint acquiresgets a token for Microsoft Graph to create an agent identity or agent's user account.
      • Agent blueprints have limited functionality. They can't act independently to access resources and are only involved in creatingresources. Agent identities perform agent identities and agents' user accounts.
      • Agent tasks are always performed by the agent identity.
      tasks.
    • An agent identity blueprint or agent identity performs an intermediate token exchange at the AAD Token Exchange Endpoint: Public endpoint (Resource ID:with resource ID fb60f99c-7a34-4190-8149-302f77469936).
      • Tokens scoped to the AAD Token Exchange Endpoint: Publicfor this endpoint can't call Microsoft Graph.
      • Agent flows are protected because Conditional Access protects token acquisition from the agent identity or agent's user account.
    • Security defaultsSecurity defaults are enabled.
    • Conditional Access only protects resources secured byAn agent accesses a resource without Microsoft Entra ID. For example, if an agent accesses resourcesID authentication, such as by using an API key, it bypasses the Microsoft Entra ID authentication and token issuance pipeline entirely and Conditional Access policies won't apply to them.key.

    The following configurations aren't currently supported:

    • Policies targetingthat target all users don't include agent's user accounts.
    • Scoping a Conditional Access policy toPolicies can't include or exclude agent's user accountaccounts based on their group membershipmembership.
    • A Conditional Access policy targetingthat targets agent identities wondoesn't apply to the agent's user account.accounts.
    • A Conditional Access policy targetingthat targets agent identities using agent identitythrough a blueprint covers only the agent identity,identities, not the agent's user account.accounts.

    Next stepsRelated content

Daily Entra.News

Get daily email updates

Get a concise summary of the latest Microsoft Entra updates delivered straight to your inbox.

Loading the secure signup form…