<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.39 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-chen-oauth-agent-authz-use-cases-02" category="info" submissionType="IETF" xml:lang="en" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="Authorization use cases">Agent Authorization use cases and gap analysis</title>
    <seriesInfo name="Internet-Draft" value="draft-chen-oauth-agent-authz-use-cases-02"/>
    <author initials="M." surname="Chen" fullname="Meiling Chen">
      <organization>China Mobile</organization>
      <address>
        <postal>
          <city>BeiJing</city>
          <country>China</country>
        </postal>
        <email>chenmeiling@chinamobile.com</email>
      </address>
    </author>
    <author initials="J." surname="Chen" fullname="Jia Chen">
      <organization>China Mobile</organization>
      <address>
        <postal>
          <city>BeiJing</city>
          <country>China</country>
        </postal>
        <email>chenjia@chinamobile.com</email>
      </address>
    </author>
    <author initials="J." surname="Yao" fullname="Jiankang Yao">
      <organization>CNNIC</organization>
      <address>
        <postal>
          <city>BeiJing</city>
          <country>China</country>
        </postal>
        <email>yaojk@cnnic.cn</email>
      </address>
    </author>
    <author initials="Y." surname="Jiang" fullname="Yuning Jiang">
      <organization/>
      <address>
        <email>jiangyuning2@h-partners.com</email>
      </address>
    </author>
    <author initials="C. P." surname="Liu" fullname="Chunchi Peter Liu">
      <organization>Huawei</organization>
      <address>
        <email>liuchunchi@huawei.com</email>
      </address>
    </author>
    <date year="2026" month="August" day="12"/>
    <area>Security</area>
    <workgroup>OAuth Working Group</workgroup>
    <keyword>OAuth</keyword>
    <keyword>Agent</keyword>
    <keyword>AI</keyword>
    <keyword>Artificial Intelligence</keyword>
    <keyword>Authorization</keyword>
    <keyword>Delegation</keyword>
    <keyword>Revocation</keyword>
    <keyword>Gap Analysis</keyword>
    <abstract>
      <?line 61?>

<t>This document provides a systematic analysis of these emerging agent-based use cases. It categorizes them into distinct scenarios, details their specific authorization requirements, and performs a comprehensive gap analysis against the existing OAuth 2.0 framework <xref target="RFC6749"/> and its common extensions. The analysis identifies fundamental mismatches, the goal of this document is to articulate these gaps clearly, providing a foundation for future work on new extensions within the OAuth Working Group to address the authorization needs of the next generation of ai agents.</t>
    </abstract>
  </front>
  <middle>
    <?line 65?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The OAuth 2.0 Authorization Framework <xref target="RFC6749"/> has become the de facto standard for delegated authorization on the internet. Its success is rooted in a well-defined model where a resource owner grants a third-party client limited access to their resources without sharing their credentials. This model primarily assumes a user-present, interactive flow where a static set of permissions (scopes) is approved upfront.</t>
      <t>However, the landscape is rapidly evolving with the advent of sophisticated AI-driven "Agents". These are not simple clients but autonomous or semi-autonomous entities that perform complex, multi-step tasks on behalf of a user or another system. Their operational characteristics include:</t>
      <ul spacing="normal">
        <li>
          <t><strong>Delegated Autonomy:</strong> Agents act with authority delegated from a principal (user or system) over extended periods.</t>
        </li>
        <li>
          <t><strong>Complex Task Decomposition:</strong> An agent might take a high-level instruction (e.g., "plan my business trip") and decompose it into numerous discrete actions involving multiple resource servers.</t>
        </li>
        <li>
          <t><strong>Asynchronous &amp; Long-Running Operations:</strong> Tasks may run for hours, days, or indefinitely, often without direct, real-time supervision from the principal.</t>
        </li>
        <li>
          <t><strong>Dynamic &amp; Emergent Needs:</strong> The exact permissions required may not be known at the start of a task but emerge as the agent plans and executes its steps.</t>
        </li>
        <li>
          <t><strong>Composition &amp; Chaining:</strong> Agents may delegate sub-tasks to other agents, forming a chain of authority.</t>
        </li>
        <li>
          <t><strong>Cross-Domain</strong>: Chained or composited task orchestration often require calling of resources in different administrative domains.</t>
        </li>
      </ul>
      <t>This document does not propose new solutions or protocols. Instead, its purpose is to:
*   Define the key actors and concepts in agent-based authorization scenarios.
*   Describe a set of core use cases that exemplify the new challenges.
*   Conduct a gap analysis for each use case, identifying where the current OAuth 2.0 framework and its extensions fall short.
*   Summarize the key security considerations.</t>
      <t>By clearly articulating these gaps, this document aims to provide a shared understanding of the problem space and stimulate focused work on developing interoperable solutions for the next generation of delegated authorization.</t>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>In addition to the terms defined in <xref target="RFC6749"/>, this document uses the following terms:</t>
      <dl>
        <dt><strong>User (Resource Owner):</strong></dt>
        <dd>
          <t>An entity capable of granting access to a protected resource. In the context of this document, the user is the person who delegates authority to an agent. Conforms to the definition of "Resource Owner" in <xref target="RFC6749"/>.</t>
        </dd>
        <dt><strong>Authorization Server (AS):</strong></dt>
        <dd>
          <t>The server that authenticates the User and issues access tokens to the Agent after obtaining the User's authorization. Conforms to the definition in <xref target="RFC6749"/>.</t>
        </dd>
        <dt><strong>Resource Server (RS):</strong></dt>
        <dd>
          <t>The server hosting the protected resources, capable of accepting and responding to protected resource requests using access tokens. Conforms to the definition in <xref target="RFC6749"/>.</t>
        </dd>
        <dt><strong>Data Subject:</strong></dt>
        <dd>
          <t>A natural person whom accessed data describes, and who is neither the Resource Owner nor a party to the authorization exchange.</t>
        </dd>
        <dt><strong>Delegation Chain:</strong></dt>
        <dd>
          <t>A sequence of delegation events, where one actor grants a subset of its authority to another. For example: User -&gt; Agent A -&gt; Agent B.</t>
        </dd>
        <dt><strong>Intent:</strong></dt>
        <dd>
          <t>A high-level description of a goal or task that the user wants the agent to accomplish (e.g., "book me a flight to Hawaii for next week").</t>
        </dd>
        <dt><strong>Tool:</strong></dt>
        <dd>
          <t>A specific API or function that an agent can call to perform an action (e.g., a <tt>search_flights</tt> API, a <tt>send_email</tt> function).</t>
        </dd>
      </dl>
      <t><strong>Grant Layer Authority:</strong>
：The set of permissions established at the time of authorization, typically represented by scopes in an access token. It defines what an agent is allowed to do in principle (e.g., "The agent has the authority to book parks"). This authority is the primary focus of the core OAuth 2.0 framework and its extensions like RAR.</t>
      <t><strong>Execution Layer Evidence:</strong>
:A verifiable, non-repudiable record, generated at the moment a specific, critical action is taken. It serves as cryptographic proof of a principal's explicit consent to the concrete parameters of that single action (e.g., "The user explicitly approved booking 'Sunnyvale Park' for  $25 on this specific date"). This evidence proves <em>what</em> was done and under whose direct approval at runtime, not just what was <em>allowed</em> to be done.</t>
    </section>
    <section anchor="core-use-cases-and-gap-analysis">
      <name>Core Use Cases and Gap Analysis</name>
      <t>This section explores different categories of use cases, providing a concrete example for each, and analyzes the gaps in the existing OAuth 2.x framework. For each use case, we examine what can be achieved with existing tools and, more importantly, what is missing.</t>
      <section anchor="category-1-personal-consumer-scenarios">
        <name>Category 1: Personal &amp; Consumer Scenarios</name>
        <section anchor="authorization-requirement-summary">
          <name>Authorization Requirement Summary</name>
          <t>The personal and consumer use cases share several recurring authorization requirements that challenge the traditional, static, and upfront nature of OAuth 2.0 grants. These requirements focus on providing user-centric context, control, and lifecycle management for agent-delegated authority.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Requirement Theme</th>
                <th align="left">Use Cases and Forms</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">
                  <strong>Dynamic &amp; Contextual Authorization</strong></td>
                <td align="left">
                  <strong>UC1:</strong>  Authorization with task context; <strong>UC2:</strong> Conditional authority (based on event or time); <strong>UC4:</strong> Just-in-time permission requests.</td>
              </tr>
              <tr>
                <td align="left">
                  <strong>Granular &amp; Constrained Authority</strong></td>
                <td align="left">
                  <strong>UC1, UC3:</strong> User-defined constraints (e.g., spending limits); <strong>UC2, UC4:</strong> Fine-grained permissions (for devices, files); <strong>UC3:</strong>  Agent-specific policies (e.g., rate limits); <strong>UC5:</strong> User-defined scopes for headless services.</td>
              </tr>
              <tr>
                <td align="left">
                  <strong>Differentiated Actor Identity</strong></td>
                <td align="left">
                  <strong>UC3:</strong> Distinguishing human vs agent, between different agent classes.</td>
              </tr>
              <tr>
                <td align="left">
                  <strong>Task-Oriented Lifecycle Management</strong></td>
                <td align="left">
                  <strong>UC1, UC4:</strong> Task-bound revocation.; <strong>UC2:</strong> Bulk client revocation; <strong>UC5:</strong> Headless bootstrapping of credentials.</td>
              </tr>
              <tr>
                <td align="left">
                  <strong>Verifiable, Action-Specific Consent</strong></td>
                <td align="left">
                  <strong>UC1:</strong> Approval of final action parameters at execution time.</td>
              </tr>
            </tbody>
          </table>
          <t>The summary includes only authorization requirements that recur across multiple use cases. Use-case-specific requirements or gaps remain with the individual scenarios, such as the architectural mismatch with local OS permissions in UC4 or the need for independent per-class consent in UC3.</t>
        </section>
        <section anchor="use-case-1-personal-digital-assistant">
          <name>Use Case 1: Personal Digital Assistant</name>
          <ul spacing="normal">
            <li>
              <t><strong>Scenario Description:</strong> A user gives a high-level, natural language command to their AI assistant. The assistant must decompose this command into multiple steps and interact with various services to fulfill the request.</t>
            </li>
            <li>
              <t><strong>Example:</strong> On Monday morning, Alice tells her AI assistant, "Help me plan a picnic for this Saturday." The assistant begins its work autonomously:
              </t>
              <ol spacing="normal" type="1"><li>
                  <t>It first checks Alice's calendar for availability (requires <tt>calendar.read</tt>).</t>
                </li>
                <li>
                  <t>It then checks the weather forecast for Saturday (requires <tt>weather.read</tt>).</t>
                </li>
                <li>
                  <t>Seeing the weather is good, it spends some time researching nearby parks based on Alice's past preferences (requires <tt>maps.search</tt>and profile access).</t>
                </li>
                <li>
                  <t>On Tuesday afternoon, after identifying the perfect spot, the assistant determines it needs final authorization to book the picnic spot (requires parks.book) and add the event to Alice's calendar (requires calendar.write).</t>
                </li>
              </ol>
            </li>
            <li>
              <t>The assistant now presents an authorization request to Alice.</t>
            </li>
            <li>
              <t><strong>Challenge: Context Collapse and the Erosion of Informed Consent:</strong></t>
            </li>
            <li>
              <t>This scenario highlights a fundamental challenge to the traditional OAuth 2.0 model, which stems from the temporal decoupling of task initiation and authorization.
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>Context Collapse:</strong> The authorization request Alice receives on Tuesday afternoon is a simple prompt listing scopes like parks.book and calendar.write. The original context—the "picnic planning" instruction from the previous day—is lost. To Alice, the request is at best confusing ("Why does this app want to book a park now?") and at worst, indistinguishable from a sophisticated phishing attack. The traditional OAuth consent screen, designed for immediate, in-context requests, fails to provide the necessary assurance for the user to make a safe and informed decision.</t>
                </li>
                <li>
                  <t><strong>Inadequacy of Binary Choices:</strong> Alice's only options are "Grant" or "Deny." However, her real question might be, "Which park did you choose?" or "Is there a fee?" The current framework provides no mechanism for this crucial dialogue. Denying the request causes the agent's task to fail, while granting it feels like signing a blank check.</t>
                </li>
                <li>
                  <t><strong>Task-Level Revocation:</strong> Alice should be able to say, "Cancel the picnic planning," and have all permissions and pending actions related to this specific task instantly revoked, without affecting other tasks the agent might be performing.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><strong>Authorization Requirements:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>Authorization Context:</strong> The authorization request should carry sufficient task and action context for the user to understand why the requested authority is needed.</t>
                </li>
                <li>
                  <t><strong>Task-Scoped Revocation:</strong> The user should be able to revoke authority associated with a specific task without affecting unrelated tasks performed by the same agent.</t>
                </li>
                <li>
                  <t><strong>Pre-Authorized Constraints:</strong> Structured constraints previously approved by the user should remain associated with subsequent actions so that compliance can be checked at execution time.</t>
                </li>
                <li>
                  <t><strong>Admission-to-Execution Binding:</strong> When execution relies on an earlier admission based on originator authorization, applicable policy, or prior consent, the execution endpoint should be able to verify the admission basis and the scope and constraints attached to it.</t>
                </li>
                <li>
                  <t><strong>Action-Specific Approval:</strong> When fresh user approval is required for a high-impact or irreversible action, the approval should be bound to the concrete action parameters and verified before the action takes effect.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><strong>Gap Analysis:</strong></t>
            </li>
            <li>
              <t>This use case does not imply that OAuth itself should be responsible for parsing user intent (the agent's job) or orchestrating the task (the agent framework's job). Instead, it reveals a critical gap in the authorization experience when interacting with autonomous systems.  </t>
              <ul spacing="normal">
                <li>
                  <t><strong>What Works (Partially):</strong> The OAuth Authorization Code flow can be used to get initial permissions. Refresh Tokens can maintain the agent's session.</t>
                </li>
                <li>
                  <t><strong>What's Missing (The Gap):</strong>
                  </t>
                  <ul spacing="normal">
                    <li>
                      <t><strong>No Standard for Authorization Context:</strong> The core gap is the lack of a standardized mechanism to carry the justification for the request from the agent to the user via the Authorization Server. OAuth's model, designed for immediate user-initiated flows, implicitly relies on the user's short-term memory to provide context. This assumption breaks down in agentic workflows. There is no standard way for the agent to pass a cryptographically verifiable "context object" (e.g., "This is for the picnic you requested on Monday") that the AS can present to the user.</t>
                    </li>
                    <li>
                      <t><strong>No Standardized Interactive Consent Flow:</strong> There is no standard OAuth mechanism for an Authorization Server to facilitate a "clarification dialogue." The AS acts as a simple gatekeeper with a static grant/deny choice. It cannot "pause" the flow to allow the user to query the agent for more details (e.g., "Show me the park details") before consenting to the parks.book scope. This logic is currently left to complex, proprietary application-layer implementations.</t>
                    </li>
                    <li>
                      <t><strong>Impractical Task-Level Revocation:</strong> OAuth Token Revocation (<xref target="RFC7009"/>) revokes a single token. To achieve task-level revocation, the application would need to build and maintain a complex, non-standard mapping of tasks to all associated tokens. There is no standard way to issue a single command like "revoke all tokens and authority related to 'picnic-task-123'."</t>
                    </li>
                    <li>
                      <t><strong>No Standard Binding of Pre-Authorized Constraints to Execution:</strong> When the user has previously approved structured constraints on an action, existing grant-layer mechanisms do not provide a common way to bind those constraints to the concrete action performed later and verify that relationship at execution time. <xref target="I-D.yossif-agent-mandate-problem"/> states this T0-to-T1 constraint-binding problem and defines requirements without proposing a mechanism.</t>
                    </li>
                    <li>
                      <t><strong>No Standard Admission-to-Execution Binding:</strong> When a request is admitted based on originator authorization, applicable policy, or prior consent rather than a fresh user decision, existing mechanisms do not define how the execution endpoint verifies that admission basis or ensures that the concrete action remains within the admitted scope and constraints.</t>
                    </li>
                    <li>
                      <t><strong>No Standard for Execution-Layer Evidence:</strong> At the moment of financial commitment (the final "Book" step), a simple access token representing Grant-Layer Authority (e.g., a parks.book scope) is insufficient. The core requirement is for Execution-Layer Evidence: a non-repudiable, cryptographic proof that binds the user's explicit, real-time consent to the specific parameters of the transaction (e.g., "Book picnic spot at 'Sunnyvale Park', cost $25"). This evidence serves as proof of the human's decision at the moment of execution, proving what the user agreed to, not just that the agent possessed the authority to book something. The existing framework lacks a standard for generating or verifying such evidence. Where such evidence is required, it must be verified before the high-impact or irreversible effect is committed.</t>
                    </li>
                  </ul>
                </li>
              </ul>
            </li>
          </ul>
        </section>
        <section anchor="use-case-2-smart-home-automation">
          <name>Use Case 2: Smart Home &amp; Automation</name>
          <ul spacing="normal">
            <li>
              <t><strong>Scenario Description:</strong> A central home hub agent manages various IoT devices based on pre-defined rules or real-time events.</t>
            </li>
            <li>
              <t><strong>Example:</strong> Bob sets up a "Good Morning" routine. When his alarm goes off at 7 AM on a weekday, the home hub agent is authorized to:
              </t>
              <ol spacing="normal" type="1"><li>
                  <t>Slowly turn on the bedroom lights (device: <tt>bedroom_light</tt>, capability: <tt>brightness</tt>).</t>
                </li>
                <li>
                  <t>Set the thermostat to 70°F (device: <tt>thermostat</tt>, capability: <tt>set_temperature</tt>).</t>
                </li>
                <li>
                  <t>Start the coffee maker (device: <tt>coffee_maker</tt>, capability: <tt>on_off</tt>).</t>
                </li>
              </ol>
            </li>
            <li>
              <t><strong>Authorization Requirements:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>Persistent Delegation:</strong> After a one-time setup, the agent must be able to perform these actions daily without Bob's intervention.</t>
                </li>
                <li>
                  <t><strong>Fine-Grained Device &amp; Capability Permissions:</strong> The agent should be authorized to control the <tt>brightness</tt> of the <tt>bedroom_light</tt>, but not, for example, to unlock the <tt>front_door</tt>.</t>
                </li>
                <li>
                  <t><strong>Conditional or Event-Driven Authorization:</strong> The permissions should only be usable when specific conditions are met (e.g., <tt>time=7AM</tt> AND <tt>day=weekday</tt>).</t>
                </li>
                <li>
                  <t><strong>Bulk Revocation:</strong> When Bob sells his house, he needs a simple way to revoke all permissions for all devices from his home hub with a single action.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><strong>Gap Analysis:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>What Works (Partially):</strong> Refresh Tokens are well-suited for persistent delegation. Scopes can be defined with high granularity (e.g., <tt>device:bedroom_light:brightness</tt>).</t>
                </li>
                <li>
                  <t><strong>What's Missing (The Gap):</strong>      </t>
                  <ul spacing="normal">
                    <li>
                      <t><strong>"Scope Explosion" and Usability:</strong> In a home with hundreds of devices and capabilities, presenting the user with a list of thousands of scopes to approve is unmanageable. The OAuth consent screen was not designed for this scale.</t>
                    </li>
                    <li>
                      <t><strong>No Standardized Policy Enforcement:</strong> OAuth grants <em>what</em> an agent can do, but not <em>when</em> or <em>under what conditions</em>. The logic to enforce <tt>time=7AM</tt> is outside the protocol and must be custom-built into the agent or the device's resource server, leading to inconsistent and non-interoperable implementations.</t>
                    </li>
                    <li>
                      <t><strong>No Standardized Bulk Revocation:</strong> <xref target="RFC7009"/> is for revoking one token at a time. There is no standard API to "revoke all tokens for user Bob" or "revoke all tokens issued to the home hub client." This is a critical administrative and security gap, forcing reliance on proprietary AS-specific APIs.</t>
                    </li>
                  </ul>
                </li>
              </ul>
            </li>
          </ul>
        </section>
        <section anchor="use-case-3-agent-as-users-full-proxy-to-access-third-party-tools">
          <name>Use Case 3: Agent as User's Full Proxy to Access Third-Party Tools</name>
          <ul spacing="normal">
            <li>
              <t><strong>Scenario Description:</strong> A user authorizes an agent to use a third-party service on their behalf. The service, however, was designed for human interaction and has no built-in awareness of automated agents, leading to potential misuse or policy violations.</t>
            </li>
            <li>
              <t><strong>Example1:</strong>  Charlie authorizes his personal research assistant agent to use his subscription to an academic paper database. The agent, acting as Charlie, begins downloading hundreds of papers for a literature review. The database service detects this high-frequency activity, flags it as a potential DDoS attack or data scraping, and temporarily locks Charlie's account, disrupting both the agent's task and Charlie's own access.</t>
            </li>
            <li>
              <t><strong>Example2:</strong> The database service later adds its own built-in AI features: an AI summarizer that processes users' saved papers. Charlie now faces three distinct classes of caller against the same API surface: his own interactive sessions, the service's built-in AI, and his external research agent. He may be comfortable with the built-in summarizer processing his library but not an external agent, or the reverse. His consent decision for one class says nothing about the others.</t>
            </li>
            <li>
              <t><strong>Authorization Requirements:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>Agent-User Differentiation:</strong> : The third-party service must be able to reliably distinguish between requests coming directly from Charlie and requests made by his agent.</t>
                </li>
                <li>
                  <t><strong>Agent-Specific Policies:</strong> The service needs a way to apply different policies (e.g., stricter rate limits, restricted API access) to the agent without impacting the human user's normal access rights.</t>
                </li>
                <li>
                  <t><strong>Delegated Authority with Constraints:</strong> The authorization given to the agent should be a constrained subset of the user's full permissions (e.g., "can search and download, but no more than 100 papers per hour").</t>
                </li>
                <li>
                  <t><strong>Caller-Class Differentiation:</strong> Beyond distinguishing the agent from its user, the service must be able to distinguish among classes of caller (at minimum the interactive human session, the application's own platform-native AI, and external user-delegated agents) in a way the caller cannot self-select.</t>
                </li>
                <li>
                  <t><strong>Independent Per-Class Consent:</strong> The user must be able to grant or deny consent for each caller class independently, with no inheritance between classes: consent for one class must not imply consent for any other.</t>
                </li>
                <li>
                  <t><strong>An Attachment Point for Internal-AI Consent:</strong> The application's own AI features typically never traverse the authorization layer at all, so there is currently nothing to attach a consent decision to for that class.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><strong>Gap Analysis:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>What (partially) works:</strong>  OAuth allows a user to delegate access to a client (the agent). The scope parameter can limit which APIs the agent can call.      </t>
                  <ul spacing="normal">
                    <li>
                      <t><strong>What Works (Partially):</strong> OAuth allows a user to delegate access to a client (the agent). The <tt>scope</tt> parameter can limit which APIs the agent can call.</t>
                    </li>
                  </ul>
                </li>
                <li>
                  <t><strong>What's Missing (The Gap):</strong>      </t>
                  <ul spacing="normal">
                    <li>
                      <t><strong>No Standard Agent Identifier:</strong> There is no standard OAuth claim or parameter that explicitly signals "this request is from an automated agent." Resource servers are left to guess based on non-standard signals like User-Agent strings or unusual traffic patterns.</t>
                    </li>
                    <li>
                      <t><strong>Inability to Express Constraints:</strong> The standard <tt>scope</tt> mechanism is binary (permission is granted or not). It cannot express or enforce nuanced constraints like rate limits, data volume caps, or time-of-day restrictions as part of the authorization grant itself.</t>
                    </li>
                    <li>
                      <t><strong>Confused Deputy Risk:</strong> Without clear differentiation, the service provider cannot tell if high-volume activity is malicious (account takeover) or a legitimate but overly aggressive agent. Their only recourse is often to block the user's account entirely.</t>
                    </li>
                    <li>
                      <t><strong>No Standard Caller-Class Representation:</strong> Beyond the human-versus-agent distinction, there is no standard representation of a caller class, and no standard way to express consent that is evaluated per class without inheritance between classes.</t>
                    </li>
                    <li>
                      <t><strong>Internal AI Is Invisible to Authorization:</strong> Because the platform's own AI typically operates inside the application boundary, no standard consent mechanism applies to it at all, leaving users no way to express "external agents I delegate may process my data, but the platform's AI may not," or the reverse.</t>
                    </li>
                  </ul>
                </li>
              </ul>
            </li>
          </ul>
        </section>
        <section anchor="use-case-4-agent-as-users-proxy-to-access-operating-system-resources">
          <name>Use Case 4: Agent as User's Proxy to Access Operating System Resources</name>
          <ul spacing="normal">
            <li>
              <t><strong>Scenario Description:</strong> An agent running on a user's device (e.g., a laptop or smartphone) needs to perform tasks that require access to local resources like files, applications, or system settings.</t>
            </li>
            <li>
              <t><strong>Example:</strong> Diana asks her desktop agent, <em>"Clean up my downloads folder and free up disk space."</em> To do this, the agent needs permission to read and delete files within <tt>/home/diana/downloads</tt>. However, to be "helpful," the agent might also try to clear system-wide caches, which requires elevated, system-level permissions.</t>
            </li>
            <li>
              <t><strong>Authorization Requirements:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>Fine-Grained Resource Access:</strong> The agent should be granted access only to the specific files or settings needed for a task (e.g., a single folder), not the user's entire home directory or full system access.</t>
                </li>
                <li>
                  <t><strong>Task-Scoped Permissions:</strong> Permissions should be granted for the duration of a specific task ("clean downloads folder") and automatically revoked upon completion.</t>
                </li>
                <li>
                  <t><strong>Secure Privilege Escalation:</strong> If a task requires elevated permissions, there must be a secure, user-approved mechanism for the agent to request them just-in-time, rather than running with high privileges constantly.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><strong>Gap Analysis:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>What Works (Partially):</strong> Modern operating systems have their own permission models (e.g., app sandboxing, runtime permission prompts).</t>
                </li>
                <li>
                  <t><strong>What's Missing (The Gap):</strong>
                  </t>
                  <ul spacing="normal">
                    <li>
                      <t><strong>Architectural Mismatch:</strong> OAuth is a framework for network-based delegated authorization. It is not designed to manage local, process-level OS permissions. There is a fundamental mismatch between the two models.</t>
                    </li>
                    <li>
                      <t><strong>Lack of a Standard Bridge:</strong> There is no standard protocol to connect an agent's high-level intent (often determined in the cloud) to a secure, fine-grained grant of local OS permissions on the device.</t>
                    </li>
                    <li>
                      <t><strong>Over-Privileging by Default:</strong> Due to the lack of a standard bridge, developers often resort to a dangerous workaround: the agent's local component is installed with broad, persistent permissions (e.g., running with the user's full rights or even as a system service). This completely bypasses the principle of least privilege and creates a significant security risk.</t>
                    </li>
                  </ul>
                </li>
              </ul>
            </li>
          </ul>
        </section>
        <section anchor="use-case-5-first-connection-to-a-service-with-no-authorization-front-channel">
          <name>Use Case 5: First Connection to a Service with No Authorization Front Channel</name>
          <ul spacing="normal">
            <li>
              <t><strong>Scenario Description:</strong> Scenario Description: A user wants their agent to access a service that has no authorization server relationship, its own or a delegated one, and exposes no browser-facing authorization endpoint. The agent runs in a headless or remote environment with no co-located browser. Neither side can present the front channel that existing flows assume.</t>
            </li>
            <li>
              <t><strong>Example:</strong> Dana subscribes to a note-taking service that exposes a plain REST API with no authorization server and no browser-facing authorization endpoint, as is common for services and MCP servers that predate or do not implement an authorization framework. She wants her personal assistant agent, which runs on a cloud host, to file notes for her. To make the first connection, Dana needs to:
1. Grant the agent scoped access (notes.write, but not account.manage).
2. Set a lifetime for that access and retain the ability to revoke it.
3. Get the resulting credential to the agent, which has no browser and cannot complete a redirect-based flow.</t>
            </li>
          </ul>
          <t>Today her only practical option is to copy a static API key into the agent's environment variables: long-lived, all-or-nothing, and invisible to her after setup.</t>
          <ul spacing="normal">
            <li>
              <t><strong>Authorization Requirements:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>Front-Channel-Free Bootstrapping:</strong> The first-connection grant must be possible when neither the service nor the agent can present a browser-based interaction channel.</t>
                </li>
                <li>
                  <t><strong>User-Authored Grant:</strong> The user, not the agent, needs a way to initiate the grant and set its scopes and lifetime, since there is no authorization request for the agent to redirect her to.</t>
                </li>
                <li>
                  <t><strong>Scoped, Revocable Credential:</strong> The resulting credential must carry a constrained scope and lifetime and remain revocable by the user, in contrast to the static API key it replaces.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><strong>Gap Analysis:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>What Works (Partially):</strong> The Device Authorization Grant [RFC8628] removes the co-located browser requirement on the client side. Static API keys work operationally, which is why they are the de facto practice.</t>
                </li>
                <li>
                  <t><strong>What's Missing (The Gap):</strong></t>
                </li>
                <li>
                  <t><strong>A verification page is still assumed:</strong> [RFC8628] presumes an authorization server with a browser-facing verification page, and the client initiates the request and proposes the scopes. It does not cover the case where no such page exists because the service has no front channel at all.</t>
                </li>
                <li>
                  <t><strong>No standard first-connection grant:</strong> There is no standardized way for the user to grant scoped, revocable access and for the agent to obtain the resulting credential when no front channel exists on either side. This precedes the flows in the existing use cases; Use Case 1's gap analysis, for example, notes that the Authorization Code flow can obtain the initial permissions, which assumes that front channel is available.</t>
                </li>
                <li>
                  <t><strong>The workaround is the anti-pattern:</strong> Environment-variable API keys are long-lived, over-broad, and invisible to the user after setup; these are the same over-privileging properties Section 5 warns against.</t>
                </li>
              </ul>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="category-2-enterprise-business-process-scenarios">
        <name>Category 2: Enterprise &amp; Business Process Scenarios</name>
        <section anchor="authorization-requirement-summary-1">
          <name>Authorization Requirement Summary</name>
          <t>The enterprise and business-process use cases share several recurring authorization requirements, although the form of each requirement depends on the workflow structure and trust boundaries involved.</t>
          <table>
            <thead>
              <tr>
                <th align="left">Requirement Theme</th>
                <th align="left">Use Cases and Forms</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">
                  <strong>Constrained Delegated Authority</strong></td>
                <td align="left">
                  <strong>UC6:</strong> least privilege at each step; <strong>UC7:</strong> authority partitioned by branch; <strong>UC8:</strong> domain- and operation-specific permissions; <strong>UC9:</strong> scoped delegation to sub-providers and tenants; <strong>UC10:</strong> attenuation at each delegation hop</td>
              </tr>
              <tr>
                <td align="left">
                  <strong>Verifiable Delegation Provenance</strong></td>
                <td align="left">
                  <strong>UC6:</strong> verification of the multi-hop authorization path; <strong>UC8:</strong> verification of the Registrant--Registrar--Registry delegation; <strong>UC10:</strong> verification of attenuated authority and the represented principal across organizations</td>
              </tr>
              <tr>
                <td align="left">
                  <strong>Common Task Identifier Across Hops</strong></td>
                <td align="left">
                  <strong>UC6:</strong> common <tt>claim_id</tt>; <strong>UC8:</strong> common audit context identifier across agent hops</td>
              </tr>
              <tr>
                <td align="left">
                  <strong>Revocation &amp; Authorization Lifecycle</strong></td>
                <td align="left">
                  <strong>UC7:</strong> termination of task-group authority; <strong>UC8:</strong> task-specific revocation; <strong>UC10:</strong> revocation with bounded staleness</td>
              </tr>
              <tr>
                <td align="left">
                  <strong>Cross-Domain Authorization</strong></td>
                <td align="left">
                  <strong>UC9:</strong> authorization across sub-provider administrative domains; <strong>UC10:</strong> authorization between independently administered organizations</td>
              </tr>
            </tbody>
          </table>
          <t>The summary includes only authorization requirements that recur across multiple use cases. Use-case-specific requirements or gaps remain with the individual scenarios, such as data-subject authorization and execution-layer evidence in UC6, aggregate constraints and late-bound members in UC7, the standardized representation of a cross-agent audit identifier in UC8, batched authorization in UC9, and stranger verifiability in UC10.</t>
        </section>
        <section anchor="use-case-6-complex-business-process-automation">
          <name>Use Case 6: Complex Business Process Automation</name>
          <ul spacing="normal">
            <li>
              <t><strong>Scenario Description:</strong> A task is passed through a chain of specialized agents, each performing one step of a larger business process.</t>
            </li>
            <li>
              <t><strong>Example:</strong> An automated insurance claim process:
              </t>
              <ol spacing="normal" type="1"><li>
                  <t><strong>Agent A (Intake):</strong> Receives a claim from a customer and is authorized to read the customer's policy. It passes the claim to the next agent.</t>
                </li>
                <li>
                  <t><strong>Agent B (Verification):</strong> Receives the claim from Agent A. It is authorized to access external databases to verify the details of the incident. It then passes the verified claim to Agent C.</t>
                </li>
                <li>
                  <t><strong>Agent C (Adjudication):</strong> Receives the verified claim from Agent B. It is authorized to run a risk assessment and approve or deny the claim. If approved, it delegates the final action to Agent D.</t>
                </li>
                <li>
                  <t><strong>Agent D (Payment):</strong> Receives the approved claim from Agent C. It is authorized <em>only</em> to execute a payment to the customer's bank account for the approved amount.</t>
                </li>
              </ol>
            </li>
            <li>
              <t><strong>Authorization Requirements:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>Verifiable Delegation Chain:</strong> The final agent (Payment Agent D) and the resource server (the bank's API) must be able to cryptographically verify the entire authorization path: <tt>Customer -&gt; Agent A -&gt; Agent B -&gt; Agent C -&gt; Agent D</tt>.</t>
                </li>
                <li>
                  <t><strong>Principle of Least Privilege at Each Step:</strong> Agent B should have no payment authority, and Agent D should have no access to the customer's policy details. The permissions must be strictly constrained at each step in the chain.</t>
                </li>
                <li>
                  <t><strong>Auditable Context:</strong> The entire process must be tied to a single, auditable <tt>claim_id</tt> that is securely passed along the chain.</t>
                </li>
                <li>
                  <t><strong>Data Subject:</strong> Where an agent accesses data describing a Data Subject who is not the Resource Owner, the authorization evidence MUST make the third-party access legible as such, and the catalogue MUST name whose authority permits it.</t>
                </li>
                <li>
                  <t><strong>Execution-Layer Evidence for Final Action:</strong> The final payment action by Agent D must not only be authorized by the delegation chain (Grant-Layer Authority) but must also generate verifiable Execution-Layer Evidence. This evidence must bind the specific payment details (amount, recipient) to the full, verifiable delegation chain and the original claim_id, creating an undeniable record that the specific transaction was legitimate and explicitly sanctioned.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><strong>Gap Analysis:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>What Works (Partially):</strong> OAuth 2.0 Token Exchange <xref target="RFC8693"/> introduces the <tt>act</tt> (actor) claim, which provides a primitive to show that one agent is acting on behalf of another. This is a foundational building block.</t>
                </li>
                <li>
                  <t><strong>What's Missing (The Gap):</strong>
                  </t>
                  <ul spacing="normal">
                    <li>
                      <t><strong>No Native Support for Chains:</strong> A standard OAuth token represents a simple, two-party delegation (User -&gt; Agent A). It cannot natively represent a multi-step chain (<tt>User -&gt; A -&gt; B -&gt; C</tt>). While the <tt>act</tt> claim from <xref target="RFC8693"/> helps, there is no standard for how to nest these claims to create a verifiable, multi-hop chain. This is a major architectural gap.</t>
                    </li>
                    <li>
                      <t><strong>Lack of Standardized Context Passing:</strong> There is no standard field in an OAuth token to carry the <tt>claim_id</tt> securely through the process. Developers resort to custom claims in a JWT, which harms interoperability.</t>
                    </li>
                  </ul>
                </li>
              </ul>
            </li>
          </ul>
        </section>
        <section anchor="use-case-7-coordinated-task-group">
          <name>Use Case 7: Coordinated Task Group</name>
          <ul spacing="normal">
            <li>
              <t><strong>Scenario Description:</strong> A coordinating agent decomposes a user's request into subtasks and delegates them to multiple specialized agents. Unlike a delegation chain (Use Case 6), authorization in a task group may need to be partitioned across sibling branches, while some task-level constraints and lifecycle state remain shared across the group <xref target="I-D.song-oauth-ai-agent-collaborate-authz"/>.</t>
            </li>
            <li>
              <t><strong>Example 1 -- Partitioned Authorization:</strong> A payment assistant coordinates agents from multiple banks to compare promotional discounts for a payment. Each bank agent should receive only the permissions and authorization context required for its own bank. Permissions or sensitive context assigned to one branch should not automatically be available to another branch.</t>
            </li>
            <li>
              <t><strong>Example 2 -- Shared Task Constraint:</strong> A user asks a travel assistant to arrange a business trip and authorizes a total spend of at most 100 units for the trip. The assistant delegates flight booking to a flight agent and hotel booking to a hotel agent operating in separately administered domains. The user has not fixed how the limit is divided between the two. Each delegated authorization may be valid independently, while their combined use may exceed the task-level limit.</t>
            </li>
            <li>
              <t><strong>Example 3 -- Late-Bound Members:</strong> A health assistant decomposes a user's request into health-data collection, status prediction, and advice generation. Some sub-agents may be selected upfront, while others may be selected during execution as intermediate results determine which additional capabilities are needed.</t>
            </li>
            <li>
              <t><strong>Authorization Requirements:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>Branch-Level Partitioning:</strong> The authorization framework must support partitioning permissions and relevant authorization context among members according to their subtasks and resource domains.</t>
                </li>
                <li>
                  <t><strong>Task-Level Aggregate Constraints:</strong> The authorization framework must support binding multiple delegation branches to constraints that apply to and are consumed by the task as a whole.</t>
                </li>
                <li>
                  <t><strong>Late Binding of Members:</strong> Members selected during task execution must be able to obtain appropriately constrained authority under the existing task authorization.</t>
                </li>
                <li>
                  <t><strong>Group Lifecycle:</strong> Authority associated with the task group must be able to be terminated as a unit when the task ends or its authorization is revoked.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><strong>Gap Analysis:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>What Works (Partially):</strong> Existing mechanisms address several parts of this problem. <xref target="I-D.song-oauth-ai-agent-collaborate-authz"/> considers centralized authorization for static and dynamic task groups. <xref target="I-D.ni-oauth-batch-authorization-delegation"/> allows a client to express how permissions and authorization context are partitioned across multiple actors in an authorization request, including scoping the permitted actor per <tt>authorization_details</tt> entry. Token Exchange <xref target="RFC8693"/>, Identity Chaining <xref target="I-D.ietf-oauth-identity-chaining"/>, and Transaction Token Chaining <xref target="I-D.fletcher-transaction-token-chaining-profile"/> provide building blocks for propagating delegated authority and context along individual delegation chains.</t>
                </li>
                <li>
                  <t><strong>What's Missing (The Gap):</strong>
                  </t>
                  <ul spacing="normal">
                    <li>
                      <t><strong>No Common Task-Group Authorization Model:</strong> Existing mechanisms can authorize or constrain individual members, but do not define a common interoperable binding that relates independently delegated authorities to the same task group, including late-bound members and a common lifecycle.</t>
                    </li>
                    <li>
                      <t><strong>No Shared Authorization State Across Branches:</strong> Per-member partitioning does not address constraints consumed jointly by multiple branches. Across separately administered domains, there is no standard way for delegated authorizations to reference and consistently enforce the same task-level aggregate authorization state.</t>
                    </li>
                  </ul>
                </li>
              </ul>
            </li>
          </ul>
        </section>
        <section anchor="use-case-8-automated-dnssec-ds-record-maintenance-agent">
          <name>Use Case 8: Automated DNSSEC DS Record Maintenance Agent</name>
          <ul spacing="normal">
            <li>
              <t><strong>Scenario Description:</strong> This case follows the multi-agent RRR (Registrant-Registrar-Registry) model defined in <tt>draft-ietf-dnsop-ds-automation-09</tt>. A corporate domain owner deploys chained agents to fully automate DS record updates during DNSSEC KSK rollovers, zone bootstrapping, and zone deletion, relying on CDS/CDNSKEY signals between child authoritative zones and parent registry systems.</t>
            </li>
            <li>
              <t><strong>Example:</strong> The whole workflow runs unattended under a one-time delegated permission from the domain registrant, forming a delegation chain: <strong>Registrant --&gt; Registrar Agent --&gt; Registry Agent.</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>Zone Agent:</strong> Publishes consistent CDS/CDNSKEY records on all name servers after key rollover.</t>
                </li>
                <li>
                  <t><strong>Registrar Agent:</strong> Pulls and validates CDS data, forwards DS update requests to the registry.</t>
                </li>
                <li>
                  <t><strong>Registry Agent:</strong> Applies DS records to the parent zone and sends operation notifications.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><strong>Authorization Requirements:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t>Cryptographically verifiable multi-hop delegation chain for a full audit trail.</t>
                </li>
                <li>
                  <t>Fine-grained permission limited to a fixed set of domains, only allowing DS updating without modifying other DNS records.</t>
                </li>
                <li>
                  <t>Support task-specific revocation: revoke all DS automation permissions without affecting other agent workflows.</t>
                </li>
                <li>
                  <t>Standard audit context identifier passed across all agent hops for compliance logging.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><strong>Gap Analysis:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>What Works (Partially):</strong> Client Credentials can assign identities to registry/registrar agents. RFC 8693 token exchange supports simple single-hop agent delegation.</t>
                </li>
                <li>
                  <t>**What's Missing (The Gap)      </t>
                  <ul spacing="normal">
                    <li>
                      <t>**Current DS automation does not use OAuth. OAuth only supports two-party delegation and lacks standard multi-hop RRR delegation syntax; proprietary JWT claims hurt interoperability.</t>
                    </li>
                    <li>
                      <t>**OAuth has no standardized task/bulk revocation. Securing DS automation via OAuth would require repetitive single-token revocation in incidents.</t>
                    </li>
                    <li>
                      <t>**No reserved OAuth JWT claim for cross-agent audit IDs, breaking consistent compliance logging for DS automation.</t>
                    </li>
                  </ul>
                </li>
              </ul>
            </li>
          </ul>
        </section>
        <section anchor="use-case-9-managed-services">
          <name>Use Case 9: Managed Services</name>
          <ul spacing="normal">
            <li>
              <t><strong>Scenario Description:</strong> The managed service model refers to an integrated end-to-end managed service solution delivered by a prime service integrator through the aggregation of infrastructure and services from multiple sub-providers. End users interact with a single, unified resource platform instead of multiple separate sub-modules. However, coordinating resources across different administrative domains introduces complex authorization challenges.</t>
            </li>
            <li>
              <t><strong>Example:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t>Telecom operator delivers a managed global secure SD-WAN orchestration service, which requires coordination of many localized regional telecom operators/ISPs and security service providers.</t>
                </li>
                <li>
                  <t>Telecom operator delivers a managed smart home + security solution through a home-hub, which integrates controls over IPTV, streaming services, smart IoT (security cameras) etc.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><strong>Authorization Requirements:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>Cross-domain Authorization:</strong> The fast provisioning of an integrated service (take SD-WAN as an example) requires acquiring authorization from different service sub-providers in their respective administrative domains.</t>
                </li>
                <li>
                  <t><strong>Batched Authorization:</strong> The fast provisioning of the integrated service requires requesting a batch of authorizations from different service sub-providers.</t>
                </li>
                <li>
                  <t><strong>Delegated Authorization:</strong>
                  </t>
                  <ul spacing="normal">
                    <li>
                      <t>Prime service integrator may need to conditionally delegate network configuration modification privileges for specific branches to the on-site O&amp;M teams of local sub-providers. This delegation MAY be hierarchical.</t>
                    </li>
                    <li>
                      <t>End-users are often times tenants that only have renting privileges instead of ownership rights. Thus technically the prime service integrator is delegating the access privileges to the end-user to access each modular sub-service.</t>
                    </li>
                  </ul>
                </li>
              </ul>
            </li>
            <li>
              <t><strong>Gap Analysis:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>What Works:</strong>
                  </t>
                  <ul spacing="normal">
                    <li>
                      <t><strong>Cross-domain Single Authorization:</strong> The OAuth allows cross-domain authorization through <xref target="RFC7523"/> OAuth 2.0 authorization grant and <xref target="I-D.ietf-oauth-identity-chaining"/> Identity Chaining. But it MUST require one access token at a time.</t>
                    </li>
                    <li>
                      <t><strong>Single Domain Workflow:</strong> The OAuth allows workflow orchestration through <xref target="I-D.ietf-oauth-transaction-tokens"/> Transaction Token. It only allows workflow inside one trust domain.</t>
                    </li>
                  </ul>
                </li>
                <li>
                  <t><strong>What's Missing (The Gap):</strong>
                  </t>
                  <ul spacing="normal">
                    <li>
                      <t><strong>Batched Authorization:</strong> How to request access permissions to a batch of resources from the user at once, while precisely delegating fine-grained privileges to the respective sub-agent responsible for executing each sub-task.</t>
                    </li>
                    <li>
                      <t><strong>Cross-domain Workflow:</strong> How to request access permissions across different trust domains, while ensuring secure propagation of important contextual information (claims, caller identity, rich authorization contexts...).</t>
                    </li>
                  </ul>
                </li>
              </ul>
            </li>
          </ul>
        </section>
        <section anchor="use-case-10-cross-organizational-delegation-between-fully-provisioned-organizations">
          <name>Use Case 10: Cross-Organizational Delegation Between Fully-Provisioned Organizations</name>
          <ul spacing="normal">
            <li>
              <t><strong>Scenario Description:</strong> An agent operated by Organization A must invoke a service operated by Organization B. Each organization runs its own complete trust infrastructure: its own authorization server, identity provider, and workload identity systems. No trust relationship, federation agreement, key exchange, or communication channel exists between them before the first request, and none can be assumed: the interaction may be first contact. This is the ordinary condition of open agent-to-tool ecosystems (e.g., MCP tool servers, agent-mediated commerce) once agents cross organizational boundaries.</t>
            </li>
            <li>
              <t><strong>Example:</strong> A manufacturer's procurement agent, acting on behalf of a named employee, invokes a supplier's quoting and ordering API. The supplier has never onboarded the manufacturer. At request time the supplier's service must determine: (a) that the calling agent is operated by an identifiable, accountable organization; (b) that the agent holds authority for this specific operation, delegated through possibly several intermediate agents, each of which may only have narrowed it; (c) that the agent acts on behalf of the claimed human principal; and (d) that none of that authority has been revoked - all within its normal request latency, and without a synchronous callback to the manufacturer's infrastructure, whose availability and reachability it does not control.</t>
            </li>
            <li>
              <t><strong>Authorization Requirements:</strong></t>
            </li>
            <li>
              <t><strong>Stranger Verifiability:</strong> The receiving organization must be able to verify authority rooted in the sending organization using generally available infrastructure that both parties joined independently, with no interaction-specific bilateral arrangement (no pre-exchanged keys, no shared authorization server, no federation onboarding step).</t>
            </li>
            <li>
              <t><strong>Verifiable Attenuated Delegation:</strong> Presented authority may have passed through multiple agents. Each hop may only narrow it (permitted operations, resource scope, validity), and the receiver must be able to verify both the narrowing and the invariance of the on-behalf-of principal from the presented material itself, rather than by trusting the sending organization's internal policy.</t>
            </li>
            <li>
              <t><strong>Local Decision with Bounded Revocation Staleness:</strong> The receiver's authorization decision must complete without a runtime call to the sending organization, while revocation of the sender's authority must still reach the receiver with an explicit, bounded staleness that the receiver can enforce and fail safe on.</t>
            </li>
            <li>
              <t><strong>Gap Analysis:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>What's Missing (The Gap):</strong>
                  </t>
                  <ul spacing="normal">
                    <li>
                      <t><strong>Pre-Established Trust Assumption:</strong> Existing cross-domain mechanisms presuppose arranged trust. OAuth Identity Chaining, for example, requires the participating authorization servers to have pre-established trust and exchanged key material (Section 2.1) - precisely what a first-contact interaction lacks by definition.</t>
                    </li>
                    <li>
                      <t><strong>Runtime Coupling to Foreign Infrastructure:</strong> Token-exchange and challenge-based patterns place the sending side's authorization server (or one federated with it) in the request path, making the availability, latency, and reachability of another organization's infrastructure a precondition for the receiver's own service.</t>
                    </li>
                    <li>
                      <t><strong>Delegation Opacity at the Receiver:</strong> Standard access tokens do not allow a receiving organization to independently verify multi-hop narrowing or the invariance of the acting-for principal across intermediaries; the receiver is asked to trust issuer-side policy it cannot inspect.</t>
                    </li>
                  </ul>
                </li>
              </ul>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="category-3-security-administrative-scenarios">
        <name>Category 3: Security &amp; Administrative Scenarios</name>
        <section anchor="use-case-11-automated-security-incident-response">
          <name>Use Case 11: Automated Security Incident Response</name>
          <ul spacing="normal">
            <li>
              <t><strong>Scenario Description:</strong> A security agent detects a security threat and must take immediate, automated action to contain it.</t>
            </li>
            <li>
              <t><strong>Example:</strong> A security system detects that an employee's laptop has been compromised by malware. An automated security agent is triggered to:
              </t>
              <ol spacing="normal" type="1"><li>
                  <t>Immediately revoke all active login sessions for that employee across all company applications (e.g., email, code repository, HR system).</t>
                </li>
                <li>
                  <t>Isolate the compromised laptop from the corporate network.</t>
                </li>
                <li>
                  <t>Temporarily suspend the user's account to prevent further unauthorized access.</t>
                </li>
              </ol>
            </li>
            <li>
              <t><strong>Authorization Requirements:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>Privileged, System-Level Authority:</strong> The security agent needs broad, pre-approved authority to perform high-impact administrative actions.</t>
                </li>
                <li>
                  <t><strong>Global Token Revocation API:</strong> The agent must be able to make a single API call to the Authorization Server to "immediately revoke all access and refresh tokens associated with user ID <tt>employee-123</tt>."</t>
                </li>
                <li>
                  <t><strong>Non-Repudiable Execution Evidence</strong>: For post-hoc audits and security forensics, simply logging the action is insufficient. A critical requirement is the generation of <strong>durable, non-repudiable, and potentially offline-verifiable evidence</strong> at the moment of execution. This evidence must cryptographically attest to the specific action performed (e.g., "Agent <tt>sec-ops-bot-01</tt> isolated host <tt>laptop-789</tt> at <tt>2024-08-21T10:00:00Z</tt> under policy <tt>POL-456</tt> in response to alert <tt>ALERT-XYZ</tt>"). This formal proof is essential for accountability, especially when an automated agent takes high-risk actions like suspending a user account.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><strong>Gap Analysis:</strong>
              </t>
              <ul spacing="normal">
                <li>
                  <t><strong>What Works (Partially):</strong> The OAuth Client Credentials grant is suitable for giving the security agent its own system-level identity and authority.</t>
                </li>
                <li>
                  <t><strong>What's Missing (The Gap):</strong>
                  </t>
                  <ul spacing="normal">
                    <li>
                      <t><strong>Critically Inadequate Revocation API:</strong> This is the most significant gap for this use case. The one-token-at-a-time revocation endpoint in <xref target="RFC7009"/> is completely insufficient for a security incident. The need to make potentially thousands of individual API calls to revoke tokens is too slow and unreliable during an active attack. The lack of a standardized bulk revocation API is a major operational and security failure point.</t>
                    </li>
                    <li>
                      <t><strong>Absence of a Standard for Verifiable Action Records</strong>: The OAuth framework focuses on granting and validating the <em>authority</em> to perform an action (i.e., possessing a valid token). It does not, however, define a standard mechanism for creating a <strong>durable, cryptographically verifiable record of the action itself</strong> at the moment of execution. In a security context, a simple log entry stating "action performed" is insufficient for high-stakes forensic analysis. What is missing is a formal, non-repudiable piece of evidence that binds the agent's identity, the specific action taken (e.g., "isolate host <tt>laptop-789</tt>"), the policy justification, and the timestamp into a single, verifiable artifact. This gap makes it difficult to construct an undeniable audit trail for automated, high-risk security operations.</t>
                    </li>
                  </ul>
                </li>
              </ul>
            </li>
          </ul>
        </section>
      </section>
    </section>
    <section anchor="analysis-of-existing-oauth-extensions">
      <name>Analysis of Existing OAuth Extensions</name>
      <t>The OAuth 2.0 ecosystem is rich with extensions designed to address security and functionality gaps in the core specification. However, many of these powerful extensions were conceived before the rise of highly autonomous, dynamic, and often ephemeral AI agents. Their design assumptions, therefore, do not always align with the unique challenges presented by agent-centric architectures.</t>
      <t>This section analyzes several key existing extensions and related concepts to evaluate their applicability to agent authorization use cases. For each, we identify its strengths, its limitations in agentic scenarios, and potential directions for evolution.</t>
      <section anchor="rich-authorization-requests-rar-rfc9396">
        <name>Rich Authorization Requests (RAR) <xref target="RFC9396"/></name>
        <ul spacing="normal">
          <li>
            <t><strong>Applicability and Strengths:</strong> RAR represents a significant step beyond simple string-based scopes. It allows clients to request fine-grained, structured, and parameterized permissions. For example, instead of a generic <tt>transaction</tt> scope, a client can request authorization for a specific action like <tt>{"type": "payment", "amount": "50", "currency": "USD", "recipient": "X"}</tt>. This capability is invaluable for creating auditable and least-privilege grants, which is a core requirement for reining in agent capabilities.</t>
          </li>
          <li>
            <t><strong>Limitations in Agentic Scenarios:</strong> The primary limitation of RAR in agentic scenarios is its static nature. RAR defines the <em>structure</em> of a permission, but it assumes the <em>values</em> are known at the time of the authorization request. Autonomous agents often operate with non-deterministic logic; they discover the need for specific actions as they execute a task. An agent planning a picnic might not know the exact cost or booking details for a park shelter until it has already completed several other steps. This makes it difficult to request all necessary, fine-grained permissions upfront. In essence, RAR is a powerful Grant-Layer mechanism for defining the shape of authority. It cannot, by design, capture the user's specific, just-in-time consent for a transaction whose final parameters were only determined at the moment of execution. It describes the authority, not the human decision at runtime.</t>
          </li>
          <li>
            <t><strong>Potential Directions for Evolution:</strong> A potential direction is to evolve RAR or develop a complementary mechanism for "bounded capabilities". This would allow a user to grant an agent a budget or a set of constraints (e.g., "a maximum of $100 for picnic supplies within a 10-mile radius"). The agent could then use this grant to dynamically construct and justify specific RAR-formatted requests at runtime, with the authorization server validating each request against the pre-approved bounds.</t>
          </li>
        </ul>
      </section>
      <section anchor="demonstrating-proof-of-possession-dpop-rfc9449">
        <name>Demonstrating Proof-of-Possession (DPoP) [RFC9449]</name>
        <ul spacing="normal">
          <li>
            <t><strong>Applicability and Strengths:</strong> DPoP enhances security by cryptographically binding access tokens to a specific client's public/private key pair. This effectively prevents token theft and replay attacks, as a stolen token is useless without the corresponding private key. This is a critical security baseline for any system where agents handle sensitive operations.</t>
          </li>
          <li>
            <t><strong>Limitations in Agentic Scenarios:</strong> The challenge arises in highly dynamic agent architectures. DPoP's model assumes a relatively stable client with a persistent key. This assumption breaks down when a primary agent needs to delegate a task to a dynamically created, ephemeral sub-agent, or when an agent migrates between compute environments. Each new instance would require a new token bound to its new key, creating significant overhead and complexity if it requires a full round-trip to the authorization server. DPoP is a critical Grant-Layer security control, binding a token to a client to prove the legitimacy of the actor possessing the authority. However, it says nothing about the legitimacy of the specific action being performed at the Execution Layer or the user's explicit consent for that action.</t>
          </li>
          <li>
            <t><strong>Potential Directions for Evolution:</strong> Future work could explore a "multi-hop DPoP" model. In this model, a parent agent holding a DPoP-bound token could securely derive a new, more constrained token for a sub-agent, binding it to the sub-agent's ephemeral key. This would create a verifiable chain of possession and delegation without requiring constant interaction with the central authorization server, making it more suitable for chained or group agent tasks.</t>
          </li>
        </ul>
      </section>
      <section anchor="client-id-metadata-document-cimd-draft-ietf-oauth-client-metadata">
        <name>Client-ID Metadata Document (CIMD) [draft-ietf-oauth-client-metadata]</name>
        <ul spacing="normal">
          <li>
            <t><strong>Applicability and Strengths:</strong> CIMD (and the broader concept of dynamic client registration) proposes a powerful shift from static, pre-registered clients to dynamic, discoverable ones. By defining <tt>client_id</tt> as a resolvable URI, an Authorization Server can fetch client metadata on-the-fly. This enables "plug-and-play" onboarding for new agents and greatly simplifies the lifecycle management of cryptographic keys by exposing them via a <tt>jwks_uri</tt>.</t>
          </li>
          <li>
            <t><strong>Limitations in Agentic Scenarios:</strong> Despite its flexibility, CIMD's current metadata vocabulary is client-application-centric, not agent-centric.
            </t>
            <ol spacing="normal" type="1"><li>
                <t><strong>Lack of Agent Context:</strong> Standard fields (e.g., <tt>redirect_uris</tt>, <tt>client_name</tt>) fail to describe agent-specific attributes like its level of autonomy, risk profile, or operational policies.</t>
              </li>
              <li>
                <t><strong>Public URI Dependency:</strong> The reliance on a stable, public URI is problematic for ephemeral or internal sub-agents that may not have a persistent, publicly resolvable address.</t>
              </li>
              <li>
                <t><strong>Missing Delegation Traceability:</strong> While CIMD can verify an agent's identity, it does not provide a standard mechanism to describe its lineage or delegation path (i.e., "who created this agent?").</t>
              </li>
            </ol>
          </li>
          <li>
            <t><strong>Potential Directions for Evolution:</strong> To bridge these gaps, CIMD could be extended with:
            </t>
            <ol spacing="normal" type="1"><li>
                <t><strong>Agent-Specific Metadata:</strong> Introduce new fields like <tt>agent_type</tt>, <tt>max_autonomous_budget</tt>, or <tt>human_in_the_loop_policy</tt> to enable better risk assessment by Authorization Servers.</t>
              </li>
              <li>
                <t><strong>Inline or Vouched-For Metadata:</strong> Allow ephemeral agents to present their metadata directly in a request or have it "vouched for" and signed by a trusted parent agent, removing the public URI requirement.</t>
              </li>
              <li>
                <t><strong>Trust Chain Assertions:</strong> Incorporate fields like <tt>parent_agent_id</tt> or integrate concepts from specifications like OpenID Federation to build a verifiable delegation chain.</t>
              </li>
            </ol>
          </li>
        </ul>
      </section>
      <section anchor="transaction-tokens">
        <name>Transaction Tokens</name>
        <ul spacing="normal">
          <li>
            <t><strong>Applicability and Strengths:</strong> This refers to a common architectural pattern, often implemented using JWTs, where initial user context is encoded into a token and propagated through a series of internal microservices. This ensures consistent authorization and context within a trusted security domain.</t>
          </li>
          <li>
            <t><strong>Limitations in Agentic Scenarios:</strong> The fundamental gap is one of trust boundaries. This pattern is designed for use within a single, trusted system. It is ill-suited for multi-hop delegation scenarios involving untrusted third-party agents, as the tokens lack standard mechanisms for permission attenuation (reduction) or enforcement across organizational boundaries.</t>
          </li>
          <li>
            <t><strong>Potential Directions for Evolution:</strong> To be viable in agent ecosystems, this concept would need to evolve into a standardized "Attenuating Agent Token". Such a token would need a formal, interoperable mechanism for a parent agent to reduce permissions before passing it to a child agent, ensuring the child cannot exceed the parent's authority. Furthermore, embedding verifiable proofs of execution could enhance end-to-end auditability.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="summary-of-major-gaps">
      <name>Summary of Major Gaps</name>
      <t>The use cases above highlight several fundamental gaps between the needs of AI agents and the capabilities of the standard OAuth 2.x framework:</t>
      <ol spacing="normal" type="1"><li>
          <t><strong>From 'Pre-Approval' to 'Continuous Dialogue': A Paradigm Shift.</strong> OAuth's model is to get all permissions upfront. Agents need a continuous, interactive authorization model where permissions are granted dynamically and just-in-time as a task evolves from a high-level intent.</t>
        </li>
        <li>
          <t><strong>Lack of a Standardized Interactive Channel.</strong> The framework has no built-in mechanism for an agent to "pause" and securely ask the user for an intermediate decision or to respond to a real-time authorization challenge from a resource server.</t>
        </li>
        <li>
          <t><strong>Inability to Represent Delegation Chains.</strong> Standard tokens cannot securely represent a multi-step delegation chain (<tt>User -&gt; Agent A -&gt; Agent B</tt>). This is a critical blocker for automating complex, multi-agent business processes.</t>
        </li>
        <li>
          <t><strong>Insufficient Revocation Mechanisms.</strong> The single-token revocation API is inadequate. The lack of standardized APIs for task-level and bulk (per-user or per-client) revocation is a major operational and security deficiency.</t>
        </li>
        <li>
          <t><strong>Authorization Is Modeled Per-Client, Not Per-Group.</strong> OAuth has no notion of a set of clients acting as one task group under a single grant: no group membership representation, no admission of late-selected members, and no group-level lifecycle or atomic revocation.</t>
        </li>
        <li>
          <t><strong>The Grant-Layer vs. Execution-Layer Gap:</strong> The existing OAuth framework excels at defining Grant-Layer Authority—what an agent is allowed to do. However, it lacks a standard mechanism for generating Execution-Layer Evidence—a non-repudiable, cryptographic proof of a user's explicit consent for a specific, high-risk action at the moment it occurs. This gap is critical for auditability and dispute resolution, as grant-layer tokens prove potential, not the legitimacy of a specific, executed transaction.</t>
        </li>
      </ol>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>As we design new authorization mechanisms for agents, security must be the primary concern. The autonomy of agents amplifies the risk of any vulnerability.</t>
      <ul spacing="normal">
        <li>
          <t><strong>Risk of Over-Privileging:</strong> The current lack of dynamic authorization tempts developers to request broad, long-lived permissions ("god tokens"), dramatically increasing the damage if an agent is compromised. Future solutions must make it easy to follow the Principle of Least Privilege.</t>
        </li>
        <li>
          <t><strong>Delegation Chain Vulnerabilities:</strong> Without a standard for secure delegation chains, custom implementations are prone to "Confused Deputy" attacks, where an agent is tricked into misusing its authority.</t>
        </li>
        <li>
          <t><strong>Revocation Timeliness:</strong> In a world of powerful, autonomous agents, the ability to instantly and completely revoke all permissions for a compromised user or agent is not a "nice-to-have"; it is an absolute necessity.</t>
        </li>
        <li>
          <t><strong>Non-Repudiation:</strong> For enterprise and B2B scenarios, actions taken by agents must be cryptographically auditable and non-repudiable, creating a strong digital paper trail.</t>
        </li>
        <li>
          <t><strong>Coordinator as a Single Point of Authority:</strong> In coordinated task groups, the leading agent both requests authorization on behalf of all members and assigns their tasks. If the coordinator is compromised, the blast radius covers the entire group; its authority to act as an applier for others must therefore be separately authenticated, authorized, and auditable.</t>
        </li>
        <li>
          <t><strong>Durable Record of the Authorization Grant:</strong> While agent actions must be non-repudiable, this is insufficient without a durable record of the authorization grant event itself. This record must capture the identity of the authorizing principal, the exact scopes granted, the time of the grant, and the policy version in effect, which disappear when a grant ends, this event record must persist to provide a verifiable source of truth for post-hoc audits and to answer the critical question: "What did the human actually authorize?".</t>
        </li>
        <li>
          <t><strong>Agent-Operable Consent Surfaces:</strong> AI agents can click "Approve" buttons themselves, so a simple click is no longer proof of human consent. We need approval methods that agents can't fake, like a confirmation on your phone or a fingerprint scan.</t>
        </li>
      </ul>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>The analysis and use cases in this document are derived from observations of emerging AI agent technologies and their application trends across various industries. Thanks are due to the OAuth community for their past and ongoing efforts in building a secure and interoperable authorization framework, upon which this work is built.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-informative-references">
      <name>Informative References</name>
      <reference anchor="RFC2119">
        <front>
          <title>Key words for use in RFCs to Indicate Requirement Levels</title>
          <author fullname="S. Bradner" initials="S." surname="Bradner"/>
          <date month="March" year="1997"/>
          <abstract>
            <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="2119"/>
        <seriesInfo name="DOI" value="10.17487/RFC2119"/>
      </reference>
      <reference anchor="RFC8174">
        <front>
          <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
          <author fullname="B. Leiba" initials="B." surname="Leiba"/>
          <date month="May" year="2017"/>
          <abstract>
            <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="8174"/>
        <seriesInfo name="DOI" value="10.17487/RFC8174"/>
      </reference>
      <reference anchor="RFC7009">
        <front>
          <title>OAuth 2.0 Token Revocation</title>
          <author fullname="T. Lodderstedt" initials="T." role="editor" surname="Lodderstedt"/>
          <author fullname="S. Dronia" initials="S." surname="Dronia"/>
          <author fullname="M. Scurtescu" initials="M." surname="Scurtescu"/>
          <date month="August" year="2013"/>
          <abstract>
            <t>This document proposes an additional endpoint for OAuth authorization servers, which allows clients to notify the authorization server that a previously obtained refresh or access token is no longer needed. This allows the authorization server to clean up security credentials. A revocation request will invalidate the actual token and, if applicable, other tokens based on the same authorization grant.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7009"/>
        <seriesInfo name="DOI" value="10.17487/RFC7009"/>
      </reference>
      <reference anchor="RFC6749">
        <front>
          <title>The OAuth 2.0 Authorization Framework</title>
          <author fullname="D. Hardt" initials="D." role="editor" surname="Hardt"/>
          <date month="October" year="2012"/>
          <abstract>
            <t>The OAuth 2.0 authorization framework enables a third-party application to obtain limited access to an HTTP service, either on behalf of a resource owner by orchestrating an approval interaction between the resource owner and the HTTP service, or by allowing the third-party application to obtain access on its own behalf. This specification replaces and obsoletes the OAuth 1.0 protocol described in RFC 5849. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="6749"/>
        <seriesInfo name="DOI" value="10.17487/RFC6749"/>
      </reference>
      <reference anchor="RFC7523">
        <front>
          <title>JSON Web Token (JWT) Profile for OAuth 2.0 Client Authentication and Authorization Grants</title>
          <author fullname="M. Jones" initials="M." surname="Jones"/>
          <author fullname="B. Campbell" initials="B." surname="Campbell"/>
          <author fullname="C. Mortimore" initials="C." surname="Mortimore"/>
          <date month="May" year="2015"/>
          <abstract>
            <t>This specification defines the use of a JSON Web Token (JWT) Bearer Token as a means for requesting an OAuth 2.0 access token as well as for client authentication.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7523"/>
        <seriesInfo name="DOI" value="10.17487/RFC7523"/>
      </reference>
      <reference anchor="RFC8693">
        <front>
          <title>OAuth 2.0 Token Exchange</title>
          <author fullname="M. Jones" initials="M." surname="Jones"/>
          <author fullname="A. Nadalin" initials="A." surname="Nadalin"/>
          <author fullname="B. Campbell" initials="B." role="editor" surname="Campbell"/>
          <author fullname="J. Bradley" initials="J." surname="Bradley"/>
          <author fullname="C. Mortimore" initials="C." surname="Mortimore"/>
          <date month="January" year="2020"/>
          <abstract>
            <t>This specification defines a protocol for an HTTP- and JSON-based Security Token Service (STS) by defining how to request and obtain security tokens from OAuth 2.0 authorization servers, including security tokens employing impersonation and delegation.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8693"/>
        <seriesInfo name="DOI" value="10.17487/RFC8693"/>
      </reference>
      <reference anchor="RFC9396">
        <front>
          <title>OAuth 2.0 Rich Authorization Requests</title>
          <author fullname="T. Lodderstedt" initials="T." surname="Lodderstedt"/>
          <author fullname="J. Richer" initials="J." surname="Richer"/>
          <author fullname="B. Campbell" initials="B." surname="Campbell"/>
          <date month="May" year="2023"/>
          <abstract>
            <t>This document specifies a new parameter authorization_details that is used to carry fine-grained authorization data in OAuth messages.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9396"/>
        <seriesInfo name="DOI" value="10.17487/RFC9396"/>
      </reference>
      <reference anchor="I-D.song-oauth-ai-agent-collaborate-authz">
        <front>
          <title>OAuth2.0 Extension for Multi-AI Agent Collaboration</title>
          <author fullname="Yurong Song" initials="Y." surname="Song">
            <organization>Huawei</organization>
          </author>
          <author fullname="LUN LI" initials="L." surname="Lun">
            <organization>Huawei</organization>
          </author>
          <author fullname="Yuning Jiang" initials="Y." surname="Jiang">
            <organization>Huawei Singapore</organization>
          </author>
          <author fullname="Faye Liu" initials="F." surname="Liu">
            <organization>Huawei Singapore</organization>
          </author>
          <date day="30" month="June" year="2026"/>
          <abstract>
            <t>   This method extends OAuth 2.0 by adding fields to token and message
   flows, enabling sub-agents to act as a task group.  It simplifies
   authorization for task groups, avoids repeated interactions between
   sub-agents and the authorization server, and bounds the authority
   delegated to the group and to each member while maintaining
   compatibility with existing OAuth 2.0 workflows.


            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-song-oauth-ai-agent-collaborate-authz-02"/>
      </reference>
      <reference anchor="I-D.ni-oauth-batch-authorization-delegation">
        <front>
          <title>Batch Authorization Delegation</title>
          <author fullname="Ni Yuan" initials="N." surname="Yuan">
            <organization>Huawei</organization>
          </author>
          <author fullname="Peter Chunchi Liu" initials="P. C." surname="Liu">
            <organization>Huawei</organization>
          </author>
          <date day="3" month="July" year="2026"/>
          <abstract>
            <t>   This document describes a mechanism for Batch Authorization
   Delegation, which enables a batch of fine-grained, actor-bound
   permissions in a single request and securely delegates them to
   multiple collaborating actors.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ni-oauth-batch-authorization-delegation-00"/>
      </reference>
      <reference anchor="I-D.ietf-oauth-identity-chaining">
        <front>
          <title>OAuth Identity and Authorization Chaining Across Domains</title>
          <author fullname="Arndt Schwenkschuster" initials="A." surname="Schwenkschuster">
            <organization>Defakto Security</organization>
          </author>
          <author fullname="Pieter Kasselman" initials="P." surname="Kasselman">
            <organization>Defakto Security</organization>
          </author>
          <author fullname="Kelley Burgin" initials="K." surname="Burgin">
            <organization>MITRE</organization>
          </author>
          <author fullname="Michael J. Jenkins" initials="M. J." surname="Jenkins">
            <organization>NSA-CCSS</organization>
          </author>
          <author fullname="Brian Campbell" initials="B." surname="Campbell">
            <organization>Ping Identity</organization>
          </author>
          <author fullname="Aaron Parecki" initials="A." surname="Parecki">
            <organization>Okta</organization>
          </author>
          <date day="19" month="July" year="2026"/>
          <abstract>
            <t>   This specification describes a mechanism for preserving identity and
   authorization information across trust domains that use the OAuth 2.0
   Framework.  A JSON Web Token (JWT) authorization grant, obtained
   through an intra-domain OAuth 2.0 Token Exchange, facilitates the
   cross-domain acquisition of an access token.  The relevant identity
   and authorization information is chained throughout the flow by being
   conveyed in the respective artifacts exchanged at each step of the
   process.  Chaining across multiple domains is achieved by using the
   same protocol every time a trust domain boundary is crossed.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-oauth-identity-chaining-17"/>
      </reference>
      <reference anchor="I-D.fletcher-transaction-token-chaining-profile">
        <front>
          <title>Transaction Token Authorization Grant Profile for OAuth Identity and Authorization Chaining</title>
          <author fullname="George Fletcher" initials="G." surname="Fletcher">
            <organization>Practical Identity LLC</organization>
          </author>
          <author fullname="Pieter Kasselman" initials="P." surname="Kasselman">
            <organization>Defakto Security</organization>
          </author>
          <author fullname="Sean O'Dell" initials="S." surname="O'Dell">
            <organization>CVS Health</organization>
          </author>
          <date day="6" month="July" year="2026"/>
          <abstract>
            <t>   This specification defines a profile of the OAuth Identity and
   Authorization Chaining Across Domains
   [I-D.ietf-oauth-identity-chaining] mechanism that uses a Transaction
   Token (Txn-Token) [I-D.ietf-oauth-transaction-tokens] as the subject
   token in a Token Exchange [RFC8693] request to obtain a JWT
   Authorization Grant for crossing a trust boundary.

   A Txn-Token is scoped to a single trust domain and represents the
   full authorization context of an in-progress transaction, regardless
   of whether that transaction was initiated by a human user calling an
   external API, by an internal system event, or by an automated
   workload.  This profile specifies how a service operating within that
   trust domain can present its Txn-Token to obtain a JWT Authorization
   Grant that carries the necessary context across a trust boundary,
   enabling an access token to be issued for a partner service, without
   exposing internal trust-domain credentials or token formats beyond
   the trust boundary.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-fletcher-transaction-token-chaining-profile-02"/>
      </reference>
      <reference anchor="I-D.yossif-agent-mandate-problem">
        <front>
          <title>Problem Statement: Verifiable Human Mandates for Autonomous Agent Actions</title>
          <author fullname="Mohamad Khalil Yossif" initials="M. K." surname="Yossif">
            <organization>Yuthent</organization>
          </author>
          <date day="22" month="July" year="2026"/>
          <abstract>
            <t>   An autonomous software agent commonly acts under authority a human
   granted at an earlier moment: the human expresses and authorizes an
   intent at one time, and the agent executes one or more concrete
   actions at a later time.  The credentials and session state the agent
   carries at execution time establish that some agent is authorized to
   act, but they do not establish that this specific action, with these
   specific parameters, falls within the constraints the human actually
   signed.  As agent autonomy and action throughput grow, the population
   of executed actions that no human individually bounded grows with it.
   This document is a problem statement.  It characterizes the gap
   between an authorized agent and an authorized action, explains why
   existing delegation, logging, and payment-mandate mechanisms do not
   close it, and states the requirements any solution would have to
   satisfy.  It defines no protocol or mechanism.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-yossif-agent-mandate-problem-00"/>
      </reference>
      <reference anchor="I-D.ietf-oauth-transaction-tokens">
        <front>
          <title>Transaction Tokens</title>
          <author fullname="Atul Tulshibagwale" initials="A." surname="Tulshibagwale">
            <organization>CrowdStrike</organization>
          </author>
          <author fullname="George Fletcher" initials="G." surname="Fletcher">
            <organization>Practical Identity LLC</organization>
          </author>
          <author fullname="Pieter Kasselman" initials="P." surname="Kasselman">
            <organization>Defakto Security</organization>
          </author>
          <date day="30" month="July" year="2026"/>
          <abstract>
            <t>   Transaction Tokens (Txn-Tokens) are designed to maintain and
   propagate user identity, workload identity and authorization context
   throughout the Call Chain within a trusted domain during the
   processing of external requests (e.g. such as API calls) or requests
   initiated internally within the Trust Domain.  Txn-Tokens ensure that
   this context is preserved throughout the Call Chain thereby enhancing
   security and consistency in complex, multi-service architectures.

            </t>
          </abstract>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-ietf-oauth-transaction-tokens-11"/>
      </reference>
    </references>
    <?line 492?>

<section anchor="references">
      <name>References</name>
      <dl>
        <dt><xref target="RFC6749"/></dt>
        <dd>
          <t>Hardt, J., Ed., "The OAuth 2.0 Authorization Framework", RFC 6749, DOI 10.17487/RFC6749, October 2012, <eref target="https://www.rfc-editor.org/info/rfc6749">https://www.rfc-editor.org/info/rfc6749</eref>.</t>
        </dd>
        <dt><xref target="RFC7009"/></dt>
        <dd>
          <t>Lodderstedt, T., Ed., Dronia, S., and M. Scurtescu, "OAuth 2.0 Token Revocation", RFC 7009, DOI 10.17487/RFC7009, August 2013, <eref target="https://www.rfc-editor.org/info/rfc7009">https://www.rfc-editor.org/info/rfc7009</eref>.</t>
        </dd>
        <dt><xref target="RFC8693"/></dt>
        <dd>
          <t>Jones, M., Nadalin, A., Campbell, B., Ed., Bradley, J., and C. Mortimore, "OAuth 2.0 Token Exchange", RFC 8693, DOI 10.17487/RFC8693, January 2020, <eref target="https://www.rfc-editor.org/info/rfc8693">https://www.rfc-editor.org/info/rfc8693</eref>.</t>
        </dd>
        <dt><xref target="RFC9396"/></dt>
        <dd>
          <t>Lodderstedt, T., Richer, J., and B. Campbell, "OAuth 2.0 Rich Authorization Requests", RFC 9396, DOI 10.17487/RFC9396, May 2023, <eref target="https://www.rfc-editor.org/info/rfc9396">https://www.rfc-editor.org/info/rfc9396</eref>.</t>
        </dd>
        <dt><xref target="I-D.ni-oauth-batch-authorization-delegation"/></dt>
        <dd>
          <t>Ni, Y., "Batch Authorization Delegation for OAuth 2.0", Work in Progress, Internet-Draft, draft-ni-oauth-batch-authorization-delegation-00, <eref target="https://datatracker.ietf.org/doc/html/draft-ni-oauth-batch-authorization-delegation-00">https://datatracker.ietf.org/doc/html/draft-ni-oauth-batch-authorization-delegation-00</eref>.</t>
        </dd>
        <dt><xref target="I-D.song-oauth-ai-agent-collaborate-authz"/></dt>
        <dd>
          <t>Song, Y., Li, L., Jiang, Y., and F. Liu, "OAuth2.0 Extension for Multi-AI Agent Collaboration", Work in Progress, Internet-Draft, draft-song-oauth-ai-agent-collaborate-authz-01, 28 February 2026, <eref target="https://datatracker.ietf.org/doc/html/draft-song-oauth-ai-agent-collaborate-authz-01">https://datatracker.ietf.org/doc/html/draft-song-oauth-ai-agent-collaborate-authz-01</eref>.</t>
        </dd>
        <dt><xref target="I-D.ietf-oauth-identity-chaining"/></dt>
        <dd>
          <t>Schwenkschuster, A., Kasselman, P., Burgin, K., Jenkins, M., Campbell, B., and A. Parecki, "OAuth Identity and Authorization Chaining Across Domains", Work in Progress, Internet-Draft, draft-ietf-oauth-identity-chaining-17, 19 July 2026, <eref target="https://datatracker.ietf.org/doc/html/draft-ietf-oauth-identity-chaining-17">https://datatracker.ietf.org/doc/html/draft-ietf-oauth-identity-chaining-17</eref>.</t>
        </dd>
        <dt><xref target="I-D.fletcher-transaction-token-chaining-profile"/></dt>
        <dd>
          <t>Fletcher, G., Kasselman, P., and S. O'Dell, "Transaction Token Authorization Grant Profile for OAuth Identity and Authorization Chaining", Work in Progress, Internet-Draft, draft-fletcher-transaction-token-chaining-profile-02, 6 July 2026, <eref target="https://datatracker.ietf.org/doc/html/draft-fletcher-transaction-token-chaining-profile-02">https://datatracker.ietf.org/doc/html/draft-fletcher-transaction-token-chaining-profile-02</eref>.</t>
        </dd>
        <dt><xref target="I-D.yossif-agent-mandate-problem"/></dt>
        <dd>
          <t>Yossif, M., "Problem Statement: Verifiable Human Mandates for Autonomous Agent Actions", Work in Progress, Internet-Draft, draft-yossif-agent-mandate-problem-00, 22 July 2026, <eref target="https://datatracker.ietf.org/doc/html/draft-yossif-agent-mandate-problem-00">https://datatracker.ietf.org/doc/html/draft-yossif-agent-mandate-problem-00</eref>.</t>
        </dd>
      </dl>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA9V9a3Ic2XXm/47oPWSUHSLAqSySYD/RY0sgQHaj1WwiCEht
WdFBZFVlVWUzK7OcD4Al2RFehH/NKmYB82uW4g3MFuZ853EfWQUSbHl+jOyQ
QCDz5n2ce57fOSdN008/abusmr/JyrrKj5Ou6fNPPyk2Df/YdkePH3/9+OjT
T2ZZd5wU1aKm5/vpumjboq667YZeOX9+9eLTT7Imz46Ty3zWN0W3/fST2+Vx
8uqk71bJT3XztqiWybdN3W8+/eTTT+b1rMrW9Oa8yRZdOlvlVVpn9GiaLfOq
S/HjX9K+zdNZ1uZtiu9/+klXdCW9c4JHEgxcN8Vfso6mkdCjCT+a0EqSZbah
/83KbVu0NK/ptMlvju9649NPyqyiqebVp5+8vT3+9JMkSWXe8iN/Tn881/9t
umJRzIqsTM6rLi/Lgp6Z5frH8DPyq7O8zJfBv1/nN/Us+Pe3NN8TN1+aMQ9B
U0kT2aaXeVFiA09XOb9SNzTh01VRZcnLelqU/OkZ7fpx8iwvvqdH+Rd1X3XN
Vp/Eb/J1VpTHCfZ7LUP+boa/rXmQyaxe+29+X2T/ld/7pcje+63qLZ1C8qes
9t/78cfz04/70Darf3n7u1lVFbPJrPLj/6mvsH34zDJ4/Bf8e8t/O/rdKt1k
TVflTRvP7XTVVzTx5CLv8ib5oejdBL/rs9u8CMYri34mT/9uxX+TkRL6D90o
ujrNmk79Jmcie/3i9OjJk6/t56+efPmZ/fwlXTn7+YsvP3M/f/n50VP3/Bdf
u5+/fvr1F/zzeXo2aetqaZep0Ps0q8sym9ZN1uVyt9zTVaHPTrNutkqzkHjT
uaNb93yRdwt9o5jT0HQ0dH2zAnvoHlqUOQ2WN2nXZFWbzXiwrn5Lt9yeTTdN
vSA6cO9sa2IoC53vmm4x5koPTct8fYxLQSeSpkk2bWnQWYd/X62KNiFW0q/B
EOjZG5oScYCk3bZdjq2eOTaQ1IukW+V06fN13ixBDfKpKfGAuecGk+S8o5+6
fIltoNHopTWxva5O5kXbFdWsS9pZXmVNUbfjZJ53dPL8VNEk7SafgTEk0TYm
Tf4vfdHkmCW9Aga1yRsQA+ZKFLJpcrogLRFGxLlogrRXbYfBk/wdf32pHPVo
8jhZNESft8Rakz8rnfzMgxddi1HX9OX8XYeB64rWdUWjuKHl7BYFLXDR015j
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
/oXGOIblStx/EJrVvnZcAZNhEd+SiLRIrO9iR6btTS7uFPahm5t7cLmiHDj1
cEDrOw/VYkmRCgqrmokc13U/mrzzWIljTEmk8gvw6AeArp+wiy8rH+AMHkCp
LKoekYezQvovPEAr74sM/szlOrmE9TGxwvrO5SOeXLhT4YPf62s/kckrLc3c
h8beCLwZei5kcOG3UQJqo+GlfB45ecxb6vzobMtIJU6+DK11GOKIuwKTUKxN
AFRHkZ6dxZXcz4NpapvgibFHB0extsok1TCL4e2o/L0YbdAldORhM1wND64r
SxnWN6L0MueMrxu5XOxWlPtD2l6py95fXsQWP+gdw0t/qtpOEFF+7cr3D1vV
tJPQ6lBeqtfTreWO6v+7ldh9I4Cd7jLXh3tdpFyR0nZIy+WwW4E9ZeOocN6w
nZVy4c90vQHQJUCPvXSSwI74rnpBCogqHAgthlNFXJeeVdRyUHmwUpAVspuk
uoGIHvU5HEbFie6BvIJNj/XMpHb/55NdoDDNgutj0pRQ7FE8IuPkRzo9/Jvr
abo7biRd1RZK9eESdTRo3mkmSkFQNNeq5SlOVxrYYjCtqSuVLLl2RNSkjRPS
gB8W6YvaF6h/6WoJu9Kc2qieh3P1uc0zAOIg2ogqmvGefCEaMNCFgf/zBv7c
Qe8VYuSue08MufFXHvKo5OiLc6fs7f3yn//+H7eKp/ctQmA7iLSe17FXVJJl
7sSVGZaXvnZXwxj6YLYD7Y0dJAJb5TN9n3s0C+KUQ2TqIMpIb9YzIsU2wElB
Q7GrK1fWy1RxFhYtO9fZ+u4Vm6WxMW0OqExGfM4umOhjlbG3OJywxrbnYRhV
MVUuW+NUixv7HP8TxFQNPcQ+qVgyxaqiaZfuFrrmTgEggbW0pppYVW/2n/Bs
Va5HHi7eYk4R2iY3fVnFLTk0WUqfeYVGvxe+0a8L56gryriRi+HEZUny9YZL
uLueIUFMXaH/vjlxJIgPRsvaBACgdnO6FZkBc4sKDgjn/Scdhzt/L6IbEKRU
TMyVbkSgPbIYFlug91bLcklKpPKY7+ss5mr0D6VX8sdgOwspevuTz3AO4aha
umKncvHYmqk4G1GNKO1/UTFqfERktehbzpAl+t6OfOzwNu7EJRkxs7dmN9J+
9KobtxFYWs/di4QrkvdlYQmeDAAlrlTOxSUvPuNxgJ9zpMoBGS/sJYDVldsg
5jTMkwhPXthCmBBjssutiL2ZyagiOxbaNLwbo28SaeWAlU/5nHOFbITrC1Io
XJSFTa2oYfSzo2cRLE2NKEGGGj7P91nbk3cQ4Zd2OaVD7rZdg1rWpAEXHfsJ
UOfbankqIN1Kp2EHwLe1fM4Fw8Shv4eZNudV0FdlHhZIHys3y+a++gGnJ/sw
f3R542IPZRmXh+bila06oCQMgtaMEpT2E47voUxhWuI2CYwh4diB8KVcutjx
bL+J6VPqMnVaoCzTmhGgFGsv0Qu4QNCX0mnCV4LugYwA8+A4rc970h4Xdlj+
Xgua2souqwUUqzosib1b1tVX8Nxlmu+cfKcaZwSD9nnQiuIe4rT3lG+SXC6B
bk/MCcUvSSZMgAdy6RGD4RQxIOmQ4wBuJTBGM4PGO9iypZQbNmNRAdA4xkLK
XArmwfB5JILpwPLMAuG2gmpuTgZZTDh/9aBbLFjc14GhrVaGeImgM92R9MT1
J9tbRas5VUHqwKEK7YgB5vNiHsCSUGhCb7ESym9HjjTE6/zKfBSnqstc9s0i
mwnH9/Y03PSkypKIHIk1TFbZtO+6Wm7Omk7vhqsE1h5JL89LgXLIxrzxupTM
T/WnSfKTAvAytbThCF7Vc8uudHN4QLoWsa5xoi2ruIycFUOi/9/SbiabVS3e
aORZ47OgDRBDZjrN+cmPJ3v0GakTZ4FO1en5WZ+Yh9dPZoD1kWkgMTXnxjCw
vySVOJ9GoYFsN3LG4rJhTYHNzXoKK1PFI3wu67zhPDY7ACkVVwO9mDvnhkc4
i4rScDln9a8hcxiirKjmPaC94nXkNlT8+T63uLbo6lpwyJV6weibTNPc6fBq
BkItFlwIl1bkOh9kpgBwH+LI7XVHV5Zx0m8YpVdwKYNCapaBUNglwJucpmmC
uimy4a+tYj1vNRBTX3zJiKnj5DtSQ+iCfj8ZJ8/nCOrEyP6Y072wKYzGXIQY
o4yTs1fnyZPHkydffvbVl4907HHyatbVqO9/9PjJ0Tj576uu27THjx7d3t5O
msUszedIiJ3UzfIRCnI9ot/hvX+c2Aw53Qkz/KGeowwhMSCa55XN84ykZZGN
k8uJ8J+Xk+SStrHL21lPqxj2ZPTajE4dw+9OXX570i/BemjmT+83c7zmZ86t
NjDz7xEEH9PUyO7N5hmpUDQ2/eOUtPBpjr6Yz2w5z0gIlsDqfK/rOZ2Q/dwQ
s2Uf4856rLeHrgaf3F2N/Pb7rOphGhw9Pnp8v+XgPb8chc3vOQjA7mFJ2pyf
TYKlBVN+Dzxf549v7M5ffvsy47nf8yjwjs79Y5rAYH0/FuPkT7gCXKhvMOFA
wccFd4ujBfzEt68CSHGJaO5Y3HhV3qVnAHmwybLo0nvOJX0cHhOieaQFwhXF
xQ15scQJH626dfnoYwcOduZ+LXmwL5c1SoFgZ36gHfqB/vf7IrNf4dxfTOgv
7tbhxF2yEG/WS3aVES82VIF9Ra7jfffvXjNOHz8ZJ0dfJS/yaWNk/8VH7ud9
PxTs5nsb6PAmzla3OUmP2Qpxo0YYwe8RKS5Jko+TCzCBHlKLfo0tpofZCHy5
wzC4J/UE/vJ89rZwN+08TH6Nidd16tHeKFJvs/2IvX/f+tInX46TJ18n3/fl
r9ruD4wd7PLH9BjCpr/Q58fJt7u7zQHcSfLqwZnwq90GR3vUfGwUhg+YwD32
/SM2+iOWmD4mwfrFr972j/tScApbFKdb6L1Yw5NBd0LhMrztf+IHhHRHF/IH
6QUE9e04TMD9jvXYlzKIWPxBZoo660V5/IhNfN8Mmb0eHf3qbfvA2Nin/ws3
h3OoefcAAA==

-->

</rfc>
