<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.39 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-carleton-workload-authz-grant-00" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="WAG">Workload Authorization Grant</title>
    <seriesInfo name="Internet-Draft" value="draft-carleton-workload-authz-grant-00"/>
    <author fullname="Paul Carleton">
      <organization>Anthropic</organization>
      <address>
        <email>paulc@anthropic.com</email>
      </address>
    </author>
    <date year="2026" month="August" day="03"/>
    <area>sec</area>
    <keyword>agent identity</keyword>
    <keyword>AIMS</keyword>
    <keyword>workload identity</keyword>
    <keyword>workload authorization grant</keyword>
    <abstract>
      <?line 72?>

<t>This document profiles the Agent Identity Management System (AIMS)
framework for agent platforms that host many agent instances per customer.  Each agent is identified by an
opaque, non-reassignable agent identifier; the agent obtains access tokens by
presenting a JWT authorization grant (RFC 7523), signed by the platform's
per-tenancy issuer, in the assertion parameter at the authorization server protecting the
resource server.  Trust is established once, by reference to the
issuer's published metadata and keys; agent creation requires no per-agent
step at the authorization server or resource server; and authorization is expressed over
platform-asserted agent properties that resource servers map locally to
permissions.  This profile addresses agents acting on their own behalf;
access on behalf of a user or other principal is out of scope, though the
design is intended to compose with existing delegation mechanisms in which
the agent appears as the actor.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-carleton-workload-authz-grant/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/pcarleton/draft-carleton-workload-authz-grant"/>.</t>
    </note>
    <note removeInRFC="true">
      <name>Note to Readers</name>
      <?line 88?>

<t>This document is an early, exploratory individual draft, published to solicit
discussion of the deployment pattern it describes.  It is not a working group
document, does not describe a shipped or committed design, and does not
represent a position or roadmap of the author's employer.  Every aspect of it
is subject to change or withdrawal, including whether this profile should
exist as a separate document at all.  Most sections are placeholders.  Issues
and pull requests:
https://github.com/pcarleton/draft-carleton-workload-authz-grant.</t>
    </note>
  </front>
  <middle>
    <?line 99?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Agent platforms increasingly host many agent instances per customer, created
and retired at the cadence at which the customer organizes its work -- per
channel, repository, or pipeline.  An individual agent may persist for weeks
or months, but the person creating it is typically not the person authorized
to provision credentials at the resource servers it will access.  Per-agent
credentials are therefore not issued in practice, and deployments collapse to
a single credential shared across all agents of an installation -- the pattern
<xref target="AIMS"/>, Section 7, identifies as an antipattern -- at the cost of any
attribution of an individual agent's actions at the resource server.</t>
      <t>Existing workload identity federation <xref target="WIMSE-ARCH"/> addresses an analogous
problem between an organization's workloads and infrastructure providers, but
its claim and policy semantics are defined per provider rather than portably,
and it has not been applied between agent platforms and SaaS resource
servers.  The Model Context Protocol's proposed Workload Identity Federation
extension <xref target="MCP-WIF"/> defines the corresponding wire mechanics for MCP servers; this
profile is intended to be interoperable with it.</t>
      <t>This document specifies a profile of <xref target="AIMS"/> for that deployment pattern.
Agent platforms are the motivating deployment, and the terminology
throughout uses "Agent"; the mechanism itself is not agent-specific and
applies to any platform hosting workloads that need federated access to
third-party resource servers.  The mechanism is called the Workload
Authorization Grant (WAG): a
platform-signed JWT authorization grant asserting a workload's identity and
platform-asserted properties.  Trust in the platform's issuer is
established once, by reference, and thereafter agents are accepted on first
presentation with no per-agent registration step.</t>
      <t>A design goal of this profile is a minimal adoption path for services that
already operate an OAuth deployment: supporting it requires changes only at
the authorization server's token endpoint, which accepts the JWT
authorization grant from allowlisted issuers.  The access tokens the
authorization server issues are unchanged in format and semantics, and
resource servers continue to trust their authorization server exactly as
they do today.</t>
      <section anchor="relationship-to-aims">
        <name>Relationship to AIMS</name>
        <t><xref target="AIMS"/> remains the base specification for anything not restated here.  This
profile constrains <xref target="AIMS"/> as follows:</t>
        <table>
          <thead>
            <tr>
              <th align="left">AIMS component</th>
              <th align="left">Here</th>
              <th align="left">Relationship</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">Identifiers (Sec. 6)</td>
              <td align="left">
                <xref target="identity-model"/></td>
              <td align="left">Constrained: opaque, immutable, non-reassignable agent identifier, <bcp14>RECOMMENDED</bcp14> to be a Workload Identifier <xref target="WIMSE-ID"/>, carried as sub</td>
            </tr>
            <tr>
              <td align="left">Credentials (Sec. 7), Authentication (Sec. 9)</td>
              <td align="left">
                <xref target="authorization-grant"/></td>
              <td align="left">Constrained: <xref target="RFC7523"/> JWT authorization grant (assertion), platform-signed; no per-agent credential; client identity deliberately unspecified</td>
            </tr>
            <tr>
              <td align="left">Credential Provisioning (Sec. 8)</td>
              <td align="left">
                <xref target="instantiation"/></td>
              <td align="left">Constrained: platform-internal</td>
            </tr>
            <tr>
              <td align="left">Authorization (Sec. 10, case 10.4.2)</td>
              <td align="left">
                <xref target="properties"/></td>
              <td align="left">Added: standard property claims; by-reference trust (<xref target="trust"/>)</td>
            </tr>
            <tr>
              <td align="left">Monitoring/Remediation (Sec. 11)</td>
              <td align="left">
                <xref target="oi"/></td>
              <td align="left">TODO</td>
            </tr>
            <tr>
              <td align="left">Policy (Sec. 12), Compliance (Sec. 13)</td>
              <td align="left">--</td>
              <td align="left">Inherited</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="relationship-to-wimse-and-spiffe">
        <name>Relationship to WIMSE and SPIFFE</name>
        <t>TODO.  A reader arriving from WIMSE or SPIFFE will ask where the Workload
Identity Token and the SPIFFE ID are in this design.  Explain: why the
assertion is an <xref target="RFC7523"/> authorization grant rather than a WIMSE WIT;
how the Agent Identifier's <bcp14>RECOMMENDED</bcp14> <xref target="WIMSE-ID"/> URI form relates to a
SPIFFE ID; and what changes if the Platform's issuer is backed by a
SPIFFE/WIMSE-style workload identity plane rather than operated as a
standalone OAuth issuer.</t>
      </section>
      <section anchor="scope">
        <name>Scope</name>
        <t>In scope: agents acting on their own behalf (<xref target="AIMS"/>, Section 10.4.2).  Out
of scope: on-behalf-of access, legacy integration via static credentials,
runtime attestation, agent-to-agent protocols.  This profile deliberately
does not specify on-behalf-of flows; the design is intended to compose with
delegation mechanisms in which the agent appears as the actor rather than
the subject (e.g., the act claim and actor_token parameter of <xref target="RFC8693"/>,
or <xref target="IDJAG"/>), and that composition is left to future documents.</t>
      </section>
    </section>
    <section anchor="conventions-and-terminology">
      <name>Conventions and Terminology</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?>

<dl>
        <dt>Agent Platform ("Platform"):</dt>
        <dd>
          <t>The service that hosts Agents and operates the per-tenancy issuers that
vouch for them.</t>
        </dd>
        <dt>Agent:</dt>
        <dd>
          <t>A hosted workload with its own Agent Identifier, context, and
configuration.</t>
        </dd>
        <dt>Agent Property:</dt>
        <dd>
          <t>A Platform-asserted attribute carried as a claim in the authorization
grant.</t>
        </dd>
        <dt>Authorization Server (AS):</dt>
        <dd>
          <t>The OAuth authorization server at which Agents present authorization
grants and obtain access tokens; commonly, but not necessarily, operated
by the same vendor as the Resource Server it protects.</t>
        </dd>
        <dt>Resource Server (RS):</dt>
        <dd>
          <t>The service holding customer resources, accessed with the access tokens
the Authorization Server issues.</t>
        </dd>
        <dt>Enterprise IdP:</dt>
        <dd>
          <t>The customer's identity provider (optional).</t>
        </dd>
        <dt>Customer Administrator:</dt>
        <dd>
          <t>The human who performs one-time trust establishment.</t>
        </dd>
      </dl>
    </section>
    <section anchor="deployment-model">
      <name>Deployment Model</name>
      <t>TODO: diagram.  One-time trust establishment by the Customer Administrator
(<xref target="trust"/>); agent creation by end users with no interaction with the
Resource Server (<xref target="instantiation"/>); per-request JWT authorization grant
(<xref target="authorization-grant"/>).</t>
    </section>
    <section anchor="identity-model">
      <name>Agent Identity Model</name>
      <t>An Agent's identity has three units: the tenancy's issuer, which signs
assertions about the Agent; the Agent Identifier, opaque, unique within the
issuer, immutable, and never reassigned, carried as the assertion's sub
(<xref target="authorization-grant"/>); and claims, carrying everything else
(<xref target="properties"/>).  Renaming an Agent <bcp14>MUST NOT</bcp14> change its Agent Identifier.
Resource Servers <bcp14>MUST NOT</bcp14> parse or pattern-match the Agent Identifier for
authorization; single-agent policy is an exact match on it.</t>
      <t>The Agent Identifier <bcp14>MAY</bcp14> be, and is <bcp14>RECOMMENDED</bcp14> to be, a Workload
Identifier URI <xref target="WIMSE-ID"/> with an opaque path; a bare opaque string is also
permitted.  URI form costs no opacity -- the path remains meaningful only to
the issuing Platform -- and carries the trust boundary inside the
identifier's authority component, which is what relying parties that
evaluate only subject and audience need (<xref target="oi"/>).  When the Agent Identifier
is a URI, the Authorization Server validates its authority component against
the allowlisted issuer's tenancy once, at token issuance; Resource Servers
treat the complete identifier as an opaque, exact-match string regardless of
form and <bcp14>MUST NOT</bcp14> derive trust from its components.</t>
    </section>
    <section anchor="authorization-grant">
      <name>Authorization Grant</name>
      <t>The Agent obtains access tokens from the Authorization Server by
presenting a JWT as an authorization grant per <xref target="RFC7523"/>,
Section 2.1, issued by the Platform as a third party in the sense of
<xref target="RFC7521"/>, Section 3.  The token request carries
<tt>grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer</tt>, the JWT in the
assertion parameter, and the target resource in the resource parameter
<xref target="RFC8707"/>.  This profile deliberately does not specify the OAuth client
identity or attach semantics to <tt>client_id</tt>.  In the simplest deployment the
token request is made without client authentication.  Deployments <bcp14>MAY</bcp14> layer
client authentication on top -- for example, the Platform authenticating as
an OAuth client in its own right with a Client ID Metadata Document <xref target="CIMD"/>
and a <tt>private_key_jwt</tt> client assertion -- a composition that becomes natural
when the authorization grant's issuer is the customer's Enterprise IdP
rather than the Platform (obtained, e.g., by token exchange <xref target="RFC8693"/> with
the IdP).  This document intentionally leaves that composition open rather
than fully specifying it (<xref target="oi"/>).</t>
      <section anchor="authorization-grant-claims">
        <name>JWT Authorization Grant Claims</name>
        <t>The following claims are used within the Workload Authorization Grant JWT:</t>
        <dl>
          <dt><tt>iss</tt>:</dt>
          <dd>
            <t><bcp14>REQUIRED</bcp14> - The issuer identifier of the Platform's per-tenancy issuer
(<xref target="trust"/>).</t>
          </dd>
          <dt><tt>sub</tt>:</dt>
          <dd>
            <t><bcp14>REQUIRED</bcp14> - The Agent Identifier as defined in <xref target="identity-model"/>.</t>
          </dd>
          <dt><tt>aud</tt>:</dt>
          <dd>
            <t><bcp14>REQUIRED</bcp14>. The value <bcp14>SHOULD</bcp14> include both the Authorization Server's
issuer identifier and its token endpoint URL; an Authorization Server
supporting this profile <bcp14>MUST</bcp14> accept an assertion whose <tt>aud</tt> includes either
value (<xref target="RFC7523"/> itself leaves the audience strings to out-of-band
configuration).  <xref target="RFC7523BIS"/> adds the issuer identifier as an audience
option for authorization grants (while restricting client-authentication
assertions, a different slot, to it alone); carrying both values keeps an
assertion valid across deployed and future processing.</t>
          </dd>
          <dt><tt>jti</tt>:</dt>
          <dd>
            <t><bcp14>REQUIRED</bcp14> - Unique ID of this JWT as defined in <xref section="4.1.7" sectionFormat="of" target="RFC7519"/>.</t>
          </dd>
          <dt><tt>exp</tt>:</dt>
          <dd>
            <t><bcp14>REQUIRED</bcp14> - as defined in <xref section="4.1.4" sectionFormat="of" target="RFC7519"/>.</t>
          </dd>
          <dt><tt>iat</tt>:</dt>
          <dd>
            <t><bcp14>REQUIRED</bcp14> - as defined in <xref section="4.1.6" sectionFormat="of" target="RFC7519"/>.</t>
          </dd>
        </dl>
        <t>The assertion is signed under a key in
the issuer's published JWK Set <xref target="RFC7517"/>.  The Authorization Server <bcp14>MUST</bcp14>
resolve the signing key by iss (<xref target="trust"/>), not via a client registration.
The assertion carries the Agent's Properties (<xref target="properties"/>), and the
Authorization Server <bcp14>MUST</bcp14> make them available to the Resource Server's
authorization decision.</t>
        <t>Authorization Servers supporting this profile <bcp14>MUST</bcp14>
include <tt>urn:ietf:params:oauth:grant-type:jwt-bearer</tt> in <tt>grant_types_supported</tt>
in their metadata <xref target="RFC8414"/>.</t>
        <t><xref target="fig-token-request"/> shows an example token request (with extra line
breaks for display purposes only):</t>
        <figure anchor="fig-token-request">
          <name>Example token request</name>
          <artwork><![CDATA[
POST /token HTTP/1.1
Host: as.saas.example
Content-Type: application/x-www-form-urlencoded

grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Ajwt-bearer
&assertion=eyJhbGciOiJFUzI1NiIsImtpZCI6IjIwMjYtMDctMTQi...
&resource=https%3A%2F%2Fapi.saas.example%2F
]]></artwork>
        </figure>
        <t><xref target="fig-assertion-claims"/> shows the decoded claims of the assertion carried
in that request; name, namespace, groups, roles, and ctx are Agent
Properties (<xref target="properties"/>):</t>
        <figure anchor="fig-assertion-claims">
          <name>Example assertion claims</name>
          <artwork><![CDATA[
{
  "iss": "https://acme.agents.platform.example",
  "sub": "wimse://acme.agents.platform.example/agent/7f3d9a2e",
  "aud": ["https://as.saas.example",
          "https://as.saas.example/token"],
  "exp": 1785271980,
  "iat": 1785271680,
  "jti": "7d0f5a2b-93c8-4f0e-9c33-1b6a0e6d5f10",
  "name": "Support Triage Agent",
  "namespace": "acme/support",
  "groups": ["support-eng"],
  "roles": ["responder"],
  "ctx": "channel:C0123456789"
}
]]></artwork>
        </figure>
        <t>The Authorization Server <bcp14>MUST NOT</bcp14> issue refresh tokens, as access tokens are short-lived and
audience-restricted <xref target="RFC8707"/>.  Assertion lifetimes <bcp14>SHOULD</bcp14> be as short as
system availability constraints allow.</t>
        <t>TODO: proof-of-possession -- the assertion is a bearer grant; options are
sender-constrained access tokens, or attestation-based client authentication
<xref target="ATTEST-CLIENT-AUTH"/> (Platform as client attester, agent instance signs the
PoP JWT) if agent instances hold keys.</t>
      </section>
    </section>
    <section anchor="trust">
      <name>Trust Establishment</name>
      <t>The Customer Administrator once records, at the Authorization Server, an
allowlist entry binding one issuer to one tenancy: the issuer identifier, from which
the issuer's metadata and JWK Set location are discovered per
<xref target="OIDC-DISCOVERY"/> (retrieved over https <xref target="RFC9525"/>), and the tenancy's initial
Property-to-permission mapping for the Resource Server (<xref target="properties"/>).  Establishment is by
reference; no keys or secrets are transferred, and key rotation is by JWK Set
update alone.  Platforms serving multiple customers <bcp14>MUST</bcp14> use a distinct
issuer per tenancy: the issuer is the trust boundary the allowlist expresses,
and a shared issuer would move tenancy enforcement into claim evaluation at
every Authorization Server -- including relying parties that can evaluate
only subject and audience (<xref target="oi"/>).  The proposed MCP Workload Identity
Federation extension <xref target="MCP-WIF"/> recommends (<bcp14>SHOULD</bcp14>) that authorization
servers rely only on issuing keys bound to a single tenant; this profile deliberately tightens that boundary to a
per-tenancy issuer <bcp14>MUST</bcp14>.</t>
      <t>Multi-issuer operation is scoped by issuer throughout.  An Authorization
Server <bcp14>MUST</bcp14> resolve and cache keys per allowlist entry and <bcp14>MUST NOT</bcp14> merge
key sets across issuers, and it <bcp14>MUST</bcp14> interpret sub and jti only within the scope of the presenting
iss.  A Resource Server that keeps a Property-to-permission mapping
(<xref target="properties"/>) likewise scopes it by iss.
An Agent Identifier is unique within its issuer, not globally: policy and
audit records are keyed on the (iss, sub) pair, or on the complete URI-form
identifier, which carries the tenancy in its authority component.</t>
    </section>
    <section anchor="instantiation">
      <name>Agent Instantiation</name>
      <t>Creating an Agent is Platform-internal and <bcp14>MUST NOT</bcp14> require any
ahead-of-time interaction with the Resource Server, the Authorization
Server, an Enterprise IdP, or the Customer Administrator.  The Authorization
Server first learns that an Agent exists when the Agent presents its first
authorization grant: it <bcp14>MUST</bcp14> accept a previously-unseen Agent Identifier
presented as sub under an allowlisted issuer, and authorization -- at the
Authorization Server and the Resource Server alike -- is via <xref target="properties"/>,
never identifier structure.  Agents are not
dynamically registered clients <xref target="RFC7591"/>.</t>
      <t>Optionally, a Platform <bcp14>MAY</bcp14> project Agents into an Enterprise IdP (e.g., as
<xref target="SCIM-AGENT"/> resources) for inventory and lifecycle governance.  Such
projection <bcp14>MUST NOT</bcp14> be required ahead of time: performing it just in time,
including synchronously during first token issuance, is acceptable.  TODO:
BYO-IdP deployment model.</t>
    </section>
    <section anchor="properties">
      <name>Agent Properties and Authorization</name>
      <t>TODO.  Initial standard property claims: name, a human-readable display
name as in an OpenID Connect ID Token <xref target="OIDC-CORE"/> (mutable, and never a
key for authorization or attribution -- that is the Agent Identifier);
namespace, groups, roles, and an optional ctx naming the collaboration
context; additional attributes use collision-resistant claim names per
<xref target="RFC7519"/>, Section 4.3.  TODO: whether an Agent needs a human-usable,
"@"-referenceable address within the Platform, analogous to sharing a
document with an email address, distinct from both name and the opaque
Agent Identifier; noted here, deliberately unsolved.  A Resource
Server keeps a local, administrator-controlled mapping from Property
predicates to permissions; possession of a Property is not itself
authorization.  Deny semantics do not travel.  TODO: worked example.</t>
    </section>
    <section anchor="attribution">
      <name>Attribution</name>
      <t>TODO.  The Authorization Server logs jti at token issuance; Resource
Servers log the Agent Identifier (sub) and referenced Properties; internal fan-out via <xref target="TXN-TOKENS"/> rather than
forwarding the access token.</t>
    </section>
    <section anchor="lifecycle">
      <name>Retirement and Lifecycle</name>
      <t>Retirement is expressed by cessation: the Platform stops signing assertions
for a retired Agent, so residual access is bounded by the remaining lifetime
of any outstanding assertion plus the lifetime of any access token already
issued.  Assertion and access-token lifetimes <bcp14>SHOULD</bcp14> be chosen with this
bound in mind.  No signal yet informs an Authorization Server that an Agent
Identifier is permanently retired; that gap is shared with neighboring
workload identity ecosystems, whose common baseline is likewise short
credential lifetimes plus ceasing issuance (<xref target="oi"/>).</t>
      <t>Broader lifecycle management is out of scope for this document.  In
particular, resources that come to be owned by an Agent (documents, records,
long-lived artifacts) need succession planning when the Agent is retired;
this profile makes the retirement event's access consequences legible, but
does not manage its downstream effects.</t>
    </section>
    <section anchor="oi">
      <name>Open Issues</name>
      <ul spacing="normal">
        <li>
          <t>Relying parties that authorize only on subject and audience (e.g., cloud
IAM federation trust policies) and cannot evaluate Property predicates;
URI-form Agent Identifiers (<xref target="identity-model"/>) carry the tenancy inside
the identifier for this case, but the residual gap is unassessed.</t>
        </li>
        <li>
          <t>Proof-of-possession: the authorization grant is bearer; see
<xref target="authorization-grant"/>.</t>
        </li>
        <li>
          <t>Issuer placement: issuer operated by the Platform versus by the Enterprise
IdP, with the Platform obtaining assertions by token exchange <xref target="RFC8693"/>
with the IdP; client authentication is redundant in the former case and
load-bearing in the latter; what, if anything, client_id means in each
case.</t>
        </li>
        <li>
          <t>Staleness and retirement signaling in place of per-agent revocation
(issuer- or Property-scoped epoch versus event push versus lifetime
alone, <xref target="lifecycle"/>); a gap shared with neighboring workload identity
ecosystems.</t>
        </li>
        <li>
          <t>Addressing: whether an Agent needs a human-usable, "@"-referenceable
address (to share a resource with an agent the way one shares with an
email address), distinct from the display name and the Agent Identifier.</t>
        </li>
      </ul>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>TODO: unseen agent identifiers under trusted issuers; issuer allowlist as the
trust boundary; tenant confusion at multi-issuer Authorization Servers (<xref target="trust"/>);
bearer-assertion theft and assertion lifetime; Platform as root of trust;
credential non-exposure to the model; automated trust establishment.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions at this time; provisional claim names
(<xref target="properties"/>) may be registered in a future revision.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC7517">
          <front>
            <title>JSON Web Key (JWK)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>A JSON Web Key (JWK) is a JavaScript Object Notation (JSON) data structure that represents a cryptographic key. This specification also defines a JWK Set JSON data structure that represents a set of JWKs. Cryptographic algorithms and identifiers for use with this specification are described in the separate JSON Web Algorithms (JWA) specification and IANA registries established by that specification.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7517"/>
          <seriesInfo name="DOI" value="10.17487/RFC7517"/>
        </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="RFC7521">
          <front>
            <title>Assertion Framework for OAuth 2.0 Client Authentication and Authorization Grants</title>
            <author fullname="B. Campbell" initials="B." surname="Campbell"/>
            <author fullname="C. Mortimore" initials="C." surname="Mortimore"/>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="Y. Goland" initials="Y." surname="Goland"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>This specification provides a framework for the use of assertions with OAuth 2.0 in the form of a new client authentication mechanism and a new authorization grant type. Mechanisms are specified for transporting assertions during interactions with a token endpoint; general processing rules are also specified.</t>
              <t>The intent of this specification is to provide a common framework for OAuth 2.0 to interwork with other identity systems using assertions and to provide alternative client authentication mechanisms.</t>
              <t>Note that this specification only defines abstract message flows and processing rules. In order to be implementable, companion specifications are necessary to provide the corresponding concrete instantiations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7521"/>
          <seriesInfo name="DOI" value="10.17487/RFC7521"/>
        </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="RFC8707">
          <front>
            <title>Resource Indicators for OAuth 2.0</title>
            <author fullname="B. Campbell" initials="B." surname="Campbell"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
            <date month="February" year="2020"/>
            <abstract>
              <t>This document specifies an extension to the OAuth 2.0 Authorization Framework defining request parameters that enable a client to explicitly signal to an authorization server about the identity of the protected resource(s) to which it is requesting access.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8707"/>
          <seriesInfo name="DOI" value="10.17487/RFC8707"/>
        </reference>
        <reference anchor="RFC9525">
          <front>
            <title>Service Identity in TLS</title>
            <author fullname="P. Saint-Andre" initials="P." surname="Saint-Andre"/>
            <author fullname="R. Salz" initials="R." surname="Salz"/>
            <date month="November" year="2023"/>
            <abstract>
              <t>Many application technologies enable secure communication between two entities by means of Transport Layer Security (TLS) with Internet Public Key Infrastructure using X.509 (PKIX) certificates. This document specifies procedures for representing and verifying the identity of application services in such interactions.</t>
              <t>This document obsoletes RFC 6125.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9525"/>
          <seriesInfo name="DOI" value="10.17487/RFC9525"/>
        </reference>
        <reference anchor="AIMS">
          <front>
            <title>AI Agent Authentication and Authorization</title>
            <author fullname="Pieter Kasselman" initials="P." surname="Kasselman">
              <organization>Defakto Security</organization>
            </author>
            <author fullname="Jeff Lombardo" initials="J." surname="Lombardo">
              <organization>AWS</organization>
            </author>
            <author fullname="Yaroslav Rosomakho" initials="Y." surname="Rosomakho">
              <organization>Zscaler</organization>
            </author>
            <author fullname="Brian Campbell" initials="B." surname="Campbell">
              <organization>Ping Identity</organization>
            </author>
            <author fullname="Nick Steele" initials="N." surname="Steele">
              <organization>OpenAI</organization>
            </author>
            <author fullname="Aaron Parecki" initials="A." surname="Parecki">
              <organization>Okta</organization>
            </author>
            <date day="6" month="July" year="2026"/>
            <abstract>
              <t>   This document proposes best practices for authentication and
   authorization of AI agent interactions.  It leverages existing
   standards such as the Workload Identity in Multi-System Environments
   (WIMSE) architecture and OAuth 2.0 family of specifications.  Rather
   than defining new protocols, this document describes how existing and
   widely deployed standards can be applied or extended to establish
   agent authentication and authorization.  By doing so, it aims to
   provide a framework within which to use existing standards, identify
   gaps and guide future standardization efforts for agent
   authentication and authorization.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-klrc-aiagent-auth-03"/>
        </reference>
        <reference anchor="WIMSE-ID">
          <front>
            <title>Workload Identifier</title>
            <author fullname="Yaroslav Rosomakho" initials="Y." surname="Rosomakho">
              <organization>Zscaler</organization>
            </author>
            <author fullname="Joseph A. Salowey" initials="J. A." surname="Salowey">
              <organization>Palo Alto Networks</organization>
            </author>
            <date day="6" month="July" year="2026"/>
            <abstract>
              <t>   This document defines a canonical identifier for workloads, referred
   to as the Workload Identifier.  A Workload Identifier is a URI that
   uniquely identifies a workload within the context of a specific trust
   domain.  This identifier can be embedded in Workload Identity
   Credentials, including X.509 certificates and JWT-based tokens, to
   support authentication, authorization, and policy enforcement across
   diverse systems.  The Workload Identifier format ensures
   interoperability, facilitates secure identity federation, and enables
   consistent identity semantics.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-wimse-identifier-03"/>
        </reference>
        <reference anchor="OIDC-DISCOVERY" target="https://openid.net/specs/openid-connect-discovery-1_0.html">
          <front>
            <title>OpenID Connect Discovery 1.0 incorporating errata set 2</title>
            <author initials="N." surname="Sakimura">
              <organization/>
            </author>
            <author initials="J." surname="Bradley">
              <organization/>
            </author>
            <author initials="M." surname="Jones">
              <organization/>
            </author>
            <author initials="E." surname="Jay">
              <organization/>
            </author>
            <date year="2023" month="December"/>
          </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="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="RFC7523BIS">
          <front>
            <title>Updates to OAuth 2.0 JSON Web Token (JWT) Client Authentication and Assertion-Based Authorization Grants</title>
            <author fullname="Michael B. Jones" initials="M. B." surname="Jones">
              <organization>Self-Issued Consulting</organization>
            </author>
            <author fullname="Brian Campbell" initials="B." surname="Campbell">
              <organization>Ping Identity</organization>
            </author>
            <author fullname="Chuck Mortimore" initials="C." surname="Mortimore">
              <organization>Disney</organization>
            </author>
            <author fullname="Filip Skokan" initials="F." surname="Skokan">
              <organization>Okta</organization>
            </author>
            <date day="28" month="April" year="2026"/>
            <abstract>
              <t>   This document updates RFC7521, RFC7522, RFC7523 and RFC9126 with
   respect to the treatment of audience values in OAuth 2.0 Client
   Assertion Authentication and Assertion-based Authorization Grants to
   address a security vulnerability identified in the previous
   requirements for those audience values in multiple OAuth 2.0
   specifications.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-oauth-rfc7523bis-11"/>
        </reference>
        <reference anchor="OIDC-CORE" target="https://openid.net/specs/openid-connect-core-1_0.html">
          <front>
            <title>OpenID Connect Core 1.0 incorporating errata set 2</title>
            <author initials="N." surname="Sakimura">
              <organization/>
            </author>
            <author initials="J." surname="Bradley">
              <organization/>
            </author>
            <author initials="M." surname="Jones">
              <organization/>
            </author>
            <author initials="B." surname="de Medeiros">
              <organization/>
            </author>
            <author initials="C." surname="Mortimore">
              <organization/>
            </author>
            <date year="2023" month="December"/>
          </front>
        </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="WIMSE-ARCH">
          <front>
            <title>Workload Identity in a Multi System Environment (WIMSE) Architecture</title>
            <author fullname="Joseph A. Salowey" initials="J. A." surname="Salowey">
              <organization>Palo Alto Networks</organization>
            </author>
            <author fullname="Yaroslav Rosomakho" initials="Y." surname="Rosomakho">
              <organization>Zscaler</organization>
            </author>
            <author fullname="Hannes Tschofenig" initials="H." surname="Tschofenig">
              <organization>University of the Bundeswehr Munich</organization>
            </author>
            <date day="6" month="July" year="2026"/>
            <abstract>
              <t>   The increasing prevalence of cloud computing and micro service
   architectures has led to the rise of complex software functions being
   built and deployed as workloads, where a workload is defined as
   software executing for a specific purpose, potentially comprising one
   or more running instances.  This document discusses an architecture
   for designing and standardizing protocols and payloads for conveying
   workload identity and security context information.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-wimse-arch-08"/>
        </reference>
        <reference anchor="CIMD">
          <front>
            <title>OAuth Client ID Metadata Document</title>
            <author fullname="Aaron Parecki" initials="A." surname="Parecki">
              <organization>Okta</organization>
            </author>
            <author fullname="Emelia Smith" initials="E." surname="Smith">
         </author>
            <date day="6" month="July" year="2026"/>
            <abstract>
              <t>   This specification defines a mechanism through which an OAuth client
   can identify itself to authorization servers, without prior dynamic
   client registration or other existing registration.  This is through
   the usage of a URL as a client_id in an OAuth flow, where the URL
   refers to a document containing the necessary client metadata,
   enabling the authorization server to fetch the metadata about the
   client as needed.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-oauth-client-id-metadata-document-02"/>
        </reference>
        <reference anchor="ATTEST-CLIENT-AUTH">
          <front>
            <title>OAuth 2.0 Attestation-Based Client Authentication</title>
            <author fullname="Tobias Looker" initials="T." surname="Looker">
              <organization>MATTR</organization>
            </author>
            <author fullname="Paul Bastian" initials="P." surname="Bastian">
              <organization>Bundesdruckerei</organization>
            </author>
            <author fullname="Christian Bormann" initials="C." surname="Bormann">
              <organization>SPRIND</organization>
            </author>
            <date day="6" month="July" year="2026"/>
            <abstract>
              <t>   This specification defines an extension to the OAuth 2.0 protocol
   (RFC 6749) that enables a client instance to include a key-bound
   attestation when interacting with an Authorization Server or Resource
   Server.  This mechanism allows a client instance to prove its
   authenticity verified by a client attester without revealing its
   target audience to that attester.  It may also serve as a mechanism
   for client authentication as per OAuth 2.0.

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

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-oauth-transaction-tokens-11"/>
        </reference>
        <reference anchor="SCIM-AGENT">
          <front>
            <title>AI Agent Resource Extension for the System for Cross-domain Identity Management (SCIM)</title>
            <author fullname="Mark Wahl" initials="M." surname="Wahl">
              <organization>Microsoft</organization>
            </author>
            <author fullname="Danny Zollner" initials="D." surname="Zollner">
              <organization>Okta</organization>
            </author>
            <author fullname="Pamela Dingle" initials="P." surname="Dingle">
              <organization>Microsoft</organization>
            </author>
            <author fullname="Ismael Kazzouzi" initials="I." surname="Kazzouzi">
              <organization>Nextident</organization>
            </author>
            <date day="5" month="June" year="2026"/>
            <abstract>
              <t>   The System for Cross-domain Identity Management (SCIM) specifications
   are designed to make identity management in cloud-based applications
   and services easier.

   This document provides a platform-neutral schema for representing AI
   agents' identities in SCIM JSON format, enabling them to be
   transferred using the SCIM protocol between a client and service
   provider.  This establishes an agentic identity so that an agent can
   subsequently be authenticated and authorized to interact with the
   service.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-wzdk-scim-agent-resource-00"/>
        </reference>
        <reference anchor="IDJAG">
          <front>
            <title>Identity Assertion JWT Authorization Grant</title>
            <author fullname="Aaron Parecki" initials="A." surname="Parecki">
              <organization>Okta</organization>
            </author>
            <author fullname="Karl McGuinness" initials="K." surname="McGuinness">
              <organization>Independent</organization>
            </author>
            <author fullname="Brian Campbell" initials="B." surname="Campbell">
              <organization>Ping Identity</organization>
            </author>
            <date day="21" month="May" year="2026"/>
            <abstract>
              <t>   This specification provides a mechanism for an application to use an
   identity assertion to obtain an access token for a third-party API by
   coordinating through an identity provider that the downstream
   Resource Authorization Server already trusts for single sign-on
   (SSO), using Token Exchange [RFC8693] and JWT Profile for OAuth 2.0
   Authorization Grants [RFC7523].  This pattern is informally referred
   to as Cross-App Access (XAA).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-oauth-identity-assertion-authz-grant-04"/>
        </reference>
        <reference anchor="MCP-WIF" target="https://github.com/modelcontextprotocol/ext-auth/pull/10">
          <front>
            <title>Workload Identity Federation (proposed Model Context Protocol ext-auth extension, pull request 10)</title>
            <author>
              <organization>Model Context Protocol Community</organization>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
      </references>
    </references>
    <?line 471?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The author thanks Kevin Kelley, Aaron Parecki, Brian Campbell, Pieter
Kasselman, Nick Steele, Emily Lauber, and Maxwell Gerber for discussions that shaped this
document.  This profile builds directly on the Agent Identity Management
System framework <xref target="AIMS"/> and would not exist without it.  Further
acknowledgments will be added in a future revision.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
QeUi6Yzjv3s58r8EhUTJh1QAAA==

-->

</rfc>
