<?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.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-mora-oauth-entity-profiles-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.32.0 -->
  <front>
    <title abbrev="OAuth Entity Profiles">OAuth 2.0 Entity Profiles</title>
    <seriesInfo name="Internet-Draft" value="draft-mora-oauth-entity-profiles-01"/>
    <author fullname="Sreyantha Chary Mora">
      <organization>Microsoft Corporation</organization>
      <address>
        <email>sreyanthmora@microsoft.com</email>
      </address>
    </author>
    <author fullname="Pamela Dingle">
      <organization>Microsoft Corporation</organization>
      <address>
        <email>pamela.dingle@microsoft.com</email>
      </address>
    </author>
    <author fullname="Karl McGuinness">
      <organization>Independent</organization>
      <address>
        <email>public@karlmcguinness.com</email>
      </address>
    </author>
    <date year="2026" month="April" day="15"/>
    <area>Security</area>
    <workgroup>Web Authorization Protocol</workgroup>
    <keyword>OAuth</keyword>
    <keyword>Entity Profile</keyword>
    <keyword>Subject Profile</keyword>
    <keyword>Client Profile</keyword>
    <keyword>AI Agent</keyword>
    <keyword>Actor Profile</keyword>
    <keyword>Delegation</keyword>
    <abstract>
      <?line 66?>

<t>This specification introduces Entity Profiles as a mechanism to categorize OAuth 2.0 entities—clients and subjects—based on their operational context. Entity Profiles provide structured descriptors for the client initiating the OAuth flow and the subject represented in tokens. This document defines new JWT Claim names and metadata parameters for use in JWTs issued or consumed in OAuth flows, including but not limited to access tokens, ID tokens, JWT authorization grant assertions, and transaction tokens, as well as in token introspection responses, dynamic client registration, and Authorization Server metadata. It also defines vocabulary for classifying acting entities within delegation chains.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://drafts.srey.io/draft-mora-oauth-entity-profiles.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-mora-oauth-entity-profiles/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Web Authorization Protocol Working Group mailing list (<eref target="mailto:oauth@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/oauth/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/oauth/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/Sreyanth/draft-mora-oauth-entity-profiles"/>.</t>
    </note>
  </front>
  <middle>
    <?line 70?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This specification introduces a mechanism for classifying entities participating in OAuth 2.0 and OpenID Connect flows using standard or custom-defined "Entity Profiles." These profiles offer a structured way to describe the nature or operational context of clients and token subjects, enhancing authorization decisions, policy enforcement, risk assessment, and audit capabilities.</t>
      <t>This specification introduces two new Claims:</t>
      <ul spacing="normal">
        <li>
          <t><tt>client_profile</tt>: Describes the nature of the client software or application initiating the OAuth flow (e.g., web app, native app, AI agent).</t>
        </li>
        <li>
          <t><tt>sub_profile</tt>: Describes the entity represented by the subject (<tt>sub</tt>) Claim in an issued token (e.g., user, service, AI agent).</t>
        </li>
      </ul>
      <t>This specification establishes a registry for OAuth Entity Profiles and defines an initial set of Entity Profile values. This document also defines how the Entity Profiles can be used in any JWT issued or consumed in OAuth flows, including but not limited to access tokens, ID tokens, JWT authorization grant assertions, and transaction tokens, as well as in token introspection responses, dynamic client registration, and Authorization Server metadata.</t>
      <t>This specification also defines the use of Entity Profiles in delegation scenarios through the <tt>act</tt> Claim <xref target="RFC8693"/>, introducing the concept of an Actor Profile to classify acting entities. By applying the same Entity Profile vocabulary to each actor in a delegation chain, this approach enables consistent classification of entities across both direct and delegated access contexts.</t>
      <section anchor="conventions-and-definitions">
        <name>Conventions and Definitions</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

<t>This specification uses the Augmented Backus-Naur Form (ABNF) notation of <xref target="RFC5234"/>.</t>
      </section>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>This document uses the terms "User", "Resource Owner", "Client", "Authorization Server", "Resource Server", and "Access Token" defined in <xref target="RFC6749"/> and the terms "JSON Web Token (JWT)", "Claim", "Claim Name" defined in <xref target="RFC7519"/>.</t>
        <ul spacing="normal">
          <li>
            <dl>
              <dt><strong>Entity Profile</strong>:</dt>
              <dd>
                <t>A string-valued descriptor classifying an OAuth entity (client or subject) according to its operational role or context.</t>
              </dd>
            </dl>
          </li>
          <li>
            <dl>
              <dt><strong>Client Profile</strong>:</dt>
              <dd>
                <t>An Entity Profile that characterizes the client software or application initiating the OAuth flow (e.g., web app, native app, AI agent, etc.).</t>
              </dd>
            </dl>
          </li>
          <li>
            <dl>
              <dt><strong>Subject Profile</strong>:</dt>
              <dd>
                <t>An Entity Profile that characterizes the entity represented by the token subject (e.g., user, AI agent, service account, etc.).</t>
              </dd>
            </dl>
          </li>
          <li>
            <dl>
              <dt><strong>Actor Profile</strong>:</dt>
              <dd>
                <t>An Entity Profile that characterizes the acting entity within an <tt>act</tt> Claim node <xref target="RFC8693"/>.</t>
              </dd>
            </dl>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="motivation-and-use-cases">
      <name>Motivation and Use Cases</name>
      <t>As OAuth 2.0 continues to be used in increasingly diverse environments—including cloud-native architectures, zero-trust systems, IoT ecosystems, and AI-driven platforms—the nature of entities participating in OAuth flows has become more heterogeneous.</t>
      <t>Current OAuth deployments lack a standardized way to represent and reason about these differing entity types. The introduction of Entity Profiles helps address several practical needs:</t>
      <ul spacing="normal">
        <li>
          <t><strong>Access Control and Policy Enforcement</strong>: Resource Servers can apply different access policies depending on whether the caller is a user, service, device, or AI agent.</t>
        </li>
        <li>
          <t><strong>Risk Scoring and Security Posture</strong>: Authorization Servers can assess and adjust risk and their security measures based on client type (e.g., public native app vs. backend service).</t>
        </li>
        <li>
          <t><strong>Auditing and Forensics</strong>: Security logs become more useful and interpretable when entity types are made explicit.</t>
        </li>
        <li>
          <t><strong>Future-Proofing OAuth Flows</strong>: As AI agents and autonomous systems take on greater roles, profiles offer a way to signal and manage their participation explicitly.</t>
        </li>
        <li>
          <t><strong>User Experience</strong>: Customized interfaces and consent flows, such as enhanced disclosures and controls for human users and granular permissions for AI agents.</t>
        </li>
      </ul>
      <t>By introducing a consistent way to describe the operational context of clients and subjects, this specification enhances the overall authorization decisions, policy enforcement, risk assessment, and audit capabilities in OAuth 2.0 and OpenID Connect deployments.</t>
    </section>
    <section anchor="entity-profiles">
      <name>Entity Profiles</name>
      <section anchor="standardized-entity-profiles">
        <name>Standardized Entity Profiles</name>
        <t>The following is a list of Entity Profile values defined by this specification. These identifiers are not intended to be exhaustive, and additional profiles can be defined by implementers or through other specifications. The values defined herein are an intentionally small set that covers the most common scenarios.</t>
        <section anchor="user">
          <name><tt>user</tt></name>
          <t>A user is a human resource owner who interacts with the system through a client such as a web application, native application, user-agent-based application, or device interface. Users provide consent, make authorization decisions, and are typically assumed to have access to their own credentials, session tokens, and authorization settings on their devices. While users often act directly through a client, they may also delegate access to applications or AI agents acting on their behalf. It is assumed that users can make informed consent decisions, understand the implications of delegated access, and manage their own permissions within the system.</t>
        </section>
        <section anchor="device">
          <name><tt>device</tt></name>
          <t>A device is a hardware-based computing entity (e.g., smart TVs, IoT sensors, mobile phones, kiosk terminals) that can host client applications. Devices may have limited user interfaces and may act autonomously or under user control. They are often constrained in security capabilities (e.g., lack of secure storage, no local display, indirect input methods) and typically require indirect authorization mechanisms such as the Device Authorization Grant <xref target="RFC8628"/>. Devices are generally considered public clients unless they can securely protect credentials.</t>
          <t>Devices are distinct from backend services or virtualized compute instances (e.g., VMs, containers) based on their physical deployment and user-facing interaction model.</t>
        </section>
        <section anchor="nativeapp">
          <name><tt>native_app</tt></name>
          <t>Same as "native application" defined in <xref section="2.1" sectionFormat="of" target="RFC6749"/>.</t>
        </section>
        <section anchor="webapp">
          <name><tt>web_app</tt></name>
          <t>Same as "web application" defined in <xref section="2.1" sectionFormat="of" target="RFC6749"/>.</t>
        </section>
        <section anchor="browserapp">
          <name><tt>browser_app</tt></name>
          <t>Same as "user-agent-based application" defined in <xref section="2.1" sectionFormat="of" target="RFC6749"/>.</t>
        </section>
        <section anchor="service">
          <name><tt>service</tt></name>
          <t>A service is a non-human actor that represents a logical service, backend process, or microservice within a distributed system. When acting as a client in OAuth flows, services are classified as confidential applications, meaning they can securely store credentials and access tokens. Unlike user-facing applications, services do not involve direct user interaction and typically operate within system-defined scopes and trust boundaries, often performing automated tasks or facilitating communication between components in the system.</t>
        </section>
        <section anchor="aiagent">
          <name><tt>ai_agent</tt></name>
          <t>An AI agent is an autonomous or semi-autonomous system capable of initiating actions and making decisions independently or on behalf of a user or organization. These agents may participate in OAuth flows as clients, subjects, or both. They might perform delegated tasks based on user instructions, operate persistently across sessions and services, possess their own identity, credentials, and entitlements. They are typically powered by machine learning or reasoning systems, exhibiting adaptive, context-aware, non-deterministic, and proactive behavior over extended sessions and across multiple systems.</t>
          <t>AI agents can be deployed in various environments, such as backend services, cloud-based systems, edge devices, or within user-controlled platforms. Depending on their operational context and deployment, AI agents can be clients -- making outbound API calls and initiating OAuth flows; or, subjects -- acting as the resource owner in systems that authorize autonomous services. Depending on their ability to securely store credentials and maintain integrity, they may be classified as either confidential or public clients. In some contexts, even well-secured AI agents may be treated as public clients due to the inherent complexity and unpredictability of their behavior. While it can be difficult to objectively verify that an entity truly qualifies as an AI agent, trusted publishers or registries may attest to the nature of the entity.</t>
        </section>
      </section>
      <section anchor="private-or-custom-entity-profiles">
        <name>Private or Custom Entity Profiles</name>
        <t>Entity Profiles can be defined at will by those using this specification. However, in order to prevent collisions, any new Entity Profile should either be registered in the IANA OAuth Entity Profiles registry (see <xref target="oauth-entity-profiles-registry"/>) or be a collision-resistant value. The definer of the value needs to take reasonable precautions to ensure they are in control of the part of the namespace they use to define the Entity Profile.</t>
      </section>
      <section anchor="representation-in-token-claims-and-metadata">
        <name>Representation in Token Claims and Metadata</name>
        <t>The value of an Entity Profile, whether appearing as a Claim in JWT tokens or as a parameter in metadata or introspection responses, is expressed as a space-delimited, case-insensitive list of strings. Each string represents a classification of the entity (either a client or a subject) and <bcp14>MUST</bcp14> adhere to the syntax defined below.</t>
        <t>Multiple values <bcp14>MAY</bcp14> be included if the entity fits into more than one category. The order of values is insignificant, and there is no implicit hierarchy or relationship between the values. When multiple Entity Profiles are present, each value is interpreted independently. Values <bcp14>SHOULD NOT</bcp14> be duplicated within a single Entity Profile list; receivers <bcp14>SHOULD</bcp14> ignore duplicate values. When including multiple values, the Entity Profile combinations <bcp14>SHOULD</bcp14> be semantically meaningful and validated against expected usage patterns. Conflicting profiles (e.g., <tt>user service</tt>) <bcp14>SHOULD</bcp14> be avoided unless a clear operational justification exists (e.g., <tt>user ai_agent</tt> to indicate an AI agent acting as a digital employee).</t>
        <sourcecode type="abnf"><![CDATA[
entity-profile = profile-token * ( SP profile-token )
profile-token = 1*( ALPHA / DIGIT / "-" / "_" / "." )
]]></sourcecode>
        <t>Examples:</t>
        <ul spacing="normal">
          <li>
            <t><tt>"user"</tt></t>
          </li>
          <li>
            <t><tt>"ai_agent"</tt></t>
          </li>
          <li>
            <t><tt>"service ai_agent"</tt></t>
          </li>
        </ul>
        <t>All profile values <bcp14>MUST</bcp14> either:</t>
        <ul spacing="normal">
          <li>
            <t>Be registered in the OAuth Entity Profiles IANA registry (see <xref target="oauth-entity-profiles-registry"/>), or</t>
          </li>
          <li>
            <t>Be privately defined (see <xref target="private-or-custom-entity-profiles"/>).</t>
          </li>
        </ul>
        <t>When processing these values, Authorization Servers and Resource Servers <bcp14>MUST NOT</bcp14> assume any implicit relationships or hierarchies between the Entity Profiles unless explicitly agreed upon by the Authorization Server and the Resource Server or if defined in a different specification.</t>
        <t>Entity Profiles are orthogonal to the OAuth 2.0 client type (public or confidential) as defined in <xref section="2.1" sectionFormat="of" target="RFC6749"/>. The client type classifies a client based on its ability to maintain credential confidentiality. The same Entity Profile value may apply to both public and confidential clients.</t>
        <t>Authorization Servers that process tokens containing syntactically valid Entity Profile values whose semantics they do not understand locally <bcp14>SHOULD</bcp14> preserve those values unchanged when producing derived tokens, provided the values are registered for the applicable usage location or are valid private Entity Profiles. Authorization Servers <bcp14>MUST NOT</bcp14> preserve values that are syntactically invalid or invalid for the applicable usage location.</t>
        <t>For example, a token might include the Entity Profiles <tt>ai_agent acme_verified_robot</tt>, where <tt>acme_verified_robot</tt> is a vendor-defined profile used to identify industrial automation clients from ACME Corp. These two profiles are independent — the presence of both does not imply that one is a subtype of the other, nor that they share privilege or trust levels. Treating <tt>acme_verified_robot</tt> as a subclass of <tt>ai_agent</tt>, or vice versa, could result in incorrect access decisions.</t>
      </section>
    </section>
    <section anchor="entity-profile-jwt-claims">
      <name>Entity Profile JWT Claims</name>
      <t>This specification defines two new Claim Names: <tt>client_profile</tt> and <tt>sub_profile</tt>. These Claims may appear in JWTs like JWT access tokens <xref target="RFC9068"/>, OpenID Connect ID tokens <xref target="OIDC"/>, and Transaction Tokens <xref target="I-D.ietf-oauth-transaction-tokens"/>, as well as in JWT authorization grant assertions <xref target="RFC7523"/> presented to the token endpoint. These Claims <bcp14>MAY</bcp14> also appear in other OAuth-related JWTs when their use is defined by the relevant specification or profile.</t>
      <section anchor="clientprofile-claim">
        <name><tt>client_profile</tt> Claim</name>
        <t>The <tt>client_profile</tt> (Client Profile) Claim indicates the Entity Profile(s) of the Client identified by the <tt>client_id</tt> (Client ID) Claim in a JWT. If included, the value of this Claim <bcp14>MUST</bcp14> conform to the rules defined in <xref target="representation-in-token-claims-and-metadata"/>. Use of this Claim is <bcp14>OPTIONAL</bcp14>.</t>
      </section>
      <section anchor="subprofile-claim">
        <name><tt>sub_profile</tt> Claim</name>
        <t>The <tt>sub_profile</tt> (Subject Profile) Claim indicates the Entity Profile(s) of the Subject represented by the <tt>sub</tt> (Subject) Claim in a JWT. If included, the value of this Claim <bcp14>MUST</bcp14> conform to the rules defined in <xref target="representation-in-token-claims-and-metadata"/>. Use of this Claim is <bcp14>OPTIONAL</bcp14>.</t>
        <t>The <tt>sub_profile</tt> Claim <bcp14>MAY</bcp14> also appear within <tt>act</tt> (Actor) Claim nodes <xref target="RFC8693"/> to identify the Entity Profile of the acting entity at each step in a delegation chain. This allows acting entities in delegation scenarios to be classified using the same Entity Profile vocabulary. The value <bcp14>MUST</bcp14> conform to the same syntax and registry requirements defined in <xref target="representation-in-token-claims-and-metadata"/>.</t>
        <t>Below is a non-normative example illustrating how the new Entity Profile Claims can appear within a JWT access token. Other standard Claims are omitted for brevity:</t>
        <sourcecode type="json"><![CDATA[
{
  "sub": "user123",
  "sub_profile": "user",
  "client_id": "client456",
  "client_profile": "service ai_agent"
}
]]></sourcecode>
        <t>Below is a non-normative example illustrating how <tt>sub_profile</tt> appears within an <tt>act</tt> Claim node in a delegation context. Other standard <tt>act</tt> members such as <tt>iss</tt> are omitted for brevity.</t>
        <sourcecode type="json"><![CDATA[
{
  "sub": "user123",
  "sub_profile": "user",
  "client_id": "client789",
  "client_profile": "ai_agent",
  "act": {
    "sub": "client789",
    "sub_profile": "ai_agent"
  }
}
]]></sourcecode>
      </section>
    </section>
    <section anchor="authorization-server-metadata">
      <name>Authorization Server Metadata</name>
      <t>If an Authorization Server supports publishing metadata as defined in <xref target="RFC8414"/> and also implements the mechanisms defined in this specification, it <bcp14>SHOULD</bcp14> advertise its support for the mechanisms defined in this specification using the following metadata parameter in its Authorization Server Metadata document:</t>
      <dl>
        <dt>"entity_profiles_supported":</dt>
        <dd>
          <t><bcp14>OPTIONAL</bcp14>. JSON object containing members: <tt>client</tt>, <tt>subject</tt>, and <tt>actor</tt>, each a JSON array of supported Entity Profiles. The <tt>client</tt> array lists Entity Profiles supported for client classification. The <tt>subject</tt> array lists Entity Profiles supported for subject classification.
</t>
          <t>The <tt>actor</tt> array, if present, lists Entity Profiles that the Authorization Server recognizes and will validate when they appear as <tt>sub_profile</tt> values within <tt>act</tt> nodes <xref target="RFC8693"/> in inbound tokens, actor assertions, or issued tokens. Actors whose <tt>sub_profile</tt> values are not listed in this array <bcp14>MAY</bcp14> be rejected by the Authorization Server. Its absence indicates that no support for Actor Profile usage in delegation contexts is declared.</t>
          <t>Authorization Servers <bcp14>SHOULD</bcp14> include all supported profiles in each array but <bcp14>MAY</bcp14> omit some supported profiles from this metadata if desired. Values in the <tt>actor</tt> array need not match those in the <tt>subject</tt> array, as an Authorization Server may support different profiles for different contexts. Empty arrays <bcp14>MUST NOT</bcp14> be included, and members with no values <bcp14>SHOULD</bcp14> be omitted. When entity_profiles_supported is present, it <bcp14>MUST</bcp14> include at least one of client, subject, or actor, and that member <bcp14>MUST</bcp14> contain at least one value. If no Entity Profiles are supported, the entire parameter <bcp14>SHOULD</bcp14> be omitted.</t>
        </dd>
      </dl>
      <t>Clients can use this metadata to determine which Entity Profiles the Authorization Server recognizes, to understand how their own Entity Profiles might be interpreted or classified, and to determine whether the Authorization Server supports Entity Profiles in delegated access scenarios. Receivers encountering an empty array for any key <bcp14>SHOULD</bcp14> treat it as equivalent to the key being absent.</t>
      <t>Below is an example of how this metadata parameter might be included in the Authorization Server Metadata document. Other standard parameters are omitted for brevity:</t>
      <sourcecode type="json"><![CDATA[
{
  "entity_profiles_supported":
  {
    "client": ["native_app", "web_app", "browser_app", "service", "ai_agent"],
    "subject": ["user", "device", "service", "ai_agent"],
    "actor": ["service", "ai_agent"]
  }
}
]]></sourcecode>
    </section>
    <section anchor="dynamic-client-registration-metadata">
      <name>Dynamic Client Registration Metadata</name>
      <t>If an Authorization Server supports Dynamic Client Registration as defined in <xref target="RFC7591"/> and also implements the mechanisms defined in this specification, it <bcp14>SHOULD</bcp14> allow clients to declare their Entity Profile using the following metadata parameter in their registration requests:</t>
      <dl>
        <dt>"client_profile":</dt>
        <dd>
          <t><bcp14>OPTIONAL</bcp14>. The Entity Profile of the client. This value <bcp14>MAY</bcp14> be included in the client's registration request and, if present, <bcp14>SHOULD</bcp14> match the client's actual Entity Profile. If omitted, the Authorization Server <bcp14>MAY</bcp14> assign a default Entity Profile based on its policies or the client's other metadata.</t>
        </dd>
      </dl>
      <t>If the provided <tt>client_profile</tt> does not match the server's policy or fails the server's validation and verification checks, the Authorization Server <bcp14>MUST</bcp14> reject the registration request with an <tt>invalid_client_metadata</tt> error. The verification mechanisms for the <tt>client_profile</tt> value are out of scope for this specification, but it is recommended that Authorization Servers implement appropriate checks based on their security policies and operational context. They may also employ verification strategies like checking against known registries, validating against trusted sources, admin approval, metadata inference, out-of-band attestation by an accountable party etc.</t>
      <t>An Authorization Server that recognizes a <tt>client_profile</tt> value as valid but chooses not to apply it based on policy is not required to reject the registration request; it <bcp14>MAY</bcp14> omit that value from the effective profile in the registration response. Authorization Servers <bcp14>MAY</bcp14> also choose to assign additional Entity Profiles that are not requested by the client based on their policies. When the Authorization Server has determined a <tt>client_profile</tt> value — whether from the client's request, server policy, or default assignment — it <bcp14>MUST</bcp14> include the effective value in the registration response in accordance with <xref section="3.2" sectionFormat="of" target="RFC7591"/>. If the Authorization Server modified, augmented, or assigned a <tt>client_profile</tt> that differs from the client's request, the response reflects the server's authoritative assignment.</t>
      <t>Below is an example of how this metadata parameter might be included in a Dynamic Client Registration request. Other standard parameters are omitted for brevity:</t>
      <sourcecode type="json"><![CDATA[
{
  "client_name": "Example Client",
  "redirect_uris": ["https://example.com/callback"],
  "client_profile": "service ai_agent"
}
]]></sourcecode>
      <t>Below is an example of how the Authorization Server's registration response might reflect a modified <tt>client_profile</tt>. In this case, the server assigned only <tt>service</tt> based on its policies:</t>
      <sourcecode type="json"><![CDATA[
{
  "client_id": "client456",
  "client_name": "Example Client",
  "redirect_uris": ["https://example.com/callback"],
  "client_profile": "service"
}
]]></sourcecode>
    </section>
    <section anchor="token-introspection-response-parameters">
      <name>Token Introspection Response Parameters</name>
      <t>If an Authorization Server supports Token Introspection as defined in <xref target="RFC7662"/> and also implements the mechanisms defined in this specification, it <bcp14>SHOULD</bcp14> include the following parameters in its introspection responses:</t>
      <dl>
        <dt>"sub_profile":</dt>
        <dd>
          <t><bcp14>OPTIONAL</bcp14>. The Entity Profile of the resource owner identified by the <tt>sub</tt> Claim associated with the token.</t>
        </dd>
        <dt>"client_profile":</dt>
        <dd>
          <t><bcp14>OPTIONAL</bcp14>. The Entity Profile of the client identified by the <tt>client_id</tt> Claim associated with the token.</t>
        </dd>
      </dl>
      <t>When the introspection response includes the <tt>act</tt> parameter as defined in <xref target="RFC8693"/>, the Authorization Server <bcp14>SHOULD</bcp14> include a <tt>sub_profile</tt> member within <tt>act</tt> objects, using the same syntax and semantics as the <tt>sub_profile</tt> Claim, to classify acting entities when it has assigned an Actor Profile.</t>
      <t>The following is a non-normative example of how these parameters might appear in a token introspection response for a direct (non-delegated) access context. Other standard parameters are omitted for brevity:</t>
      <sourcecode type="json"><![CDATA[
{
  "active": true,
  "sub": "user123",
  "sub_profile": "user",
  "client_id": "client456",
  "client_profile": "native_app"
}
]]></sourcecode>
      <t>The following is a non-normative example of how these parameters might appear in a token introspection response for a delegated access context. Other standard <tt>act</tt> members such as <tt>iss</tt> are omitted for brevity:</t>
      <sourcecode type="json"><![CDATA[
{
  "active": true,
  "sub": "user123",
  "sub_profile": "user",
  "client_id": "client456",
  "client_profile": "native_app",
  "act": {
    "sub": "ai_agent_789",
    "sub_profile": "ai_agent"
  }
}
]]></sourcecode>
    </section>
    <section anchor="client-behavior">
      <name>Client Behavior</name>
      <section anchor="registration">
        <name>Registration</name>
        <t>Clients implementing this specification:</t>
        <ul spacing="normal">
          <li>
            <t><bcp14>MAY</bcp14> declare <tt>client_profile</tt> at registration when using OAuth Dynamic Client Registration</t>
          </li>
          <li>
            <t><bcp14>MUST</bcp14> use registered or private Entity Profiles</t>
          </li>
          <li>
            <t><bcp14>MUST NOT</bcp14> attempt to register with Entity Profiles that do not match their actual nature</t>
          </li>
        </ul>
        <t>In environments where clients are manually registered or configured (e.g., enterprise deployments), <tt>client_profile</tt> provided <bcp14>MUST</bcp14> accurately represent the nature of the client. The value <bcp14>MUST</bcp14> be a registered Entity Profile or follow the naming conventions for private Entity Profiles.</t>
        <t>Clients are incentivized to declare accurate <tt>client_profile</tt> values because authorization and access policies rely on them. Misrepresenting profiles may cause stricter enforcement, failed authorizations, or rejection due to incompatible policy constraints. Moreover, Authorization Servers and Resource Servers should monitor client behavior to ensure consistency with the declared profile, with deviations potentially resulting in penalties or revocation of access.</t>
      </section>
    </section>
    <section anchor="authorization-server-behavior">
      <name>Authorization Server Behavior</name>
      <section anchor="client-registration">
        <name>Client Registration</name>
        <t>During client registration (dynamically or otherwise), Authorization Servers implementing this specification:</t>
        <ul spacing="normal">
          <li>
            <t><bcp14>MUST</bcp14> verify the <tt>client_profile</tt> value during client registration, if present in the registration request.</t>
          </li>
          <li>
            <t><bcp14>MUST</bcp14> ensure that the <tt>client_profile</tt> value conforms to the rules defined in <xref target="representation-in-token-claims-and-metadata"/>.</t>
          </li>
          <li>
            <t><bcp14>MUST</bcp14> reject registration requests with syntactically invalid <tt>client_profile</tt> values or values that are neither registered in the OAuth Entity Profiles registry nor valid private Entity Profiles.</t>
          </li>
          <li>
            <t><bcp14>SHOULD</bcp14> provide clear error messages when rejecting registration requests due to invalid or unrecognized <tt>client_profile</tt> values.</t>
          </li>
          <li>
            <t><bcp14>MAY</bcp14> log Client Profile information for auditing and monitoring purposes.</t>
          </li>
          <li>
            <t><bcp14>MAY</bcp14> restrict clients from updating their <tt>client_profile</tt> after registration or limit the frequency of such updates, depending on their policies.</t>
          </li>
        </ul>
      </section>
      <section anchor="subject-profile-assignment">
        <name>Subject Profile Assignment</name>
        <t>The Authorization Server <bcp14>MAY</bcp14> determine the <tt>sub_profile</tt> value based on:</t>
        <ul spacing="normal">
          <li>
            <t>Attributes of the subject (e.g., user, service account, AI agent) as provided during registration.</t>
          </li>
          <li>
            <t>Subject attributes returned during authentication.</t>
          </li>
          <li>
            <t>The grant type used (e.g., <tt>client_credentials</tt> implies service account).</t>
          </li>
          <li>
            <t>Preconfigured mappings.</t>
          </li>
        </ul>
        <t>The client’s declared profile or request parameters <bcp14>MUST NOT</bcp14> directly influence or determine the value of <tt>sub_profile</tt> to prevent manipulation or unauthorized elevation of subject classification.</t>
      </section>
      <section anchor="jwt-issuance">
        <name>JWT Issuance</name>
        <t>Authorization Servers implementing this specification:</t>
        <ul spacing="normal">
          <li>
            <t><bcp14>MAY</bcp14> include <tt>sub_profile</tt> and <tt>client_profile</tt> Claims in access tokens and ID tokens, according to their policies and client registration metadata. When included, these Claims <bcp14>MUST</bcp14> conform to the rules defined in <xref target="representation-in-token-claims-and-metadata"/>.</t>
          </li>
          <li>
            <t><bcp14>SHOULD</bcp14> issue registered Entity Profile values only in the usage locations defined for those values in the OAuth Entity Profiles registry (<xref target="oauth-entity-profiles-registry"/>), such as <tt>client_profile</tt>, top-level <tt>sub_profile</tt>, or <tt>sub_profile</tt> within <tt>act</tt> nodes. Private Entity Profile values <bcp14>SHOULD</bcp14> be issued only in usage contexts consistent with their private definitions.</t>
          </li>
          <li>
            <t><bcp14>MAY</bcp14> automatically include Entity Profile Claims for certain categories of clients, such as always providing <tt>client_profile</tt> for autonomous AI agent clients.</t>
          </li>
          <li>
            <t><bcp14>SHOULD</bcp14> include these Claims when explicitly requested by clients through supported mechanisms (e.g., OpenID Connect Claims parameter <xref target="OIDC"/>, specific scope requests).</t>
          </li>
          <li>
            <t><bcp14>SHOULD</bcp14> populate these Claims consistently using verified Entity Profile information obtained during client registration or other trusted validation methods.</t>
          </li>
          <li>
            <t>When issuing refreshed or exchanged tokens, Authorization Servers <bcp14>SHOULD</bcp14> re-evaluate the Entity Profiles and update them if context or identity has changed. Entity Profiles <bcp14>MUST NOT</bcp14> be assumed to persist across sessions without validation.</t>
          </li>
        </ul>
        <t>This specification does not prescribe how clients request Entity Profile Claims, but it is expected that existing mechanisms will be re-used. Future extensions may define additional request mechanisms along with any associated rejection rules and error handling. In practice, Authorization Servers may enforce the inclusion of these Claims by default, especially for high-risk or privileged profiles such as AI agents, to ensure consistent and secure policy enforcement. For other entity profiles, to reduce token size and privacy exposure, Claims may be omitted by default and included only when explicitly requested. This approach balances the need for security and efficient token management, while preventing clients from arbitrarily adding or omitting Entity Profile information to manipulate access control decisions.</t>
        <t>As an example, in OpenID Connect deployments, clients may use the <tt>claims</tt> request parameter <xref target="OIDC"/> to request Entity Profile Claims. The following is a non-normative example of requesting both <tt>client_profile</tt> and <tt>sub_profile</tt> in an access token:</t>
        <sourcecode type="json"><![CDATA[
{
  "access_token": {
    "client_profile": null,
    "sub_profile": null
  }
}
]]></sourcecode>
      </section>
      <section anchor="token-introspection-responses">
        <name>Token Introspection Responses</name>
        <t>Authorization Servers implementing this specification:</t>
        <ul spacing="normal">
          <li>
            <t><bcp14>SHOULD</bcp14> include <tt>sub_profile</tt> and <tt>client_profile</tt> parameters in token introspection responses. If included, Authorization Servers <bcp14>MUST</bcp14> ensure that the values of these parameters conform to the rules defined in <xref target="representation-in-token-claims-and-metadata"/>.</t>
          </li>
          <li>
            <t><bcp14>MAY</bcp14> include <tt>sub_profile</tt> within <tt>act</tt> nodes in introspection responses when the token is associated with a delegation context and the Authorization Server has assigned an Actor Profile to the acting entity.</t>
          </li>
        </ul>
      </section>
      <section anchor="validation-requirements">
        <name>Validation Requirements</name>
        <t>Authorization Servers:</t>
        <ol spacing="normal" type="1"><li>
            <t><bcp14>MUST</bcp14> verify that Entity Profile values conform to the syntax in <xref target="representation-in-token-claims-and-metadata"/> and are either registered in the OAuth Entity Profiles registry for the applicable usage location or are valid private Entity Profiles used in a context consistent with their private definitions.</t>
          </li>
          <li>
            <t><bcp14>SHOULD</bcp14> ensure that Entity Profile assignments are trustworthy and not based solely on unverified self-assertion. The mechanisms for these verifications are out of scope for this specification, but it is recommended that Authorization Servers implement appropriate checks based on their security policies and operational context.</t>
          </li>
          <li>
            <t><bcp14>MUST</bcp14> enforce authentication assurance and policy requirements appropriate to the Entity Profile.</t>
          </li>
        </ol>
        <t>If validation fails during:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Client registration</strong>: Authorization Servers <bcp14>SHOULD</bcp14> return <tt>invalid_client_metadata</tt> (as defined in <xref target="RFC7591"/>).</t>
          </li>
          <li>
            <t><strong>Token issuance</strong>: Servers <bcp14>MAY</bcp14> refuse to issue tokens or omit the invalid profile Claims.</t>
          </li>
          <li>
            <t><strong>Token introspection</strong>: Servers <bcp14>SHOULD</bcp14> ensure introspection results match stored profile metadata and <bcp14>MUST NOT</bcp14> fabricate or guess unknown profiles.</t>
          </li>
          <li>
            <t><strong>JWT authorization grant processing</strong>: Servers <bcp14>SHOULD</bcp14> return <tt>invalid_grant</tt> as defined in <xref section="3.1" sectionFormat="of" target="RFC7523"/> if the assertion contains syntactically invalid Entity Profile values, values that are not valid for the applicable usage location, or values that are disallowed by local policy.</t>
          </li>
          <li>
            <t><strong>Token exchange</strong>: When processing inbound tokens or assertions (e.g., <tt>subject_token</tt> or <tt>actor_token</tt> in <xref target="RFC8693"/>), Authorization Servers <bcp14>SHOULD</bcp14> validate Entity Profile Claims in the presented tokens and <bcp14>MAY</bcp14> reject the exchange request if the values are invalid, unrecognized, or conflict with local policy.</t>
          </li>
        </ul>
        <t>Clear, actionable error responses <bcp14>MUST</bcp14> be returned in accordance with OAuth and OpenID Connect error handling frameworks.</t>
        <t>Authorization Servers <bcp14>MAY</bcp14>:</t>
        <ol spacing="normal" type="1"><li>
            <t>Log Entity Profile assignments to support auditing and forensic analysis.</t>
          </li>
          <li>
            <t>Incorporate Entity Profiles into rate limiting and other risk-based controls.</t>
          </li>
          <li>
            <t>Return clear, descriptive error messages if Entity Profile validation fails.</t>
          </li>
        </ol>
      </section>
      <section anchor="consuming-tokens-and-assertions">
        <name>Consuming Tokens and Assertions</name>
        <t>When an Authorization Server consumes tokens or assertions containing Entity Profile Claims, such as during token exchange <xref target="RFC8693"/> or JWT authorization grant processing <xref target="RFC7523"/>, it acts in a role analogous to a Resource Server with respect to evaluating those Claims. In addition to the validation requirements defined in <xref target="validation-requirements"/>, Authorization Servers in this context:</t>
        <ul spacing="normal">
          <li>
            <t><bcp14>SHOULD</bcp14> use Entity Profile Claims in the presented tokens and assertions to inform authorization and policy decisions for the requested operation.</t>
          </li>
          <li>
            <t><bcp14>MUST NOT</bcp14> interpret or infer additional meaning beyond the profile's definition.</t>
          </li>
          <li>
            <t><bcp14>SHOULD</bcp14> treat Entity Profile values that are syntactically invalid or that appear in a usage location not defined for that value in the registry as unrecognized, and apply policies accordingly.</t>
          </li>
          <li>
            <t><bcp14>MAY</bcp14> reject a token containing a <tt>client_profile</tt> member within an <tt>act</tt> node or ignore the offending member for the purposes of authorization decisions.</t>
          </li>
          <li>
            <t><bcp14>MUST NOT</bcp14> preserve values that are syntactically invalid or invalid for the applicable usage location.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="resource-server-behavior">
      <name>Resource Server Behavior</name>
      <t>Resource Servers handling tokens with Entity Profile Claims:</t>
      <ul spacing="normal">
        <li>
          <t><bcp14>SHOULD</bcp14> use <tt>sub_profile</tt> and <tt>client_profile</tt> Claims to inform access control decisions and apply appropriate policies.</t>
        </li>
        <li>
          <t><bcp14>SHOULD</bcp14> apply conservative or default-deny policies when Entity Profile Claims are missing, unrecognized, or have unknown semantics for the usage location that the Authorization Server has advertised support for in <tt>entity_profiles_supported</tt>. For example, if the <tt>subject</tt> array is present in <tt>entity_profiles_supported</tt> but <tt>sub_profile</tt> is absent from a token, the Resource Server <bcp14>SHOULD</bcp14> apply conservative policies for subject classification.</t>
        </li>
        <li>
          <t><bcp14>SHOULD NOT</bcp14> penalize tokens for missing Entity Profile Claims for unadvertised usage locations.</t>
        </li>
        <li>
          <t><bcp14>MAY</bcp14> log Entity Profile information for auditing, monitoring, and anomaly detection purposes.</t>
        </li>
        <li>
          <t><bcp14>MUST NOT</bcp14> interpret or infer additional meaning beyond the profile's definition.</t>
        </li>
        <li>
          <t><bcp14>SHOULD</bcp14> treat Entity Profile values that are syntactically invalid (i.e., do not conform to the <tt>profile-token</tt> syntax in <xref target="representation-in-token-claims-and-metadata"/>) or that appear in a usage location not defined for that value in the registry as unrecognized, and apply policies accordingly.</t>
        </li>
        <li>
          <t><bcp14>MAY</bcp14> reject a token containing a <tt>client_profile</tt> member within an <tt>act</tt> node or ignore the offending member for the purposes of authorization decisions.</t>
        </li>
      </ul>
      <t>This specification does not prescribe specific behaviors or policies for Resource Servers based on Entity Profiles. However, it encourages Resource Servers to use these Claims to strengthen security, enforce fine-grained policies, and improve user experience.</t>
      <t>When a Resource Server obtains Entity Profile values from both a JWT access token and a token introspection response, and the values differ, the introspection response <bcp14>SHOULD</bcp14> take precedence as it reflects the Authorization Server's current state. A mismatch between the two sources <bcp14>MAY</bcp14> be logged as an anomaly for monitoring purposes.</t>
      <t>When rejecting a request due to invalid, missing, or unsupported Entity Profile Claims, Resource Servers <bcp14>SHOULD</bcp14> provide informative error responses to assist with diagnostics and troubleshooting. These responses <bcp14>SHOULD</bcp14> use existing OAuth 2.0 and HTTP mechanisms, such as the <tt>WWW-Authenticate</tt> <xref target="RFC6750"/> header or the <tt>error_description</tt> field <xref target="RFC6749"/> in the response body, to convey additional context.</t>
      <t>These messages are intended for human end-users or developers and are not standardized by this specification. Clients <bcp14>MUST NOT</bcp14> rely on specific error formats for automated decision-making.</t>
      <section anchor="handling-multiple-entity-profiles-in-authorization-policies">
        <name>Handling Multiple Entity Profiles in Authorization Policies</name>
        <t>When multiple Entity Profiles are present, authorization policies associated with each should be evaluated in combination. Entity Profiles do not define an inherent hierarchy or ordering; no profile is automatically "more trusted" than another. However, when policy outcomes conflict, deployments <bcp14>SHOULD</bcp14> apply the most restrictive outcome to avoid unintended privilege escalation. Implementers should avoid writing Entity Profile checks that override previous decisions imperatively, as this can lead to inconsistent behavior.</t>
        <t>Here is a non-normative pseudo-code example of how these values can be used for enforcing authorization policies at a Resource Server:</t>
        <sourcecode type="python"><![CDATA[
raw_client = token.get("client_profile", "").strip()
client_profiles = set(raw_client.split()) if raw_client else set()

raw_sub = token.get("sub_profile", "").strip()
sub_profiles = set(raw_sub.split()) if raw_sub else set()

# Define applicable policies
policies_to_apply = []

if "service" in client_profiles:
    # Add service-specific policies
    policies_to_apply.append(apply_service_policy)

if "ai_agent" in sub_profiles:
    # Add AI agent-specific policies
    policies_to_apply.append(apply_ai_agent_policy)

if "user" in sub_profiles:
    # Add user-specific policies
    policies_to_apply.append(apply_user_policy)

# Evaluate combined policies (e.g., intersection of permissions or most restrictive)
final_decision = evaluate_combined_policies(policies_to_apply, mode="most_restrictive")

]]></sourcecode>
      </section>
    </section>
    <section anchor="entity-profiles-in-delegation-contexts">
      <name>Entity Profiles in Delegation Contexts</name>
      <t>Entity Profiles classify entities participating in OAuth flows. They do not, by themselves, create or imply delegation relationships.</t>
      <t>When OAuth 2.0 Token Exchange <xref target="RFC8693"/> is used to represent delegation, the <tt>act</tt> Claim allows tokens to include information about acting entities, and the <tt>sub_profile</tt> Claim can be used within each <tt>act</tt> node to indicate the Actor Profile that classifies those entities. This specification defines the "Actor Profile" usage location in the OAuth Entity Profiles registry (<xref target="oauth-entity-profiles-registry"/>) and the <tt>actor</tt> array in the <tt>entity_profiles_supported</tt> metadata (<xref target="authorization-server-metadata"/>) to support this use.</t>
      <t>At the top level of a token, <tt>sub_profile</tt> classifies the primary subject of the token (e.g., a user or service account). Within <tt>act</tt> nodes, <tt>sub_profile</tt> classifies the acting entity at each step of the delegation chain (e.g., an AI agent acting on behalf of a user). Client classification using the <tt>client_profile</tt> Claim <bcp14>MUST</bcp14> be expressed only at the top level of the token. The <tt>client_profile</tt> Claim <bcp14>MUST NOT</bcp14> appear within <tt>act</tt> nodes.</t>
      <t>The value of <tt>sub_profile</tt> within an <tt>act</tt> node, when included, <bcp14>MUST</bcp14> conform to the syntax defined in <xref target="representation-in-token-claims-and-metadata"/> and <bcp14>MUST</bcp14> use values from the OAuth Entity Profiles registry (<xref target="oauth-entity-profiles-registry"/>) with the "Actor Profile" usage location, or valid private Entity Profiles as defined in <xref target="private-or-custom-entity-profiles"/>.</t>
      <t>An <tt>act</tt> node can contain another <tt>act</tt> node, forming a chain that represents multiple hops of delegation. By including <tt>sub_profile</tt> in each <tt>act</tt> node, the Authorization Server can provide consistent classification of all entities involved in the delegation, enabling Resource Servers to make informed access control decisions based on the nature of each actor.</t>
      <t>The Authorization Server is responsible for constructing the <tt>act</tt> chain, validating subject tokens, and assigning appropriate <tt>sub_profile</tt> values based on its policies and the delegation context. The rules for these operations are expected to be defined in a separate specification focused on actor and delegation chains.</t>
      <t>If a Resource Server encounters an <tt>act</tt> node without a <tt>sub_profile</tt> member, and the Authorization Server’s metadata indicates support for Actor Profiles through the <tt>actor</tt> array in <tt>entity_profiles_supported</tt>, the Resource Server <bcp14>SHOULD</bcp14> treat the acting entity as unclassified. Where local policy for the protected resource requires Actor Profile information, the Resource Server <bcp14>SHOULD</bcp14> apply conservative or default-deny policies consistent with <xref target="resource-server-behavior"/>. If the Authorization Server’s metadata does not declare support for Actor Profiles, the absence of <tt>sub_profile</tt> carries no normative significance under this specification.</t>
      <t>Below is a non-normative example of a multi-hop delegation chain where a user delegates to an AI agent, which in turn delegates to a backend service. Each <tt>act</tt> node includes a <tt>sub_profile</tt> member to classify the acting entity. Other standard <tt>act</tt> members such as <tt>iss</tt> are omitted for brevity:</t>
      <sourcecode type="json"><![CDATA[
{
  "sub": "user123",
  "sub_profile": "user",
  "client_id": "agent_app",
  "client_profile": "ai_agent",
  "act": {
    "sub": "agent_app",
    "sub_profile": "ai_agent",
    "act": {
      "sub": "tool_service",
      "sub_profile": "service"
    }
  }
}
]]></sourcecode>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <section anchor="trust-and-verification">
        <name>Trust and Verification</name>
        <t>Entity Profile Claims should only be trusted when issued by verified and trusted authorities. Without proper validation, self-asserted or spoofed Claims may result in misclassification and undermine security policies. Authorization Servers should enforce strict validation during client registration and token issuance.</t>
      </section>
      <section anchor="entity-profile-spoofing">
        <name>Entity Profile Spoofing</name>
        <t>Malicious clients may attempt to register or use false Entity Profiles to bypass access controls. To mitigate this, Authorization Servers should require verification for all profiles, especially privileged types like "ai_agent", and restrict dynamic registration of sensitive profiles unless additional validation is performed.</t>
        <t>Implementations are encouraged to monitor client behavior for consistency with the declared profile, applying penalties or revoking access when discrepancies indicate potential abuse or security risks.</t>
      </section>
      <section anchor="entity-profiles-in-jwt-authorization-grant-assertions">
        <name>Entity Profiles in JWT Authorization Grant Assertions</name>
        <t>When Entity Profile Claims are conveyed in JWT authorization grant assertions <xref target="RFC7523"/>, the Authorization Server receives classification information from an external issuer rather than from its own registration or authentication processes. This introduces additional trust considerations. Authorization Servers must not accept <tt>client_profile</tt> or <tt>sub_profile</tt> values from JWT assertions at face value, and should verify these values against independent knowledge of the client or subject, or against the issuer's attestation trustworthiness.</t>
        <t>An attacker who compromises or forges a JWT assertion could include a misleading <tt>sub_profile</tt> value (e.g., <tt>user</tt> for a service account) to obtain access privileges not intended for the actual entity type. Authorization Servers should apply the same level of scrutiny to Entity Profile Claims in JWT assertions as they do to other assertion Claims such as <tt>sub</tt> and <tt>aud</tt>.</t>
      </section>
      <section anchor="consistency-and-semantics">
        <name>Consistency and Semantics</name>
        <t>Authorization Servers, Resource Servers, and Clients must interpret Entity Profile Claims consistently. To avoid misclassification or policy errors they should follow the definitions and semantics outlined in the specification, and not infer additional meanings or relationships beyond the defined Entity Profiles. This consistency is crucial for interoperability and security.</t>
      </section>
      <section anchor="separation-from-authentication-and-assurance">
        <name>Separation from Authentication and Assurance</name>
        <t>Entity Profile Claims are intended solely for classification and do not convey authentication strength or assurance. It is advised not to use these Entity Profile Claims as replacements for Claims such as <tt>acr</tt> (Authentication Context Class Reference <xref target="OIDC"/>). Authorization decisions should incorporate authentication context Claims alongside Entity Profiles to ensure robust access control.</t>
        <t>Different Entity Profiles may require different levels of authentication assurance. It is recommended that Authorization Servers define minimum assurance requirements per Entity Profile, express these through the <tt>acr</tt> Claim, and reject authorization requests that do not meet the required assurance level. This alignment helps prevent unauthorized access by weakly authenticated entities.</t>
      </section>
      <section anchor="layered-policy-enforcement">
        <name>Layered Policy Enforcement</name>
        <t>It is recommended that Entity Profile Claims be used as one element within a multi-layered authorization policy. Relying exclusively on Entity Profile Claims can create brittle or exploitable policies. Implementers should combine Entity Profile Claims with scopes, roles, authentication assurance, and other contextual information.</t>
      </section>
      <section anchor="audit-and-monitoring">
        <name>Audit and Monitoring</name>
        <t>It is recommended that Entity Profile Claims be incorporated thoughtfully into logging, telemetry, and audit trails to improve visibility into system behavior and support forensic investigations. However, implementers should balance these benefits against potential privacy concerns, ensuring that sensitive classification information is not overexposed or retained longer than necessary. Careful access controls and data minimization practices are advised when handling logs containing Entity Profile details.</t>
      </section>
      <section anchor="default-handling">
        <name>Default Handling</name>
        <t>While it is recommended to apply conservative or restrictive policies when Entity Profile Claims are missing, Resource Servers should also consider backward compatibility. Many existing tokens and systems may not include these Claims, so resources might need to accept requests without them. In such cases, applying default or fallback policies that balance security and usability is advised. Monitoring and logging requests missing Entity Profile Claims can help identify when stronger enforcement or client registration updates are needed.</t>
      </section>
      <section anchor="misclassification-risks">
        <name>Misclassification Risks</name>
        <t>Entity Profile Claims can be misclassified or misinterpreted, leading to incorrect access control decisions. It is recommended that implementers validate Entity Profile Claims against known registries or trusted sources to ensure accurate classification. Implementers should also consider the implications of misclassification and implement fallback mechanisms or default policies to mitigate risks.</t>
      </section>
      <section anchor="token-bloating">
        <name>Token Bloating</name>
        <t>Entity Profile Claims can increase the size of JWT access tokens or ID tokens, especially when multiple profiles are included. This can lead to performance issues, particularly in environments with limited bandwidth or storage. Implementers should consider the impact of token size on their systems and apply data minimization principles, only including Entity Profile Claims when necessary. Implementers should enforce reasonable limits on both the number of Entity Profile values in a single Claim and the length of individual profile value strings. Excessively large profile values could increase token sizes, degrade performance, or be exploited as a denial-of-service vector.</t>
      </section>
      <section anchor="actor-profile-verification-in-delegation-chains">
        <name>Actor Profile Verification in Delegation Chains</name>
        <t>When <tt>sub_profile</tt> values appear within <tt>act</tt> Claim nodes <xref target="RFC8693"/>, they introduce additional classification assertions about acting entities in a delegation chain. Authorization Servers must not accept or issue <tt>sub_profile</tt> values in <tt>act</tt> nodes without verifying them against registration data, trusted issuer assertions, attestation evidence, or other policy inputs. Resource Servers must not trust <tt>sub_profile</tt> values in <tt>act</tt> nodes unless they are obtained from a trusted Authorization Server and the token or introspection response has been validated according to the applicable OAuth and JWT requirements.</t>
        <t>Unverified actor profiles may enable privilege escalation; for example, an attacker could craft a delegation chain where an inner <tt>act</tt> node claims a <tt>sub_profile</tt> value of <tt>"user"</tt> when the actual actor is a <tt>"service"</tt>, potentially causing a Resource Server to apply user-level permissions to a service.</t>
      </section>
      <section anchor="delegation-chain-depth">
        <name>Delegation Chain Depth</name>
        <t>Deeply nested <tt>act</tt> chains can contain many <tt>sub_profile</tt> values, increasing token size and processing complexity. Implementers should impose a maximum chain depth appropriate to their deployment context to prevent resource exhaustion. A depth limit of 3 to 5 levels is generally sufficient for most delegation scenarios.</t>
      </section>
      <section anchor="confused-deputy-risk-in-delegation">
        <name>Confused Deputy Risk in Delegation</name>
        <t>When a token carries both a top-level <tt>sub_profile</tt> and a different <tt>sub_profile</tt> within an <tt>act</tt> node (e.g., a top-level <tt>sub_profile</tt> of <tt>"user"</tt> and an <tt>act</tt> <tt>sub_profile</tt> of <tt>"ai_agent"</tt>), Resource Servers that use Entity Profiles in authorization decisions must consider the delegation context and must not treat the top-level <tt>sub_profile</tt> as fully describing the active actor. Relying only on the top-level subject classification can lead to a confused deputy scenario where the acting entity obtains access beyond what the delegation context warrants.</t>
      </section>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <t>Entity Profile Claims can reveal sensitive information about clients, users, or system architecture. When exposed improperly, they may increase risks related to fingerprinting, profiling, or data leakage. Implementers should evaluate the privacy impact of using these Claims and apply protective measures accordingly.</t>
      <section anchor="fingerprinting">
        <name>Fingerprinting</name>
        <t>Entity Profile Claims can potentially be used to fingerprint clients or subjects based on their operational context. It is recommended that implementers consider the privacy implications of exposing Entity Profile information in tokens, especially when these Claims are accessible to untrusted parties. It is recommended to only include Entity Profile Claims when necessary, and assess whether their inclusion could enable cross-context tracking or re-identification.</t>
      </section>
      <section anchor="profiling-and-behavioral-inference">
        <name>Profiling and Behavioral Inference</name>
        <t>Entity Profile Claims may unintentionally support profiling of users or clients, enabling assumptions about behavior, preferences, or roles. It is recommended that implementers carefully consider the potential for behavioral inference and ensure that Entity Profile Claims are not used to make unwarranted assumptions about user behavior or preferences. Implementers should also be cautious about exposing sensitive Entity Profile information in tokens that could be accessible to untrusted parties.</t>
      </section>
      <section anchor="minimization">
        <name>Minimization</name>
        <t>Implementers should apply data minimization principles when including Entity Profile Claims in tokens. This means only including Entity Profile information that is necessary for the intended purpose and avoiding overexposure of sensitive classification details. Implementers should also consider whether Entity Profile Claims are needed in all contexts or if they can be omitted in certain scenarios to reduce privacy risks.</t>
      </section>
      <section anchor="data-exposure">
        <name>Data Exposure</name>
        <t>Entity Profile Claims may reveal sensitive information about system architecture or user categories. It is advised to carefully consider the exposure of these Claims in tokens accessible to untrusted parties. Limiting or anonymizing Entity Profile information can reduce the risk of unintended data disclosure.</t>
      </section>
      <section anchor="delegation-chain-exposure">
        <name>Delegation Chain Exposure</name>
        <t>When <tt>sub_profile</tt> values are present within nested <tt>act</tt> Claim nodes <xref target="RFC8693"/>, the resulting token preserves the Entity Profile of each principal in the delegation chain. This may reveal sensitive information about organizational structure, internal service topology, or delegation patterns across domains. Implementers should consider whether the full delegation chain needs to be present in tokens presented to Resource Servers, or whether a truncated representation is sufficient. Data minimization principles from <xref target="minimization"/> apply to <tt>sub_profile</tt> values within <tt>act</tt> nodes as well.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="oauth-entity-profiles-registry">
        <name>OAuth Entity Profiles Registry</name>
        <t>This specification requests the creation of a new IANA registry titled "OAuth Entity Profiles Registry" within the "OAuth Parameters" group. This registry will contain the string identifiers used to represent the Entity Profiles described in this specification.</t>
        <t>NOTE: Private or vendor-specific Entity Profiles may use namespaced values and do not require IANA registration.</t>
        <section anchor="registration-template">
          <name>Registration Template</name>
          <t>Each registry entry <bcp14>MUST</bcp14> include:</t>
          <ul spacing="normal">
            <li>
              <t>Entity Profile Name: A case-insensitive ASCII string representing the entity type (e.g., "user") conforming to the <tt>profile-token</tt> syntax defined in <xref target="representation-in-token-claims-and-metadata"/>.</t>
            </li>
            <li>
              <t>Entity Profile Description: Brief human-readable description of the entity type.</t>
            </li>
            <li>
              <t>Usage Location: The location(s) where the Entity Profile can be used. The possible locations are "Subject Profile", "Client Profile", and "Actor Profile".</t>
            </li>
            <li>
              <t>Change Controller: The party responsible for the definition (e.g., IESG).</t>
            </li>
            <li>
              <t>Specification Document: A stable URL or RFC that defines the semantics and use of the value.</t>
            </li>
          </ul>
          <t>Designated Experts reviewing registration requests <bcp14>SHOULD</bcp14> verify that the proposed Entity Profile Name is clearly defined and appropriate for its declared Usage Location. For registrations that include the "Actor Profile" Usage Location, Designated Experts <bcp14>SHOULD</bcp14> verify that the value describes a type of acting entity relevant to OAuth delegation scenarios and is suitable for use as a <tt>sub_profile</tt> value within an <tt>act</tt> object.</t>
        </section>
        <section anchor="initial-registry-contents">
          <name>Initial Registry Contents</name>
          <section anchor="user-1">
            <name>user</name>
            <ul spacing="normal">
              <li>
                <t>Entity Profile Name: "user"</t>
              </li>
              <li>
                <t>Entity Profile Description: Human resource owner interacting through a client.</t>
              </li>
              <li>
                <t>Usage Location: "Subject Profile", "Actor Profile"</t>
              </li>
              <li>
                <t>Change Controller: IESG</t>
              </li>
              <li>
                <t>Specification Document: <xref target="standardized-entity-profiles"/> of this document.</t>
              </li>
            </ul>
          </section>
          <section anchor="device-1">
            <name>device</name>
            <ul spacing="normal">
              <li>
                <t>Entity Profile Name: "device"</t>
              </li>
              <li>
                <t>Entity Profile Description: Hardware device or IoT endpoint</t>
              </li>
              <li>
                <t>Usage Location: "Client Profile", "Subject Profile"</t>
              </li>
              <li>
                <t>Change Controller: IESG</t>
              </li>
              <li>
                <t>Specification Document: <xref target="standardized-entity-profiles"/> of this document.</t>
              </li>
            </ul>
          </section>
          <section anchor="nativeapp-1">
            <name>native_app</name>
            <ul spacing="normal">
              <li>
                <t>Entity Profile Name: "native_app"</t>
              </li>
              <li>
                <t>Entity Profile Description: Native application running on a device (e.g., mobile app, desktop app).</t>
              </li>
              <li>
                <t>Usage Location: "Client Profile"</t>
              </li>
              <li>
                <t>Change Controller: IESG</t>
              </li>
              <li>
                <t>Specification Document: <xref target="standardized-entity-profiles"/> of this document.</t>
              </li>
            </ul>
          </section>
          <section anchor="webapp-1">
            <name>web_app</name>
            <ul spacing="normal">
              <li>
                <t>Entity Profile Name: "web_app"</t>
              </li>
              <li>
                <t>Entity Profile Description: Web application as defined in <xref target="RFC6749"/>.</t>
              </li>
              <li>
                <t>Usage Location: "Client Profile"</t>
              </li>
              <li>
                <t>Change Controller: IESG</t>
              </li>
              <li>
                <t>Specification Document: <xref target="standardized-entity-profiles"/> of this document.</t>
              </li>
            </ul>
          </section>
          <section anchor="browserapp-1">
            <name>browser_app</name>
            <ul spacing="normal">
              <li>
                <t>Entity Profile Name: "browser_app"</t>
              </li>
              <li>
                <t>Entity Profile Description: User-agent-based application as defined in <xref target="RFC6749"/>.</t>
              </li>
              <li>
                <t>Usage Location: "Client Profile"</t>
              </li>
              <li>
                <t>Change Controller: IESG</t>
              </li>
              <li>
                <t>Specification Document: <xref target="standardized-entity-profiles"/> of this document.</t>
              </li>
            </ul>
          </section>
          <section anchor="service-1">
            <name>service</name>
            <ul spacing="normal">
              <li>
                <t>Entity Profile Name: "service"</t>
              </li>
              <li>
                <t>Entity Profile Description: Non-human backend service or microservice.</t>
              </li>
              <li>
                <t>Usage Location: "Client Profile", "Subject Profile", "Actor Profile"</t>
              </li>
              <li>
                <t>Change Controller: IESG</t>
              </li>
              <li>
                <t>Specification Document: <xref target="standardized-entity-profiles"/> of this document.</t>
              </li>
            </ul>
          </section>
          <section anchor="aiagent-1">
            <name>ai_agent</name>
            <ul spacing="normal">
              <li>
                <t>Entity Profile Name: "ai_agent"</t>
              </li>
              <li>
                <t>Entity Profile Description: Autonomous or semi-autonomous AI-based entity.</t>
              </li>
              <li>
                <t>Usage Location: "Client Profile", "Subject Profile", "Actor Profile"</t>
              </li>
              <li>
                <t>Change Controller: IESG</t>
              </li>
              <li>
                <t>Specification Document: <xref target="standardized-entity-profiles"/> of this document.</t>
              </li>
            </ul>
          </section>
        </section>
      </section>
      <section anchor="jwt-claims-registration">
        <name>JWT Claims Registration</name>
        <t>This document requests registration of the following Claims in the "JSON Web Token Claims" registry:</t>
        <section anchor="clientprofile-claim-1">
          <name><tt>client_profile</tt> Claim</name>
          <ul spacing="normal">
            <li>
              <t>Claim Name: "client_profile"</t>
            </li>
            <li>
              <t>Claim Description: Client Entity Profile information</t>
            </li>
            <li>
              <t>Change Controller: IESG</t>
            </li>
            <li>
              <t>Specification Document: <xref target="entity-profile-jwt-claims"/> of this document.</t>
            </li>
          </ul>
        </section>
        <section anchor="subprofile-claim-1">
          <name><tt>sub_profile</tt> Claim</name>
          <ul spacing="normal">
            <li>
              <t>Claim Name: "sub_profile"</t>
            </li>
            <li>
              <t>Claim Description: Subject, resource owner, or acting entity Entity Profile information</t>
            </li>
            <li>
              <t>Change Controller: IESG</t>
            </li>
            <li>
              <t>Specification Document: <xref target="entity-profile-jwt-claims"/> of this document.</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="authorization-server-metadata-registration">
        <name>Authorization Server Metadata Registration</name>
        <t>IANA is requested to register the following fields in the "OAuth Authorization Server Metadata" <xref target="RFC8414"/> registry:</t>
        <section anchor="entityprofilessupported">
          <name><tt>entity_profiles_supported</tt></name>
          <ul spacing="normal">
            <li>
              <t>Metadata Name: entity_profiles_supported</t>
            </li>
            <li>
              <t>Metadata Description: JSON object containing JSON arrays (<tt>client</tt>, <tt>subject</tt>, and <tt>actor</tt>) listing the Entity Profiles supported.</t>
            </li>
            <li>
              <t>Change Controller: IESG</t>
            </li>
            <li>
              <t>Specification Document: <xref target="authorization-server-metadata"/> of this document.</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="dynamic-client-registration-metadata-registration">
        <name>Dynamic Client Registration Metadata Registration</name>
        <t>IANA is requested to register the following field in the "OAuth Dynamic Client Registration Metadata" registry:</t>
        <section anchor="clientprofile">
          <name><tt>client_profile</tt></name>
          <ul spacing="normal">
            <li>
              <t>Client Metadata Name: "client_profile"</t>
            </li>
            <li>
              <t>Client Metadata Description: Entity Profile information of the registering client</t>
            </li>
            <li>
              <t>Change Controller: IESG</t>
            </li>
            <li>
              <t>Specification Document: <xref target="dynamic-client-registration-metadata"/> of this document.</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="token-introspection-response-registration">
        <name>Token Introspection Response Registration</name>
        <t>IANA is requested to register the following fields in the "OAuth Token Introspection Response" <xref target="RFC7662"/> registry:</t>
        <section anchor="clientprofile-1">
          <name><tt>client_profile</tt></name>
          <ul spacing="normal">
            <li>
              <t>Name: "client_profile"</t>
            </li>
            <li>
              <t>Description: Entity Profile information of the client</t>
            </li>
            <li>
              <t>Change Controller: IESG</t>
            </li>
            <li>
              <t>Specification Document: <xref target="token-introspection-response-parameters"/> of this document.</t>
            </li>
          </ul>
        </section>
        <section anchor="subprofile">
          <name><tt>sub_profile</tt></name>
          <ul spacing="normal">
            <li>
              <t>Name: "sub_profile"</t>
            </li>
            <li>
              <t>Description: Entity Profile information of the subject, resource owner, or acting entity</t>
            </li>
            <li>
              <t>Change Controller: IESG</t>
            </li>
            <li>
              <t>Specification Document: <xref target="token-introspection-response-parameters"/> of this document.</t>
            </li>
          </ul>
        </section>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC5234">
          <front>
            <title>Augmented BNF for Syntax Specifications: ABNF</title>
            <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker"/>
            <author fullname="P. Overell" initials="P." surname="Overell"/>
            <date month="January" year="2008"/>
            <abstract>
              <t>Internet technical specifications often need to define a formal syntax. Over the years, a modified version of Backus-Naur Form (BNF), called Augmented BNF (ABNF), has been popular among many Internet specifications. The current specification documents ABNF. It balances compactness and simplicity with reasonable representational power. The differences between standard BNF and ABNF involve naming rules, repetition, alternatives, order-independence, and value ranges. This specification also supplies additional rule definitions and encoding for a core lexical analyzer of the type common to several Internet specifications. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="68"/>
          <seriesInfo name="RFC" value="5234"/>
          <seriesInfo name="DOI" value="10.17487/RFC5234"/>
        </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="RFC6750">
          <front>
            <title>The OAuth 2.0 Authorization Framework: Bearer Token Usage</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="D. Hardt" initials="D." surname="Hardt"/>
            <date month="October" year="2012"/>
            <abstract>
              <t>This specification describes how to use bearer tokens in HTTP requests to access OAuth 2.0 protected resources. Any party in possession of a bearer token (a "bearer") can use it to get access to the associated resources (without demonstrating possession of a cryptographic key). To prevent misuse, bearer tokens need to be protected from disclosure in storage and in transport. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6750"/>
          <seriesInfo name="DOI" value="10.17487/RFC6750"/>
        </reference>
        <reference anchor="RFC7519">
          <front>
            <title>JSON Web Token (JWT)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>JSON Web Token (JWT) is a compact, URL-safe means of representing claims to be transferred between two parties. The claims in a JWT are encoded as a JSON object that is used as the payload of a JSON Web Signature (JWS) structure or as the plaintext of a JSON Web Encryption (JWE) structure, enabling the claims to be digitally signed or integrity protected with a Message Authentication Code (MAC) and/or encrypted.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7519"/>
          <seriesInfo name="DOI" value="10.17487/RFC7519"/>
        </reference>
        <reference anchor="RFC7591">
          <front>
            <title>OAuth 2.0 Dynamic Client Registration Protocol</title>
            <author fullname="J. Richer" initials="J." role="editor" surname="Richer"/>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="M. Machulak" initials="M." surname="Machulak"/>
            <author fullname="P. Hunt" initials="P." surname="Hunt"/>
            <date month="July" year="2015"/>
            <abstract>
              <t>This specification defines mechanisms for dynamically registering OAuth 2.0 clients with authorization servers. Registration requests send a set of desired client metadata values to the authorization server. The resulting registration responses return a client identifier to use at the authorization server and the client metadata values registered for the client. The client can then use this registration information to communicate with the authorization server using the OAuth 2.0 protocol. This specification also defines a set of common client metadata fields and values for clients to use during registration.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7591"/>
          <seriesInfo name="DOI" value="10.17487/RFC7591"/>
        </reference>
        <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>
        <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="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>
        <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="RFC9068">
          <front>
            <title>JSON Web Token (JWT) Profile for OAuth 2.0 Access Tokens</title>
            <author fullname="V. Bertocci" initials="V." surname="Bertocci"/>
            <date month="October" year="2021"/>
            <abstract>
              <t>This specification defines a profile for issuing OAuth 2.0 access tokens in JSON Web Token (JWT) format. Authorization servers and resource servers from different vendors can leverage this profile to issue and consume access tokens in an interoperable manner.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9068"/>
          <seriesInfo name="DOI" value="10.17487/RFC9068"/>
        </reference>
        <reference anchor="OIDC" target="https://openid.net/specs/openid-connect-core-1_0.html">
          <front>
            <title>OpenID Connect Core 1.0</title>
            <author>
              <organization/>
            </author>
            <date year="2023" month="December"/>
          </front>
        </reference>
        <reference anchor="I-D.ietf-oauth-transaction-tokens" target="https://datatracker.ietf.org/doc/html/draft-ietf-oauth-transaction-tokens">
          <front>
            <title>Transaction Tokens</title>
            <author>
              <organization/>
            </author>
            <date year="2026" month="March"/>
          </front>
        </reference>
        <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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC8628">
          <front>
            <title>OAuth 2.0 Device Authorization Grant</title>
            <author fullname="W. Denniss" initials="W." surname="Denniss"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <date month="August" year="2019"/>
            <abstract>
              <t>The OAuth 2.0 device authorization grant is designed for Internet- connected devices that either lack a browser to perform a user-agent- based authorization or are input constrained to the extent that requiring the user to input text in order to authenticate during the authorization flow is impractical. It enables OAuth clients on such devices (like smart TVs, media consoles, digital picture frames, and printers) to obtain user authorization to access protected resources by using a user agent on a separate device.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8628"/>
          <seriesInfo name="DOI" value="10.17487/RFC8628"/>
        </reference>
      </references>
    </references>
    <?line 762?>

<section anchor="example-usage-in-various-flows-and-use-cases">
      <name>Example Usage in Various Flows and Use Cases</name>
      <t>The following non-normative examples illustrate how Entity Profiles might appear in various OAuth flows.</t>
      <table>
        <thead>
          <tr>
            <th align="left">Flow / Use Case</th>
            <th align="left">Client Profile</th>
            <th align="left">Subject Profile</th>
            <th align="left">Actor Profile</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">Authorization Code Flow (Web App)</td>
            <td align="left">
              <tt>web_app</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">Authorization Code Flow (SPA)</td>
            <td align="left">
              <tt>browser_app</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">Authorization Code Flow (Mobile App)</td>
            <td align="left">
              <tt>native_app</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">Client Credentials Flow (Backend Service)</td>
            <td align="left">
              <tt>service</tt></td>
            <td align="left">
              <tt>service</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">Device Authorization Flow (Smart TV app)</td>
            <td align="left">
              <tt>native_app</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">IoT sensors reporting telemetry</td>
            <td align="left">
              <tt>device</tt></td>
            <td align="left">
              <tt>device</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">A web app talking to a downstream API on behalf-of a user</td>
            <td align="left">
              <tt>service web_app</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">Resource Owner Password Credentials Flow (legacy)</td>
            <td align="left">
              <tt>web_app</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">S2S OBO Flows (e.g., Service Mesh)</td>
            <td align="left">
              <tt>service</tt></td>
            <td align="left">
              <tt>service</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">An AI acting as itself (e.g., Workspace bots)</td>
            <td align="left">
              <tt>service ai_agent</tt></td>
            <td align="left">
              <tt>ai_agent service</tt></td>
            <td align="left">N/A</td>
          </tr>
          <tr>
            <td align="left">AI agent acting on behalf of a user (e.g., personal assistant)</td>
            <td align="left">
              <tt>ai_agent</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">
              <tt>ai_agent</tt></td>
          </tr>
          <tr>
            <td align="left">An AI agent running in a desktop app</td>
            <td align="left">
              <tt>native_app ai_agent</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">
              <tt>ai_agent</tt></td>
          </tr>
          <tr>
            <td align="left">Multi-hop delegation (planner -&gt; tool -&gt; user)</td>
            <td align="left">
              <tt>ai_agent</tt></td>
            <td align="left">
              <tt>user</tt></td>
            <td align="left">
              <tt>ai_agent</tt> (nested)</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="document-history">
      <name>Document History</name>
      <section anchor="draft-01">
        <name>draft-01</name>
        <ul spacing="normal">
          <li>
            <t>Introduced Actor Profiles to classify acting entities in delegation contexts</t>
          </li>
          <li>
            <t>Extended Entity Profile use to JWT authorization grant assertions</t>
          </li>
          <li>
            <t>Added Karl McGuinness as co-author</t>
          </li>
          <li>
            <t>Clarified DCR behavior when the AS modifies or omits a requested client_profile</t>
          </li>
          <li>
            <t>Refined RS behavior to condition enforcement on entity_profiles_supported advertisement</t>
          </li>
          <li>
            <t>Editorial refinements to definitions and examples</t>
          </li>
        </ul>
      </section>
      <section anchor="draft-00">
        <name>draft-00</name>
        <ul spacing="normal">
          <li>
            <t>Initial draft</t>
          </li>
        </ul>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors would like to thank the following people for their contributions and reviews of this specification: Adrian Frei, Anna Barhudarian, Diana Smetters, Emily Lauber.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+192XIb17XoO76iL/UQ0gXAlmwrtnKcE4qUbeZYwxVpu1Kp
lNhAbxAdNbpxeiCF5CiVjzgv9+1+y/2UfMld4x66d4OULGeoOqmUBQLde1h7
zdOezWaTNm8L8yg5eH7ctevkwfyT5EkJ3+2SF3W1ygvTHEzSxaI21/aZwe/L
tDVXVb17lDRtNplk1bJMNzBmVqerdrap6nRWpfDmzNCbs628Ofvk/qTpFpu8
afKqbHdbeOfsycXXk7LbLEz9aJLBwI8my6psTNl0zaOkrTszgZV8Oklrk8KK
zs2yq2HMg8lNVb++qqtuC9/+aBYJLrWq8z+lLYyNi22rZVUcTF6bHTyaPZok
M9nQAX0Md8XfnXeLP5plG355UuSwj/C747Pk+Aq+lb+WbVWHD5yawlzRUg4m
16bsYFtJcpflJgnD5eBH2F9eXiXf4Ev4/SbNC/ieIPub3LSreVVf4Q9pvVzD
D+u23TaPPv4Yn8Ov8msz18c+xi8+XtTVTWM+phE+xjev8nbdLRCstdmlJXx7
2xHiWwWcUtN6M9JLzbyBQeZ5desY83W7gZ1OUgIBHgwMmiSrrigYj+xy0uRk
nda75CmMdUAPwV7SUqAGDz7Nl3XVVKs2OanqLTzFEMcnjcCrkbFwPb/Z6PPz
ZbU5iMz8Av4p0uQUIE9H+V5TbmmQeUaD3D7nf6R1kTxdftPlZWmaJjrrWZmZ
rYH/EM75c3WLIl/+5jWMsVleyRA806Ss6g0McE3I9/Lrk88ffPqZfHz4y8++
tB8//0Q+/vLz+1/aj1/e148PHz6w3z74VD5+8dl9HeyLh1/qt19+8vAL/Pj8
7PTkES3U8htY/tkpAA1WuCTgmeT+/BPeTZvWV8ZHqQqezrN5adqPm61ZNvLF
bMmvw7+1md1/9YngEo5BzAMpb2mQmyQPPnnwKf5yNjslOhBkbOu0bNIlwnXW
Vq+B0YTrvHC/Jxf0+8gSYb4UBlu+NrWjM+CFH+OShAj2zhss+ylSKK754cEk
L1e9k/vi4QMA62Q2myXposFZ28nkYp03CUInX+VL5iN52dZV1i1N0+faSQr/
TzZmuQa0ajZJWyXCxvM/mcQJA6LV3DR/++t/L4nxwWtlljTMGfHrRdqYLIHJ
2rXJ6wQOhmkgLRI4nda8aeeDyYH0r/PMgLyou2Xb1TBAZpplnW+BczYJbBdH
S3hG2AUsAcYE7off8uJWRXVDS8GvZDlJbba1AWHRwoA5rIjgOk8IMnAU3QaH
y8wqB6pISnOT/PbHi+SkSPNNgsTHe9uYNsXDTLZpDV+2RlbUNQYHhVeaBERW
h7uucY8NjEvzuZU1U/h7WXRI88mia5OyapMi3+S4MoB1uoQzaWSB0wQIQT/i
itJAGFwBprRwXo2p8W94hrbt4aW+C2d6Y4oC/9XdMwogVtCTAJ0tilN4ONvB
lvOlArk2VzliEj7GM4Qi6dzU10BFCpx5cgZrKprKgvO6WqaLrkD+jNBaFrDi
fLVDAOAy4R/FpeQG5AwsMLNCMQE0zOGkGKU3eZYVZjK5l5wJ/uIztyG4j839
BdiZ4UjbfJlvGZvskSGm45Z7TIlOEs4dn21aeCCt+cy7pq02M9551tcdmvkB
YBygYaISLqlWK4Bd6uP7TbpDRGC0XxhC4zLF33CGCBXBIIlPgny8SohT2CNs
fkngDg4uA3g1jDfbCmTDDp4E+ABXhKGmSZ03rwm5moa/wLFTQNwWGMI2XeQF
QW5+G/jbm4ooiqipQeaUXPJyXwkYLh8lp7LbJtjuyid2lIw3KUMh3W4LN9UY
Ezg086v5FDB/gS9McVjglPwZFLMUFbOjOa4HgDW6GFZKAg6y2AXM5RDfvzwS
fgG4k5bKB/gsZCHAJ+ppAv+5zpcmWEIMhKA6pSCymzWhsFAhk1BU3abzUZpL
FS4FzEcYEj6dXKdFZwYcMKDbNYAQt9mfZwmDA152DfO2tNwRb/ofzhc9xgCk
CE6UFoPzoNV5bK9ZmjKt8wpfAb3+ak2vXsLmLgXN/vxnUajevp1aclMigBNY
mi2dOxxWYHaQQBcO2Oe/8+TxjmhrpwM1IOcGqOP4OYxlUlBHUpoBkWHAu6cw
DgAFRq0rfBT2tSAsApgDdBHOshyFGCzasuUUVeImWVSARFleI7UxmtMkgDiC
NcIKkRvdu4ds+hqHgCno8VMEf05/4xmZBGy9BI29BvSp788vDqb8b/LsOX1+
+eR/f3/28skpfj7/9vi77+yHiTxx/u3z7787dZ/cmyfPnz598uyUX4Zvk+Cr
ycHT498dMDIdPH9xcfb82fF3B4SaISHWdFALVCxAzwDWQ5ttJioWiLgen7z4
f//3/meAC/8LkOHB/ftfvn0rf3xx/5efwR83ayOoW5XFTv6Eg91N4EBMymcG
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
vK74u7SDdc8n/x8XEMNsXecAAA==

-->

</rfc>
