<?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.35 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-chen-oauth-rar-agent-extensions-01" category="std" consensus="true" submissionType="IETF" xml:lang="en" version="3">
  <!-- xml2rfc v2v3 conversion 3.33.0 -->
  <front>
    <title abbrev="extensions for RAR">Policy, Lifecycle, and Intent Extensions for OAuth Rich Authorization Requests</title>
    <seriesInfo name="Internet-Draft" value="draft-chen-oauth-rar-agent-extensions-01"/>
    <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="L." surname="Su" fullname="Li Su">
      <organization>China Mobile</organization>
      <address>
        <postal>
          <city>BeiJing</city>
          <country>China</country>
        </postal>
        <email>suli@chinamobile.com</email>
      </address>
    </author>
    <date year="2026" month="April" day="22"/>
    <area>Security</area>
    <workgroup>oauth</workgroup>
    <keyword>Internet-Draft</keyword>
    <keyword>keyword2</keyword>
    <abstract>
      <?line 41?>

<t>OAuth 2.0 Rich Authorization Requests (RAR) <xref target="RFC9396"/> defines a syntax for clients to request fine-grained permissions. While powerful, this mechanism lacks standardized methods for clients to express three critical contextual dimensions prevalent in modern automated systems: the high-level user intent driving the request, the required security policy under which the request should be evaluated, and the binding of the authorization's lifecycle to an external process.</t>
      <t>This document extends the RAR framework to address these gaps. It first defines a new authorization_details type, <strong>intent_request</strong>, to facilitate goal-oriented authorization. Second, it introduces two new parameters for the authorization_details object: <strong>policy_context</strong>, to request authorization under a specific assurance level, and <strong>lifecycle_binding</strong>, to tie the validity of the authorization grant to the state of an external entity. These extensions enable authorization servers to make more intelligent, secure, and context-aware decisions, particularly in ecosystems involving autonomous agents and complex, long-running tasks.</t>
    </abstract>
  </front>
  <middle>
    <?line 47?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>OAuth 2.0 Rich Authorization Requests <xref target="RFC9396"/> significantly enhances
   the expressive power of authorization requests beyond simple string-
   based scopes. This enables clients, such as sophisticated AI agents,
   to articulate their needs with greater precision.</t>
      <t>The OAuth 2.0 Rich Authorization Requests (RAR) <xref target="RFC9396"/> framework provides a vital, standardized syntax for clients to request structured, fine-grained permissions. This moves beyond the limitations of simple string-based scopes. However, as automated systems and AI-driven agents become more prevalent, their authorization requirements introduce new complexities that the current RAR standard does not explicitly address. This document identifies three such challenges:</t>
      <t><strong>Goal-Oriented Authorization</strong>: Complex clients, such as coordinator agents, often operate based on a high-level user goal (e.g., "book a trip") rather than a pre-defined set of API permissions. The initial authorization request needs a way to seek consent for the overall intent, which is subsequently decomposed into specific actions. This creates an "intent-to-permission gap" in the protocol.</t>
      <t><strong>Policy Assurance Mismatch</strong>: A client might request a high-risk action (e.g., a payment), but the authorization server (AS) might evaluate this request against a default, low-assurance security policy (e.g., one not requiring multi-factor authentication). This ambiguity can be exploited in "policy downgrade" attacks. The protocol lacks a mechanism for a client to assert the required security posture for a given request.</t>
      <t><strong>Over-privileged Token Lifetime</strong>: For long-running, automated tasks, access tokens with a fixed expiration time (exp claim) violate the principle of least privilege. If the task finishes early or is cancelled, the token remains valid, creating an unnecessary window of risk. The authorization grant's validity should ideally be coupled to the task's actual lifecycle.</t>
      <t>To address these challenges, this document extends RAR in two primary ways:</t>
      <t>It introduces a new authorization_details type, intent_request, to allow clients to request authorization for a high-level goal.</t>
      <t>It introduces two new parameters, policy_context and lifecycle_binding, which can be included within any authorization_details object to provide essential context about security requirements and validity constraints.</t>
      <t>This specification addresses these gaps by extending the RAR framework
   to include explicit policy context and lifecycle binding information
   within the authorization request itself.</t>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 <xref target="RFC8174">RFC2119</xref>.</t>
        <t>This document uses the terms "Authorization Server" (AS), "Client",
   "Resource Server" (RS), and "Access Token" as defined in The OAuth
   2.0 Authorization Framework <xref target="RFC6749"/>. The term
   "authorization_details" is used as defined in Rich Authorization
   Requests <xref target="RFC9396"/>.</t>
      </section>
    </section>
    <section anchor="intent-based-authorization-the-intentrequest-type">
      <name>Intent-Based Authorization: The intent_request Type</name>
      <section anchor="the-intentrequest-authorization-details-type">
        <name>The intent_request Authorization Details Type</name>
        <t>This specification defines a new value, <strong>intent_request</strong>, for the type member of the authorization_details object. This type allows a client to seek authorization for a high-level user goal, which the AS can then use as a basis for issuing more specific, fine-grained authorizations at a later stage.</t>
      </section>
      <section anchor="object-structure">
        <name>Object Structure</name>
        <t>When the type member has a value of intent_request, the object has the following members:</t>
        <ul spacing="normal">
          <li>
            <t>intent (string, REQUIRED): A human-readable, textual description of the user's goal. This value is intended for display on user consent screens and for auditing purposes.</t>
          </li>
          <li>
            <t>constraints (object, OPTIONAL): A JSON object containing structured, machine-readable parameters that define the boundaries of the intent. The structure and semantics of these parameters are specific to the intent and are to be defined by the ecosystem or the AS.</t>
          </li>
        </ul>
        <t>for example</t>
        <artwork><![CDATA[
   {
     "type": "intent_request",
     "intent": "Plan and book my business trip to the IETF meeting in Paris.",
     "constraints": {
       "max_budget": "2000",
       "currency": "EUR",
       "travel_class": "economy"
     }
   }
]]></artwork>
      </section>
      <section anchor="authorization-flow-and-the-role-of-token-exchange">
        <name>Authorization Flow and The Role of Token Exchange</name>
        <t>The intent_request flow is typically a two-stage process:</t>
        <t><strong>Initial Intent Authorization</strong>: The client makes an authorization request including an authorization_details object of type intent_request. The AS authenticates the user and presents the intent and a summary of the constraints for consent. If the user approves, the AS issues an authorization grant (and subsequently, an access token) that represents the approved intent. This initial "intent token" MAY NOT be audience-restricted to any specific resource server and may have limited usability on its own.</t>
        <t><strong>Just-in-Time Permission Issuance</strong>: As the client decomposes the intent into concrete sub-tasks, it uses the "intent token" to request task-specific access tokens. This is accomplished via the Token Exchange grant type [RFC8693]. The client presents the "intent token" as the subject_token and includes a new authorization_details parameter in the request, specifying the fine-grained permissions needed for the sub-task. The AS is responsible for validating that the requested permissions are a legitimate and safe decomposition of the originally consented intent.</t>
      </section>
    </section>
    <section anchor="contextual-parameters-for-authorization-details">
      <name>Contextual Parameters for Authorization Details</name>
      <t>This specification defines two new JSON object members, policy_context and lifecycle_binding, that can be included in any authorization_details object, including intent_request.</t>
      <section anchor="the-policycontext-parameter">
        <name>The "policy_context" Parameter</name>
        <t>This specification defines a new JSON object member, "policy_context",
   for the "authorization_details" object. This member allows a client to request that the authorization decision be evaluated under a specific set of policy constraints and assurance levels.</t>
        <section anchor="structure-of-the-policycontext-object">
          <name>Structure of the "policy_context" Object</name>
          <t>The "policy_context" member, A JSON object containing members that provide context for the policy decision.</t>
          <ul spacing="normal">
            <li>
              <t>assurance_level (string): An identifier for a desired policy assurance level (e.g., "financial_grade_v1"), which MUST be a value supported and advertised by the AS.</t>
            </li>
            <li>
              <t>compliance_frameworks (array of strings): Identifiers for specific compliance frameworks (e.g., "gdpr") that the operation must adhere to.</t>
            </li>
          </ul>
          <artwork><![CDATA[
   {
     "assurance_level": "financial_grade_v1",
     "compliance_frameworks": ["pci-dss", "gdpr","iso27001"]
   }
]]></artwork>
          <t>AS Processing: When present, the AS MUST validate the requested context against its supported policies. It SHOULD present the implications of the policy (e.g., "This requires multi-factor authentication") to the user during consent. If granted, the AS SHOULD include the validated policy_context in the authorization_details claim of the resulting JWT access token.</t>
        </section>
      </section>
      <section anchor="the-lifecyclebinding-parameter">
        <name>The "lifecycle_binding" Parameter</name>
        <t>This specification defines another new JSON object member,
   "lifecycle_binding", for the "authorization_details" object. This
   member ties the authorization's validity to the lifecycle of an
   external entity.</t>
        <section anchor="structure-of-the-lifecyclebinding-object">
          <name>Structure of the "lifecycle_binding" Object</name>
          <t>The "lifecycle_binding" member, A JSON object defining the binding mechanism.</t>
          <artwork><![CDATA[
   {
     "type": "task_status_webhook",
     "task_id": "job-d4a3b2-8c7e-4f5a-9b1c-2d3e4f5a6b7c",
     "termination_states": ["COMPLETED", "FAILED", "CANCELLED"]
   }
]]></artwork>
          <t>The "type" member indicates the mechanism by which the AS can monitor the external entity's state. The "task_status_webhook" type indicates that the external task provider will notify the AS of terminal state changes via a pre-configured webhook. The object MUST also contain:</t>
          <ul spacing="normal">
            <li>
              <t>"task_id" (string): A unique identifier for the task.</t>
            </li>
            <li>
              <t>"termination_states" (array of strings): A list of states that,
once the task enters, will trigger the immediate revocation of the
associated authorization.</t>
            </li>
          </ul>
          <t>AS Processing: The AS MUST be capable of monitoring the entity's state via the specified mechanism. It MUST record the link between the task_id and the issued authorization grant. Upon notification of a terminal state, the AS MUST immediately revoke the grant and all associated tokens.</t>
          <t>Resource Server Responsibilities: An RS receiving a token with a lifecycle_binding claim MUST NOT rely solely on the exp claim. It MUST use a real-time validation method, such as token introspection <xref target="RFC7662"/> or a revocation feed, to ensure the token has not been revoked due to a lifecycle event.</t>
        </section>
      </section>
    </section>
    <section anchor="example-authorization-request">
      <name>Example Authorization Request</name>
      <t>The following example demonstrates a coordinator agent requesting authorization for a user's travel planning intent, utilizing all three extensions.</t>
      <artwork><![CDATA[
"authorization_details": [
  {
    "type": "intent_request",
    "intent": "Plan and book my business trip to the IETF meeting in Paris.",
    "constraints": {
      "max_budget": "2000",
      "currency": "EUR"
    },
    "policy_context": {
      "assurance_level": "financial_transaction_v2",
      "compliance_frameworks": ["gdpr"]
    },
    "lifecycle_binding": {
      "type": "task_status_webhook",
      "task_id": "trip-planning-job-a1b2c3",
      "termination_states": ["COMPLETED", "CANCELLED_BY_USER"]
    }
  }
]
]]></artwork>
      <ul spacing="normal">
        <li>
          <t>intent_request: The client asks for approval of the high-level goal.</t>
        </li>
        <li>
          <t>policy_context: It asserts that all subsequent actions derived from this intent (like payments) must be processed under a high-assurance financial policy.</t>
        </li>
        <li>
          <t>lifecycle_binding: It ensures that once the planning task is complete or cancelled, all associated permissions are automatically revoked.</t>
        </li>
      </ul>
    </section>
    <section anchor="authorization-server-metadata">
      <name>Authorization Server Metadata</name>
      <t>This specification adds the following parameters to the OAuth Authorization Server Metadata <xref target="RFC8414"/>.</t>
      <t>1.policy_assurance_levels_supported: OPTIONAL. A JSON array of objects, where each object represents a supported assurance level. Each object has the following members:</t>
      <ul spacing="normal">
        <li>
          <t>"level" (string): A structured identifier for the assurance level (e.g., "nist_ial2"). REQUIRED.</t>
        </li>
        <li>
          <t>"description" (string): A human-readable description. OPTIONAL.</t>
        </li>
        <li>
          <t>"uri" (string): A URI pointing to the detailed definition of the level. OPTIONAL.</t>
        </li>
      </ul>
      <t>2.policy_compliance_frameworks_supported: OPTIONAL. A JSON array of strings containing the compliance framework identifiers supported by the AS.</t>
    </section>
    <section anchor="error-response">
      <name>Error Response</name>
      <t>When a request is denied due to a failure in validating the "policy_context", the AS returns an error response with the following error code:</t>
      <t>Error Code: <strong>policy_requirement_not_met</strong>
Description: The requested "policy_context" is not supported or cannot be satisfied.
The AS SHOULD include an "error_description" parameter to provide developers with more details about the failure.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t><strong>Intent-to-Permission Escalation</strong>: The intent_request type shifts significant responsibility to the AS's policy engine. A primary threat is a client using a broadly-phrased intent to acquire excessive or unrelated permissions via subsequent token exchanges. The AS MUST implement a strict and carefully designed policy engine to govern this decomposition. The constraints provided in the initial request MUST be treated as strict, non-negotiable boundaries.</t>
      <t><strong>Preventing Policy Downgrade Attacks</strong>: The "policy_context" member allows the AS to enforce that high-risk
   actions are always requested with a corresponding high-assurance
   policy context. The AS MUST reject requests where this mapping is
   violated, thus preventing a client from obtaining a privileged token
   under weak security pretenses.</t>
      <t><strong>Ensuring Timely Revocation</strong>: The "lifecycle_binding" member significantly reduces the risk window
   of compromised tokens for long-running tasks. The effectiveness of
   this mechanism is entirely dependent on the reliability of the state
   notification and revocation propagation systems. Implementations MUST
   include robust error handling and fallbacks. The token's "exp" claim
   serves as an essential fallback mechanism.</t>
      <t><strong>User Consent and Transparency</strong>: The structured nature of these new members allows the AS to present a
   far more intelligible and accurate consent screen to the user, leading
   to more meaningful and informed authorization decisions.</t>
      <t><strong>Reliability of External State Monitoring</strong>: The AS must trust the source of the lifecycle events (e.g., the task
   provider's webhook). Mechanisms such as mutual TLS authentication and
   request signing SHOULD be used to secure the communication channel
   for state updates.</t>
    </section>
    <section anchor="IANA">
      <name>IANA Considerations</name>
      <section anchor="oauth-authorization-server-metadata">
        <name>OAuth Authorization Server Metadata</name>
        <t>This specification requests the registration of the following values in the "OAuth Authorization Server Metadata" registry:</t>
        <ul spacing="normal">
          <li>
            <t>policy_assurance_levels_supported</t>
          </li>
          <li>
            <t>policy_compliance_frameworks_supported</t>
          </li>
        </ul>
      </section>
      <section anchor="oauth-extensions-error-registry">
        <name>OAuth Extensions Error Registry</name>
        <t>This specification requests the registration of the following value in the "OAuth Extensions Error Registry":</t>
        <ul spacing="normal">
          <li>
            <t>Error Code: policy_requirement_not_met</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>This document based on RFC9396</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative 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="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="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="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="RFC8414">
          <front>
            <title>OAuth 2.0 Authorization Server Metadata</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <date month="June" year="2018"/>
            <abstract>
              <t>This specification defines a metadata format that an OAuth 2.0 client can use to obtain the information needed to interact with an OAuth 2.0 authorization server, including its endpoint locations and authorization server capabilities.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8414"/>
          <seriesInfo name="DOI" value="10.17487/RFC8414"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC7662">
          <front>
            <title>OAuth 2.0 Token Introspection</title>
            <author fullname="J. Richer" initials="J." role="editor" surname="Richer"/>
            <date month="October" year="2015"/>
            <abstract>
              <t>This specification defines a method for a protected resource to query an OAuth 2.0 authorization server to determine the active state of an OAuth 2.0 token and to determine meta-information about this token. OAuth 2.0 deployments can use this method to convey information about the authorization context of the token from the authorization server to the protected resource.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7662"/>
          <seriesInfo name="DOI" value="10.17487/RFC7662"/>
        </reference>
      </references>
    </references>
    <?line 275?>



  </back>
  <!-- ##markdown-source:
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
yfjBtlTEMU0glJRahgqUNZVhjomQpBgADyG+HCiOpKNtdthCmmPtA4pJEErB
BuIGreQstd4IAl71uN23KWWfUDLVwvJQwI7E1VeDeFEHCgkFJ0MZhvxyrPrE
kZPRgPh5zHIRA4fImgQ6JYei8rbYvMhPSXCXphWUSzHZli0o0UqgR4iMXjYj
aYJtCVdrys91h/R7mBRFOPOZLr2nelvM5YuZXk3g2YvbVEh/Hmt2KiYULaH+
LLlA9xoZYqE3XFpbky1Y/lev1D3hdlFm5XKj/nxVt+/+8vTowcCjkA+tGl1/
ubsfjeWv+nTDr28v//vL1e3lB3p998v048fwwj9x98vNl48f2lftyIub6+vL
Tx9kMD5VWx9dT/85EjY9uvl8f3XzafrRZZZuJBC/hvrmQsYrpFUud/CEsShR
54KrP118VqdvmMBRvf+VX1GF/3VH/dY4AypSCDbe54R3nFVGnFYg5QUHx0hY
6OjW2LKpkDLCU7f0FG9iKmDIQDoSCSX9Q77ARHkaYqP9RX8OfPN316b4KnhE
IsrSOyNgRBjYWK+RsN6Q6/IkwypgEmoJSvU/MfHpjTt3LKWLHeoegOJdbPht
f2sfXKz6MTvCql8WUw7fUwF7ykOAhtSYz6Us+VYB61Izj2LIs71MyqzqG4gX
yN+403+Y3jFkEQ2gB5h+E3lMpa4GY2qYNRDJ9jveKgR6y2I4sZSMSxkw56Xx
gXwjQHfn6wn6+DdadlsbK5aBVUiaGWA+8UWZi56kt4uSNMJy8hSSXCLfpXkt
FcdYeSg4Ii63anJdRMirCRVzmNc3iDgo16xDZxjSHDIipwyxg0iXWlmCgJ60
laR2nYHmloUo29NcTGiIXVCMsVkaoDWJu24q4rME1lEXvNVr2eFYeVhhkX+9
u/nk906gi2dplm6JlmtqKJqwr26jhKsbcVRpK5UNFTZUpLiNisIkbMOsLLYF
HyGi6B+1vZl1xzs8jXDKp8EtAPr4RsLhAt23FpSLiukduwspyTxrLhfp/f/g
H0f/n/w/oIQcZnTuCb73Dodxyn9OT3zOqJiBFFzq5GA8jaVQtVz0eGmpRw/v
MbWkLPUZerGTdr6OcTCpFwNf5Pp5Nm+SpeHFzk5OTsIgGsZ1ZLyh7y6/3Ha/
wmyIyhn4pKUpR9TuKvPNyD3xF//9y++dQ2gLcIn40MbIWrel0E/hwJfPRLmX
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
yOHB/wJFTvAp5TsAAA==

-->

</rfc>
