<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.31 (Ruby 4.0.1) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>

<?rfc compact="yes"?>

<rfc ipr="trust200902" docName="draft-barney-caam-00" category="info" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="CAAM">Contextual Agent Authorization Mesh (CAAM)</title>

    <author initials="J. M." surname="Barney" fullname="Jonathan M. Barney">
      <organization>Independent</organization>
      <address>
        <postal>
          <street></street>
          <city></city>
          <region></region>
          <code></code>
          <country>US</country>
        </postal>
        <email>jonathan.barney@gmail.com</email>
        <uri>https://github.com/jmbarney5/Contextual-Agent-Authorization-Mesh</uri>
      </address>
    </author>
    <author initials="R." surname="Pioli" fullname="Roberto Pioli">
      <organization>Independent</organization>
      <address>
        <postal>
          <street></street>
          <city></city>
          <region></region>
          <code></code>
          <country>IT</country>
        </postal>
        <email>roberto.pioli@gmail.com</email>
        <uri>https://github.com/roberto-pioli/agent-registration-discovery</uri>
      </address>
    </author>
    <author initials="D." surname="Watson" fullname="Darron Watson">
      <organization>Independent</organization>
      <address>
        <postal>
          <street></street>
          <city></city>
          <region></region>
          <code></code>
          <country>US</country>
        </postal>
        <email>drwatson0874@gmail.com</email>
      </address>
    </author>

    <date year="2026" month="February" day="24"/>

    <area>Security</area>
    <workgroup>TBD</workgroup>
    <keyword>authorization</keyword> <keyword>agents</keyword> <keyword>context</keyword> <keyword>delegation</keyword> <keyword>attestation</keyword>

    <abstract>


<?line 104?>

<t>This document specifies the Contextual Agent
Authorization Mesh (CAAM), an authorization profile composable with
the Agent Registration and Discovery Protocol (ARDP)
I-D.pioli-agent-discovery and other discovery mechanisms.  CAAM defines the
Post-Discovery Authorization Handshake: the runtime
authorization layer that governs agent behavior after
an agent has been discovered through ARDP but before
it is permitted to execute tool calls or delegate
authority.</t>

<t>CAAM provides a sidecar-based authorization mediator
for enforcing Relationship-Based Access Control
(ReBAC), purpose-bound delegation, and
cryptographically verifiable intent propagation in
Human-to-Agent (H2A) and Agent-to-Agent (A2A) flows.
It bridges identity provenance frameworks -- the
Interoperability Profiling for Secure Identity in the
Enterprise (IPSIE) IPSIE and the Secure Production
Identity Framework for Everyone (SPIFFE) SPIFFE --
with the ARDP control plane, leveraging OpenID XAA for
coarse-grained delegation, a Knowledge Graph for
real-time relationship inference, and the Remote
ATtestation procedureS (RATS) architecture RFC9334
for cryptographically verifiable attestation of agent
execution environments.</t>

<t>The Session Context Object (SCO) defined herein is
encoded as a JSON Web Token (JWT) RFC7519 or a
CBOR Web Token (CWT) RFC8392, and carries a new
"ctx" (Contextual Assertion) claim that binds the
agent's delegated authority to a specific purpose,
session, and trust chain.</t>



    </abstract>



  </front>

  <middle>


<?line 139?>

<section anchor="introduction"><name>Introduction</name>

<t>The evolution of enterprise infrastructure toward
autonomous and semi-autonomous agentic systems has
introduced a fundamental gap in identity and access
management.  Traditional security architectures,
designed for static workloads and direct
human-to-service interactions, are insufficient for
managing the non-deterministic, ephemeral, and
multi-hop nature of Large Language Model (LLM)
agents.</t>

<t>Current security models address identity at two
distinct layers: the human user (via OpenID Connect
and IPSIE IPSIE) and the machine workload (via
SPIFFE SPIFFE).  Autonomous agents occupy a
hybrid space -- a software workload that possesses
its own identity but operates with the delegated
authority of a human user or another agent.  This
hybridity creates a gap where traditional Role-Based
Access Control (RBAC) fails to account for the
ephemeral and purpose-driven nature of agentic
tasks.</t>

<texttable>
      <ttcol align='left'>Security Dimension</ttcol>
      <ttcol align='left'>Workload</ttcol>
      <ttcol align='left'>Human</ttcol>
      <ttcol align='left'>Agent</ttcol>
      <c>Identity Type</c>
      <c>SVID</c>
      <c>User ID</c>
      <c>Composite</c>
      <c>Lifespan</c>
      <c>Long-lived</c>
      <c>Session</c>
      <c>Ephemeral</c>
      <c>Decision Logic</c>
      <c>Deterministic</c>
      <c>Human</c>
      <c>Probabilistic</c>
      <c>Trust Anchor</c>
      <c>Attestor</c>
      <c>IdP</c>
      <c>Discovery+Ctx</c>
      <c>Authorization</c>
      <c>Static</c>
      <c>Role</c>
      <c>Contextual</c>
</texttable>

<t>As agents move from simple request-response patterns
to independent reasoning and tool invocation, the
risk of "identity dilution" and "authorization loops"
grows.  Without a dedicated mesh to manage these
interactions, organizations face a choice between
over-privileging agents -- expanding the blast radius
of potential compromises -- or restricting them to
functional uselessness.  CAAM resolves this tension
by enforcing policy at the most granular level of
the agent's internal reasoning loop.</t>

<section anchor="relationship-to-existing-standards"><name>Relationship to Existing Standards</name>

<t>CAAM is not intended as a replacement for existing
identity, authorization, or attestation protocols.
It functions as an orchestration profile -- a
connective layer that composes outputs from multiple
mature standards into a single, coherent
authorization decision tailored to autonomous agent
ecosystems.</t>

<t>CAAM occupies three complementary roles:</t>

<t><list style="symbols">
  <t>GNAP Extension for Non-Deterministic Clients:
The Grant Negotiation and Authorization Protocol
(GNAP) RFC9635 assumes a client capable of
participating in structured negotiation flows.
Autonomous agents are non-deterministic clients
whose resource requirements emerge dynamically
during multi-step reasoning.  CAAM extends the
GNAP model by introducing the Session Context
Object (SCO) as a purpose-bound grant envelope
that constrains the agent's evolving resource
requests to the boundaries of the original
human intent.</t>
  <t>Policy Enforcement Point for RATS:  The RATS
architecture RFC9334 defines the roles of
Attester, Verifier, and Relying Party but does
not prescribe where in an application's request
path the Attestation Result SHOULD be consumed
or how it SHOULD influence fine-grained
authorization decisions.  The CAAM sidecar
serves as a dedicated Policy Enforcement Point
(PEP) that ingests RATS Attestation Results and
combines them with identity provenance and data
sensitivity signals to produce the Contextual
Risk Score (CRS) defined in
contextual-risk-scoring.</t>
  <t>Trust Framework for Multi-Hop Delegation:
OAuth 2.1 and Token Exchange RFC8693 provide
mechanisms for single-hop delegation and
impersonation.  They do not natively address the
compound trust problem arising in N-hop agentic
chains (User -&gt; Agent A -&gt; Agent B -&gt; Agent C),
where each intermediate agent introduces a new
trust boundary.  CAAM provides Scope
Attenuation, Depth-Limited Tokens, and
Intent-Binding to ensure that delegated authority
degrades gracefully rather than accumulating
across hops.</t>
</list></t>

</section>
<section anchor="the-post-discovery-authorization-handshake"><name>The Post-Discovery Authorization Handshake</name>

<t>CAAM provides the Post-Discovery Authorization
Handshake for I-D.pioli-agent-discovery.  The
ARDP control plane enables an orchestrating client
to discover an agent's endpoint, capabilities, and
network address.  However, ARDP does not prescribe
the authorization protocol that governs the agent's
behavior once a session is established.</t>

<t>CAAM fills this gap.  After an ARDP RESOLVE
operation returns an agent's endpoint, the CAAM
sidecar mediates a mutual attestation handshake
between the client and the discovered agent before
any tool call is permitted.  This handshake
establishes:</t>

<t><list style="numbers" type="1">
  <t>Mutual identity verification via SPIFFE SVIDs
and RATS Attestation Evidence.</t>
  <t>A purpose-bound Session Context Object (SCO)
that constrains the agent's authority to the
specific task.</t>
  <t>A JIT Scoped Token (via the Ghost Token
Pattern) that replaces any long-lived
credential with a short-lived, nonce-bound,
single-use token.</t>
</list></t>

<t>Without CAAM, an ARDP-discovered agent could be
invoked with a static bearer token that carries no
purpose binding, no environmental attestation, and
no delegation-depth limit -- the failure mode
observed in real-world incidents where agents used
static bearer tokens without purpose binding.</t>

</section>
<section anchor="the-multi-hop-intent-binding-problem"><name>The Multi-Hop Intent Binding Problem</name>

<t>The core standardization gap that CAAM addresses is
Multi-Hop Intent Binding: the problem of proving,
at each hop in a delegation chain, that the current
agent's request remains within the semantic bounds
of the original user's intent -- without
over-privileging the entire chain.</t>

<t>Existing standards address adjacent concerns but
leave this problem unresolved:</t>

<t><list style="symbols">
  <t>OAuth XAA handles coarse-grained identity
delegation across application boundaries.  It
establishes who is delegating what scope to
which application.  However, XAA does not track
whether a sub-delegated agent three hops
downstream is still operating within the purpose
for which the original grant was issued.</t>
  <t>RATS RFC9334 provides cryptographic
assurance of the execution environment's
integrity.  It establishes where the agent is
running and whether that environment is
trustworthy.  However, RATS Evidence contains no
semantic information about the agent's current
task or whether that task aligns with the
original user's intent.</t>
  <t>CAEP/SSE (Shared Signals and Events) enables
reactive session-level signals (e.g., "user
logged out," "device compromised").  These
signals operate at the granularity of sessions
and are propagated asynchronously.  They do not
provide the synchronous, per-request intent
verification required to gate individual tool
calls within a multi-hop agentic flow.</t>
</list></t>

<t>CAAM bridges this gap by binding each request in
the delegation chain to a cryptographically signed
Intent-Signature derived from the original SCO,
verified at every hop by the CAAM sidecar before a
JIT Scoped Token is synthesized.</t>

<section anchor="standardization-gap-analysis"><name>Standardization Gap Analysis</name>

<t>The following table identifies the authorization
dimensions relevant to autonomous agent ecosystems
and maps the coverage provided by existing standards
against the extensions introduced by CAAM.</t>

<texttable>
      <ttcol align='left'>Dimension</ttcol>
      <ttcol align='left'>OAuth/GNAP</ttcol>
      <ttcol align='left'>RATS</ttcol>
      <ttcol align='left'>CAEP</ttcol>
      <ttcol align='left'>CAAM</ttcol>
      <c>Delegation</c>
      <c>1-hop</c>
      <c>N/A</c>
      <c>N/A</c>
      <c>N-hop+Scope Attenuation</c>
      <c>Env Trust</c>
      <c>N/A</c>
      <c>HW/SW</c>
      <c>N/A</c>
      <c>CRS input</c>
      <c>Risk Signals</c>
      <c>N/A</c>
      <c>N/A</c>
      <c>Async</c>
      <c>Sync narrowing</c>
      <c>Intent</c>
      <c>Static</c>
      <c>Env-only</c>
      <c>None</c>
      <c>Per-request</c>
      <c>Credentials</c>
      <c>Bearer</c>
      <c>N/A</c>
      <c>N/A</c>
      <c>Ghost Token</c>
      <c>Inference</c>
      <c>N/A</c>
      <c>N/A</c>
      <c>N/A</c>
      <c>Firewall</c>
      <c>Granularity</c>
      <c>Grant</c>
      <c>Attestation</c>
      <c>Session</c>
      <c>Request</c>
      <c>Decision</c>
      <c>Scope</c>
      <c>Pass/fail</c>
      <c>Event</c>
      <c>CRS tiers</c>
</texttable>

</section>
</section>
</section>
<section anchor="terminology"><name>Terminology</name>

<t>The key words "MUST", "MUST NOT", "REQUIRED",
"SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT",
"RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted
as described in BCP 14 RFC2119 RFC8174 when,
and only when, they appear in all capitals, as
shown here.</t>

<dl>
  <dt>Contextual Mesh:</dt>
  <dd>
    <t>A decentralized, sidecar-based authorization
layer that enforces purpose-bound and
context-aware access controls across a network
of autonomous agents.</t>
  </dd>
  <dt>Agent Principal:</dt>
  <dd>
    <t>The composite identity of an agent,
incorporating its hardware-attested workload
identity (SPIFFE ID) and its delegated human
user context (IPSIE claims).</t>
  </dd>
  <dt>Inference Boundary:</dt>
  <dd>
    <t>A documented and machine-enforceable
specification that defines the permissible and
prohibited conclusions an agent MAY draw from
the combination of authorized data sources.</t>
  </dd>
  <dt>Session Context Object (SCO):</dt>
  <dd>
    <t>A cryptographically signed, transient data
structure encoded as a JWT RFC7519 or CWT
RFC8392 that encapsulates the intent,
purpose, and provenance of an agentic
interaction.</t>
  </dd>
  <dt>Tool-Call Interception:</dt>
  <dd>
    <t>The process by which an authorization sidecar
monitors and regulates the outbound network/API
request calls made by an agent.
steps of an LLM agent to prevent policy
violations.</t>
  </dd>
  <dt>Narrowed Persona:</dt>
  <dd>
    <t>The reduced capability set advertised by an
agent after the Resolver applies contextual
filtering based on participant relationships.</t>
  </dd>
  <dt>Ghost Token:</dt>
  <dd>
    <t>A credential management pattern where the raw
delegation token is never exposed to the agent;
instead, the mesh synthesizes a short-lived,
purpose-scoped replacement at the moment of
use.</t>
  </dd>
  <dt>Contextual Risk Score (CRS):</dt>
  <dd>
    <t>A real-valued score S in the range [0, 1]
assigned to every request within the mesh,
encoding the combined risk of provenance,
environment trust, and data sensitivity.</t>
  </dd>
  <dt>Intent-Signature:</dt>
  <dd>
    <t>A cryptographic binding between the original
user's purpose (as encoded in the SCO) and each
subsequent request in a delegation chain,
implemented as a Chained JWS RFC7515.</t>
  </dd>
</dl>

</section>
<section anchor="protocol-overview"><name>Protocol Overview</name>

<section anchor="architectural-foundations"><name>Architectural Foundations</name>

<t>CAAM leverages the existing maturity of identity
provenance standards while extending them to meet
agentic requirements.</t>

<section anchor="spiffespire-as-the-workload-identity-root"><name>SPIFFE/SPIRE as the Workload Identity Root</name>

<t>The Secure Production Identity Framework for
Everyone (SPIFFE) SPIFFE provides a
platform-agnostic standard for identifying software
workloads.  Every agent instance in a
CAAM-compliant deployment MUST be registered with a
SPIRE server and issued a SPIFFE Verifiable
Identity Document (SVID), typically in the form of
an X.509 certificate.  This SVID provides the agent
with a non-repudiable identity that is
automatically rotated and cryptographically bound to
the execution environment.  This machine-level
identity is the first layer of the CAAM trust
model.</t>

</section>
<section anchor="ipsie-as-the-human-provenance-layer"><name>IPSIE as the Human Provenance Layer</name>

<t>While SPIFFE identifies the workload, the IPSIE
profiles IPSIE identify the delegating human.
When a human user initiates a task requiring agent
assistance, their IPSIE-compliant identity token
serves as the original source of authority.  CAAM
uses this provenance to bind the agent's workload
identity to the human's session identity, creating
a composite principal.</t>

</section>
<section anchor="ardp-and-the-discovery-authorization-nexus"><name>ARDP and the Discovery-Authorization Nexus</name>

<t>The Agent Registration and Discovery Protocol
(ARDP) I-D.pioli-agent-discovery establishes a
control plane for agents to advertise capabilities
and network endpoints.  CAAM extends ARDP by
introducing "AuthZ-at-Discovery," where the
security capabilities and policy compliance of an
agent are verified before a session is established.</t>

<t>Implementations that support CAAM MUST advertise
the following metadata in the ARDP registry: the
agent's SPIFFE trust domain, supported RATS
Evidence types, Inference Boundary hash, and policy
manifest URI.</t>

</section>
<section anchor="rfc-9334-rats-alignment"><name>RFC 9334 (RATS) Alignment</name>

<t>The CAAM Mesh adopts the RATS architecture
RFC9334.  Within the mesh, the following roles
are defined:</t>

<t><list style="symbols">
  <t>Attester: The Agent or Sub-Agent providing
Evidence.  Every agent in a CAAM-compliant
deployment MUST be capable of producing RATS
Evidence that can be independently verified.
Evidence includes runtime state, TPM 2.0
platform quotes, and signed container image
digests.</t>
  <t>Verifier: The CAAM Sidecar component that
processes Evidence against Endorsements from
the SPIRE trust domain.  The Verifier produces
an Attestation Result that encodes the
trustworthiness of the agent's current
execution environment.</t>
  <t>Relying Party: The Resource Server that
consumes the Attestation Result to authorize
the tool call.  The Relying Party MUST NOT
process raw Evidence; it relies on the
Verifier's signed Attestation Result.</t>
</list></t>

</section>
</section>
<section anchor="the-caam-sidecar-model"><name>The CAAM Sidecar Model</name>

<t>The CAAM sidecar is the core enforcement
mechanism.  It is a lightweight proxy that runs
alongside the agent workload, intercepting all
internal and external communications.</t>

<section anchor="intercepting-the-outbound-tool-calls"><name>Intercepting the Outbound Tool Calls</name>

<t>The tool-call loop is the
fundamental interaction cycle of an autonomous agent:</t>

<t><list style="numbers" type="1">
  <t>Thought: The LLM generates a plan or tool
call.</t>
  <t>Action: The agent executes the tool call.</t>
  <t>Observation: The agent receives results and
reasons further.</t>
</list></t>

<t>The CAAM sidecar MUST intercept this loop at the
transition between Thought and Action.  By acting
as a semantic gateway, the sidecar analyzes the
intent of the tool call before it reaches the
network.</t>

</section>
<section anchor="impersonation-vs-delegation"><name>Impersonation vs. Delegation</name>

<t>CAAM utilizes Token Exchange RFC8693 to manage
relationships in multi-hop chains.  It
distinguishes between Impersonation (agent acts as
the user) and Delegation (agent acts on behalf of
the user while maintaining its own identity).</t>

<t>In the CAAM delegation model, the resulting access
token MUST include an <spanx style="verb">act</spanx> (actor) claim that
captures the entire lineage:</t>

<texttable>
      <ttcol align='left'>Step</ttcol>
      <ttcol align='left'>Token Components</ttcol>
      <ttcol align='left'>Identity State</ttcol>
      <c>User starts</c>
      <c>IPSIE Token</c>
      <c>sub: User</c>
      <c>A calls B</c>
      <c>A SVID + Token</c>
      <c>sub: User, act: A</c>
      <c>B calls RS</c>
      <c>B SVID + Prev</c>
      <c>act: B { act: A }</c>
</texttable>

<t>To maintain least privilege, CAAM mandates Scope
Attenuation: each subsequent token in the chain
MUST have an equal or smaller scope than its
predecessor.  Implementations MUST NOT permit scope
expansion during delegation.</t>

</section>
<section anchor="the-ghost-token-pattern"><name>The Ghost Token Pattern</name>

<t>While OAuth XAA handles coarse delegation between
applications, CAAM introduces the Ghost Token
Pattern to prevent raw credential exposure:</t>

<t><list style="numbers" type="1">
  <t>Grant: The User provides a long-lived XAA
grant to the Lead Agent, representing the
ceiling of the agent's authority.</t>
  <t>Shadowing: The Lead Agent MUST NOT possess the
raw XAA token.  The token resides exclusively
in the CAAM Vault.  The agent holds only an
opaque reference.</t>
  <t>Synthesis: Upon a tool request, the Mesh
synthesizes a JIT Scoped Token that merges the
XAA permission ceiling with the current RATS
Attestation Evidence and the active SCO.  This
token MUST be short-lived (less than 60
seconds TTL), bound to a cryptographic nonce,
scoped to the exact tool call, and
non-replayable.</t>
</list></t>

</section>
</section>
<section anchor="sco-definition"><name>The Session Context Object (SCO)</name>

<t>The Session Context Object (SCO) is the central
data structure of the CAAM protocol.  It MUST be
encoded as a JWT RFC7519 for HTTP-based
transports or as a CWT RFC8392 for constrained
environments.</t>

<section anchor="the-ctx-claim"><name>The "ctx" Claim</name>

<t>This document defines a new JWT/CWT claim:</t>

<dl>
  <dt>ctx (Contextual Assertion):</dt>
  <dd>
    <t>A JSON object (or equivalent CBOR map) that
carries the contextual metadata required for
CAAM authorization decisions.  The "ctx" claim
is registered per iana-considerations.</t>
  </dd>
</dl>

<t>The "ctx" claim MUST contain the following members:</t>

<t><list style="symbols">
  <t>"purpose": A string describing the
human-readable intent of the agentic task.
This value is set at origination and MUST NOT
be modified by intermediate agents.</t>
  <t>"scope_ceiling": An array of OAuth scope
strings representing the maximum authority
derived from the original XAA grant.</t>
  <t>"max_hops": An integer indicating the remaining
delegation depth.  This value MUST be
decremented by 1 at each delegation hop.  When
"max_hops" reaches 0, further delegation MUST
be denied.</t>
  <t>"zookie": A consistency token (as defined by
the Zanzibar model ZANZIBAR) ensuring that
relationship queries reflect the most recent
state of the Knowledge Graph.</t>
  <t>"rats_result": A reference to the Verifier's
Attestation Result for the current agent,
encoded as a URI or an embedded Evidence
structure per RFC9334.</t>
  <t>"crs": The current Contextual Risk Score, a
decimal value in the range [0, 1].</t>
</list></t>

<t>The SCO MUST be signed by the originating Identity
Provider at creation.  At each delegation hop, the
delegating agent's CAAM sidecar MUST append an
<spanx style="verb">act</spanx> claim and sign the extended SCO with its
SPIFFE SVID key, forming a Chained JWS RFC7515.</t>

<t>The following is a non-normative example of an SCO
JWT payload:</t>

<figure><sourcecode type="json"><![CDATA[
{
  "iss": "https://idp.corp.internal",
  "sub": "user:jonathan@corp.com",
  "aud": "agent:finance-bot@corp.internal",
  "iat": 1740355200,
  "exp": 1740358800,
  "act": {
    "sub": "spiffe://corp.internal/agent/fb"
  },
  "ctx": {
    "purpose": "Q4 revenue audit",
    "scope_ceiling": [
      "finance:read",
      "crm:read"
    ],
    "max_hops": 3,
    "zookie": "zk_v1_998877",
    "rats_result":
      "https://verifier.corp.internal/abc",
    "crs": 0.22
  }
}
]]></sourcecode></figure>

</section>
<section anchor="intent-signature-mechanism"><name>Intent-Signature Mechanism</name>

<t>To solve the Multi-Hop Intent Binding problem,
CAAM uses the Intent-Signature: a Chained JWS
RFC7515 binding the original user's purpose to
each subsequent request.</t>

<t><list style="numbers" type="1">
  <t>Origination: The CAAM mesh generates an SCO
containing the "purpose", "scope_ceiling", and
"max_hops" claims.  The SCO is signed by the
originating Identity Provider.</t>
  <t>Propagation: At each hop, the delegating
agent's sidecar appends its own "act" claim
and a "sub_purpose" narrowing the task scope.
The sidecar signs the extended SCO with its
SPIFFE SVID key, producing a Chained JWS.</t>
  <t>Verification: Before synthesizing a JIT Scoped
Token, the receiving sidecar MUST verify the
entire signature chain.  Verification confirms
that:  <list style="symbols">
      <t>Each signature is valid against the signer's
SPIFFE SVID.</t>
      <t>The "sub_purpose" at the current hop MUST be
validated against the permitted scope
boundaries using deterministic policy
evaluation (e.g., OPA/Cedar tag matching).</t>
      <t>The requested scope does not exceed the
"scope_ceiling" after Scope Attenuation.</t>
      <t>The "max_hops" counter is non-negative.</t>
      <t>The current CRS is within the acceptable
remediation tier.</t>
    </list></t>
  <t>Gating: If any verification step fails, the
sidecar MUST deny the tool call and MAY
trigger a HITL escalation per the CRS
remediation tiers.</t>
</list></t>

</section>
</section>
<section anchor="policy-substrate-knowledge-graphs-and-rebac"><name>Policy Substrate: Knowledge Graphs and ReBAC</name>

<t>To avoid manual policy sprawl, CAAM mandates a
Policy Inference Plane that treats the enterprise
Knowledge Graph as the source of truth for
relationship-based access decisions.</t>

<section anchor="relationship-ingestion"><name>Relationship Ingestion</name>

<t>The mesh MUST ingest relationship triples from
existing IAM data (via SCIM) and real-time
collaboration signals.  These relationships form
the edges of the Knowledge Graph and MUST be
updated continuously.</t>

</section>
<section anchor="common-ancestor-constraint"><name>Common Ancestor Constraint</name>

<t>For multi-participant sessions, the Resolver MUST
satisfy the Common Ancestor Constraint: all
participants in a session MUST share a relationship
path through the Knowledge Graph to the data silo
being accessed.  If any participant lacks this
path, the agent's capability set MUST be narrowed
accordingly.</t>

</section>
<section anchor="zanzibar-model"><name>Zanzibar Model</name>

<t>Implementation of the Zanzibar model ZANZIBAR
(e.g., SpiceDB) is RECOMMENDED.  This allows the
N-way intersection check to be performed using
consistency tokens (e.g., Zanzibar-style
'zookies') to ensure causal consistency during
policy evaluation.</t>

</section>
</section>
<section anchor="protocol-integration"><name>Protocol Integration</name>

<t>CAAM operates as a secondary control plane between
the ARDP discovery layer
I-D.pioli-agent-discovery and the execution
protocol (e.g., MCP, HTTP, or gRPC).</t>

<section anchor="openid-xaa-binding"><name>OpenID XAA Binding</name>

<t>The initial delegation between the Human and the
Agent occurs via OpenID XAA:</t>

<t><list style="symbols">
  <t>The User grants the agent a scope (e.g.,
"client_data:read").</t>
  <t>This XAA grant is treated as a root node in
the Knowledge Graph, providing the agent the
potential to access data.  The potential is
narrowed by real-time context.</t>
  <t>The raw XAA token MUST be stored in the CAAM
Vault and MUST NOT be exposed to the agent
directly.</t>
</list></t>

</section>
<section anchor="openid-ipsie-binding-and-shared-signals"><name>OpenID IPSIE Binding and Shared Signals</name>

<t>CAAM utilizes IPSIE IPSIE to manage the
Agentic Session:</t>

<t><list style="symbols">
  <t>The session_id in the ARDP RESOLVE call MUST
map to an IPSIE session identifier.</t>
  <t>The Resolver MUST act as a Shared Signals
Framework (SSF) receiver.  If an SSF event
indicates a change in session risk or
participant list, the Resolver MUST immediately
narrow any agent capabilities that no longer
satisfy the Knowledge Graph intersection.</t>
</list></t>

</section>
<section anchor="post-discovery-caam-handshake"><name>Post-Discovery CAAM Handshake</name>

<t>After a client successfully discovers an agent via the
ARDP RESOLVE method, it initiates a separate, subsequent
handshake to establish the cryptographic context required
for contextual authorization.  This is performed via an
HTTP POST to the discovered agent's <spanx style="verb">/caam/authorize</spanx>
endpoint:</t>

<figure><sourcecode type="json"><![CDATA[
{
  "method": "POST",
  "endpoint": "/caam/authorize",
  "aid": "agent:finance-bot@corp.internal",
  "context": {
    "session_id": "ipsie-session-2026-v1",
    "xaa_ref": "vault:opaque-ref-001",
    "participants": [
      {
        "format": "email",
        "email": "jonathan@corp.com"
      },
      {
        "format": "email",
        "email": "guest@client2.com"
      }
    ],
    "consistency_token": "zk_v1_998877",
    "rats_evidence": {
      "attester_id":
        "spiffe://corp.internal/agent/fb",
      "evidence_type": "tpm2.0",
      "manifest_hash": "sha256:ab12cd34"
    }
  }
}
]]></sourcecode></figure>

</section>
<section anchor="capability-fuzzing-narrowed-persona"><name>Capability Fuzzing (Narrowed Persona)</name>

<t>Upon RESOLVE, the Resolver performs contextual
capability filtering in two phases:</t>

<t>Discovery-Time Narrowing:</t>

<t><list style="numbers" type="1">
  <t>Execute a Knowledge Graph traversal to
determine whether all participants share a
relationship with the target data silos.</t>
  <t>If a participant lacks access to a data silo,
the Resolver MUST remove tools associated with
that silo from the agent's capability
advertisement.</t>
  <t>The agent is discovered with a Narrowed
Persona.</t>
</list></t>

<t>Session-Time Enforcement:</t>

<t><list style="numbers" type="1">
  <t>The sidecar MUST enforce the same filtering on
every tool call via outbound request interception.</t>
  <t>If an SSF event changes the participant list
mid-session, the sidecar MUST re-execute the
Knowledge Graph intersection and further
narrow (MUST NOT expand) the agent's
capabilities.</t>
</list></t>

</section>
<section anchor="protocol-phases"><name>Protocol Phases</name>

<t>The CAAM protocol proceeds through four phases:</t>

<t><list style="numbers" type="1">
  <t>Discovery Phase: The client searches for an
agent via ARDP.  The Resolver returns the
agent's endpoint along with its CAAM
Capability Block (SPIFFE ID, supported policy
languages, Inference Boundary hash).</t>
  <t>Negotiation Phase: The client and the agent's
sidecar perform mutual attestation.  The
client provides its identity proof and the
SCO.  The sidecar verifies the SCO against
IPSIE risk signals and RATS Evidence.</t>
  <t>Establishment Phase: Upon successful
negotiation, a Contextual Session is
established.  The sidecar issues a JIT Scoped
Token via the Ghost Token Pattern.</t>
  <t>Enforcement Phase: The sidecar intercepts the
tool call and performs real-time validation of
every tool call against the SCO, Inference
Boundary, and CRS threshold.</t>
</list></t>

</section>
</section>
<section anchor="contextual-risk-scoring"><name>Contextual Risk Scoring (CRS)</name>

<t>Every request within the mesh MUST be assigned a
Contextual Risk Score (CRS), S in the range
[0, 1], calculated by the Verifier.</t>

<figure><artwork><![CDATA[
  S = w_1 * P + w_2 * E + w_3 * D
]]></artwork></figure>

<t>Where P is Provenance, E is EnvTrust, D is
DataSensitivity, w_1 + w_2 + w_3 = 1, and weights
are configurable per deployment.  The factors are:</t>

<t><list style="symbols">
  <t>Provenance: The strength and freshness of the
identity chain, hop count from the original
user, SVID validity, and SCO integrity.</t>
  <t>EnvTrust: Trustworthiness of the execution
environment per RATS Attestation Evidence --
TPM status, manifest integrity, geographic
compliance.</t>
  <t>DataSensitivity: Classification of the target
resource (public, internal, confidential,
regulated PII).</t>
</list></t>

<t>Remediation Tiers:</t>

<texttable>
      <ttcol align='left'>CRS Range</ttcol>
      <ttcol align='left'>Level</ttcol>
      <ttcol align='left'>Action</ttcol>
      <c>S &lt; 0.3</c>
      <c>Nominal</c>
      <c>JIT Token execution</c>
      <c>0.3 &lt;= S &lt; 0.7</c>
      <c>Elevated</c>
      <c>Step-Up (MFA) REQUIRED</c>
      <c>S &gt;= 0.7</c>
      <c>Critical</c>
      <c>HITL REQUIRED</c>
</texttable>

<t>The CRS MUST be recalculated on every tool call.
A spike in CRS mid-session (e.g., from an SSF risk
event) MUST trigger immediate re-evaluation and
potential session downgrade.</t>

</section>
<section anchor="policy-orchestration"><name>Policy Orchestration</name>

<t>CAAM translates high-level intent into
machine-enforceable policies via HEXA HEXA and
IDQL:</t>

<t><list style="numbers" type="1">
  <t>Intent Capture: An administrator defines
intent in IDQL.</t>
  <t>Translation: The HEXA orchestrator translates
IDQL to target-specific format (Rego for OPA
OPA, Cedar CEDAR).</t>
  <t>Distribution: Policy bundles are pushed to
sidecars.</t>
  <t>Enforcement: The sidecar evaluates tool calls
against bundles, using SCO metadata for
context.</t>
</list></t>

<t>Implementations MAY support both OPA and Cedar
simultaneously.</t>

</section>
</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>This section analyzes the threat landscape
specific to autonomous agent ecosystems and
describes how CAAM mitigates each identified
threat.  The analysis follows a defense-in-depth
model where multiple independent controls
reinforce each other.</t>

<section anchor="token-theft"><name>Token Theft and Exfiltration</name>

<t>An attacker who gains access to an agent's
runtime environment (e.g., via container escape
or memory dump) may attempt to exfiltrate tokens
for use outside the legitimate agent context.</t>

<t>CAAM employs four independent defenses:</t>

<t><list style="numbers" type="1">
  <t>Ghost Token Pattern: The raw long-lived XAA
delegation token never enters the agent's
address space.  It resides exclusively in the
CAAM Vault.  An attacker who compromises the
agent runtime will find only opaque vault
references, not actionable credentials.</t>
  <t>JIT Token Ephemerality: The JIT Scoped Token
synthesized for each tool call MUST have a
maximum TTL of 60 seconds and MUST be bound
to a single-use cryptographic nonce.  After
the first presentation, the Relying Party
MUST record the nonce in a replay cache and
reject any subsequent presentation.</t>
  <t>Proof-of-Possession via DPoP: Every JIT
Scoped Token MUST be sender-constrained
using the Demonstrating Proof-of-Possession
(DPoP) mechanism defined in RFC9449.
The token includes a "jkt" (JWK Thumbprint)
confirmation claim that binds it to the
agent's SPIFFE SVID private key.  At each
tool call, the agent MUST present a DPoP
proof JWT signed with the corresponding
private key.  A stolen token is unusable
without the private key, which MUST be
stored in a hardware-backed keystore
(TPM 2.0 or Cloud KMS) and MUST NOT be
exportable.</t>
  <t>Environment Binding: The token embeds a hash
of the RATS Attestation Result that was
current at synthesis time.  An attacker
presenting the token from a different
environment will fail the attestation
verification, and the token MUST be
rejected.</t>
</list></t>

<t>These defenses are conjunctive.  Even if an
attacker overcomes one layer (e.g., extracts a
JIT token before it expires), the remaining
layers (DPoP binding, environment binding, nonce
exhaustion) independently prevent misuse.</t>

</section>
<section anchor="context-spoofing"><name>Context Spoofing</name>

<t>Context spoofing occurs when an agent or its
operator falsifies environmental signals to
obtain a more permissive authorization decision.
For example, an agent operating on a public
network could claim to be executing within a
corporate-office context to bypass geofencing
policies.</t>

<t>CAAM mitigates context spoofing through the
following requirements:</t>

<t><list style="symbols">
  <t>Self-Asserted Context Prohibition: The CAAM
Verifier MUST NOT accept self-asserted
context claims from the agent.  All
environmental context (location, network
posture, platform integrity) MUST be derived
from independently verifiable sources: RATS
Attestation Evidence RFC9334 from a
hardware-rooted Attester, or corroborating
signals from the SSF receiver.</t>
  <t>Attestation Evidence Validation: The Verifier
MUST validate RATS Evidence against
manufacturer Endorsements and the SPIRE
trust domain's Reference Values.  Evidence
that cannot be traced to a trusted Endorser
MUST be rejected, and the CRS MUST be set to
the Critical tier (S &gt;= 0.7), triggering
mandatory HITL escalation.</t>
  <t>Coarse-Grained Context Defaults: To reduce
the attack surface for context spoofing,
context signals MUST be expressed at the
coarsest granularity sufficient for the
authorization decision.  Implementations
MUST use categorical labels (e.g.,
"corporate", "in-transit", "public") rather
than precise measurements (e.g., GPS
coordinates) unless the requested scope
explicitly demands higher precision.  This
reduces the number of forgeable dimensions
available to an attacker.</t>
  <t>Context Freshness: The Verifier MUST reject
Attestation Evidence older than the
deployment-configured freshness threshold.
Stale evidence MAY indicate that an attacker
captured a legitimate attestation from a
trusted environment and is replaying it from
an untrusted one.</t>
</list></t>

</section>
<section anchor="dpop-binding"><name>Proof-of-Possession Binding</name>

<t>Bearer tokens are insufficient for agentic
authorization because they can be used by any
party that obtains them.  CAAM requires that all
JIT Scoped Tokens be sender-constrained.</t>

<t>The CAAM sidecar MUST implement the DPoP
mechanism RFC9449 as follows:</t>

<t><list style="numbers" type="1">
  <t>Key Generation: During ARDP registration,
each agent's CAAM sidecar generates an
asymmetric key pair.  The private key MUST
be stored in a non-exportable
hardware-backed keystore (TPM 2.0, HSM, or
Cloud KMS).  The public key is published as
part of the agent's ARDP Capability Block.</t>
  <t>Token Binding: When the CAAM Vault
synthesizes a JIT Scoped Token, it includes
a "cnf" (confirmation) claim containing the
"jkt" (JWK Thumbprint) of the agent's DPoP
key:</t>
</list></t>

<figure><sourcecode type="json"><![CDATA[
{
  "cnf": {
    "jkt": "sha256:0ZcOCORZNYy-..."
  }
}
]]></sourcecode></figure>

<t><list style="numbers" type="1">
  <t>Proof Presentation: On every tool call, the
agent MUST present a DPoP proof JWT
alongside the JIT Scoped Token.  The proof
JWT is signed with the agent's private key
and includes the HTTP method, target URI,
and a fresh "jti" to prevent replay.</t>
  <t>Verification: The Relying Party MUST verify
that the DPoP proof JWT was signed by the
key whose thumbprint matches the "jkt" in
the token's "cnf" claim.  If the proof is
missing, expired, or signed by a different
key, the token MUST be rejected.</t>
</list></t>

<t>This binding ensures that a stolen JIT token
cannot be used by an attacker who does not
possess the agent's hardware-protected private
key.</t>

</section>
<section anchor="prompt-injection-as-privilege-escalation"><name>Prompt Injection as Privilege Escalation</name>

<t>Prompt injection attacks are a primary threat to
autonomous systems.  CAAM treats prompt injection
as a Semantic Elevation of Privilege attack.  The
CAAM sidecar MUST remain isolated from the
agent's reasoning space (Out-of-Band Policy
Enforcement).</t>

<t>Even if an agent's internal state is compromised
via prompt injection and it attempts an
unauthorized action, the sidecar intercepts the
resulting tool call.  Because the sidecar's
decision logic is deterministic and based on the
externally verified SCO, it MUST block the action
regardless of the agent's internal belief state.</t>

</section>
<section anchor="multi-hop-identity-dilution"><name>Multi-Hop Identity Dilution</name>

<t>In an N-hop chain (User -&gt; Agent A -&gt; Agent B -&gt;
Agent C), each hop introduces a new trust
boundary.  Traditional OAuth 2.0 tokens, if not
managed with Scope Attenuation, can allow an
agent at the end of the chain to inherit the
full permissions of the original user without
explicit intent.</t>

<t>CAAM mitigates this by requiring that every token
exchange include a "purpose" claim matching the
original intent.  The sidecar MUST verify that
each sub-task was authorized in the original
SCO.  Combined with Scope Attenuation and
Depth-Limited Tokens ("max_hops"), authority MUST
degrade gracefully across hops rather than
accumulating.</t>

</section>
<section anchor="confused-deputy"><name>Confused Deputy Prevention</name>

<t>The Confused Deputy attack in agentic systems
occurs when a malicious or compromised Agent A
passes a crafted intent to a higher-privileged
Agent B, tricking B into performing an action
that A is not authorized to request.  A related
attack is token replay, where a captured JIT
token is presented in a different environment or
session context.</t>

<t>CAAM prevents both attacks through Contextual
Binding -- the cryptographic coupling of every
JIT Scoped Token to the specific SCO,
environment attestation, DPoP key, and nonce
from which it was derived:</t>

<t><list style="symbols">
  <t>Environment Binding: The JIT token embeds a
hash of the RATS Attestation Result that was
current at synthesis time.  If an attacker
replays the token from a different
environment, the Relying Party's Attestation
Result will not match the embedded hash, and
the token MUST be rejected.</t>
  <t>Session Binding: The JIT token includes the
SCO's "jti" (JWT ID) and "session_id".  A
token synthesized for Session X MUST NOT be
accepted in Session Y.  The sidecar MUST
validate that the presented token's session
binding matches the active Contextual
Session.</t>
  <t>Nonce Binding: Each JIT token is bound to a
single-use cryptographic nonce.  After the
first use, the nonce is recorded in a replay
cache.  Any subsequent presentation of the
same nonce MUST be rejected.</t>
  <t>Sender Binding: The JIT token is bound to
the agent's DPoP key via the "cnf"/"jkt"
claim per dpop-binding.  Even if Agent A
obtains a token intended for Agent B, A
cannot produce a valid DPoP proof because A
does not possess B's private key.</t>
  <t>Intent Binding: The JIT token carries the
"purpose" and "sub_purpose" from the SCO.
Agent B's sidecar MUST verify that the
requested action falls within the stated
purpose before executing.  A crafted intent
from Agent A that requests an out-of-scope
action will fail this check even if Agent B
has the technical capability to perform it.</t>
</list></t>

<t>These five bindings are conjunctive: all MUST
hold for a JIT token to be accepted.  The
failure of any single binding invalidates the
token.</t>

</section>
<section anchor="data-in-use-protection"><name>Data-in-Use Protection (Future Work)</name>

<t>While CAAM provides robust controls for data-at-rest
and data-in-transit via access policies, the next
frontier is protecting data-in-use during processing
by the agent's LLM or inference engine.</t>

<t>As technology matures, agent workloads MAY be
executed within Confidential Computing environments
(e.g., secure enclaves such as Intel SGX or AMD SEV).
Executing the agent within a Trusted Execution
Environment (TEE) protects the "Observation" and
reasoning phases from inspection or tampering by a
compromised host OS or hypervisor. This provides
cryptographic assurance against active data leakage
and some forms of prompt injection at the execution
layer itself.</t>

<t>Because deploying large, GPU-accelerated LLM
workloads within secure enclaves is currently
technically difficult, this is identified as an
optional, future capability rather than a strict
requirement for <spanx style="verb">-00</spanx> implementations.</t>

</section>
<section anchor="policy-integrity"><name>Policy and Knowledge Graph Integrity</name>

<t>The security of the CAAM mesh relies entirely on the
correctness of the authorization policy (e.g., OPA
or Cedar) and the accuracy of the Knowledge Graph.
Implementations MUST adopt a Zero Trust approach to
policy lifecycle management.</t>

<t>This approach SHOULD include:</t>

<t><list style="symbols">
  <t>Signed Policy Bundles: All policy updates MUST be
cryptographically signed and verified by the
sidecar before enforcement.</t>
  <t>Verifiable Audit Trails: All mutations to the
Knowledge Graph MUST be appended to a tamper-
evident log.</t>
  <t>Policy-as-Code Pipelines: Changes to the ruleset
MUST pass through automated CI/CD pipelines with
mandatory security reviews and conflict-detection
tests to prevent the introduction of overly
permissive rules.</t>
</list></t>

</section>
<section anchor="supply-chain-security"><name>Agent Supply Chain Security</name>

<t>While RATS secures the agent's runtime environment,
a comprehensive Zero Trust model MUST also scrutinize
the agent's software provenance.</t>

<t>The CAAM framework SHOULD be extended to verify the
software supply chain of discovered agents. Before
initiating the Post-Discovery Handshake, the sidecar
MAY require the agent (or the ARDP Registrar) to
provide a signed Software Bill of Materials (SBOM).
The sidecar can then verify that the agent's
components, including the specific LLM model weights
and inference dependencies, contain no known
critical vulnerabilities before allowing execution.</t>

</section>
<section anchor="threat-model"><name>Formal Threat Model</name>

<t>The following threats are specific to multi-agent
orchestration.  For each threat, the table
identifies the attack vector, the primary CAAM
mitigation, and the relevant section of this
document.</t>

<texttable>
      <ttcol align='left'>Threat</ttcol>
      <ttcol align='left'>Vector</ttcol>
      <ttcol align='left'>Mitigation</ttcol>
      <ttcol align='left'>Ref</ttcol>
      <c>Token Theft</c>
      <c>Runtime exfil</c>
      <c>DPoP+Vault+60s</c>
      <c>token-theft</c>
      <c>Context Spoof</c>
      <c>Fake env</c>
      <c>RATS+coarse ctx</c>
      <c>context-spoofing</c>
      <c>Confused Deputy</c>
      <c>Intent A-&gt;B</c>
      <c>5-way binding</c>
      <c>confused-deputy</c>
      <c>Signal Spoof</c>
      <c>Fake TEE/geo</c>
      <c>TPM Evidence</c>
      <c>context-spoofing</c>
      <c>Deleg Loop</c>
      <c>Circular chain</c>
      <c>max_hops+cycle</c>
      <c>sco-definition</c>
      <c>Token Replay</c>
      <c>Captured JIT</c>
      <c>Nonce+DPoP</c>
      <c>dpop-binding</c>
      <c>Infer Bypass</c>
      <c>Cross-source</c>
      <c>Firewall+DP</c>
      <c>minimal-disclosure</c>
      <c>Prompt Inject</c>
      <c>Manipulated LLM</c>
      <c>OOB enforce</c>
      <c>N/A</c>
      <c>Data-in-Use Exfil</c>
      <c>Host OS/Hyper</c>
      <c>TEE (Future/Opt)</c>
      <c>data-in-use-protection</c>
      <c>Policy Tampering</c>
      <c>Malicious Rules</c>
      <c>Signed Bundles</c>
      <c>policy-integrity</c>
      <c>Vulnerable Agent</c>
      <c>Compromised Dep</c>
      <c>Signed SBOM</c>
      <c>supply-chain-security</c>
</texttable>

</section>
</section>
<section anchor="privacy-considerations"><name>Privacy Considerations</name>

<section anchor="inference-isolation"><name>Inference Isolation</name>

<t>A unique challenge in agentic security is Fuzzy
Search Leakage: an agent with authorized access
to multiple datasets may combine them in its
internal memory to draw unauthorized inferences.</t>

<t>CAAM implements a Contextual Firewall that
enforces isolation within the agent's reasoning
context.  If an agent retrieves data from
Source A, the sidecar MUST restrict access to
Source B for the duration of that sub-task if the
combination is flagged as a high-risk inference
vector in the Inference Boundary.</t>

</section>
<section anchor="minimal-disclosure"><name>Minimal Disclosure</name>

<t>Context Providers -- entities that supply
environmental, behavioral, or relational signals
to the CAAM mesh -- MUST adhere to the principle
of Minimal Disclosure.</t>

<section anchor="coarse-grained-context-by-default"><name>Coarse-Grained Context by Default</name>

<t>All context signals MUST be expressed at the
coarsest granularity sufficient for the
authorization decision by default.  The following
table illustrates the REQUIRED default
granularities:</t>

<texttable>
      <ttcol align='left'>Signal</ttcol>
      <ttcol align='left'>Coarse (Default)</ttcol>
      <ttcol align='left'>Fine (Opt-in)</ttcol>
      <c>Location</c>
      <c>"corporate" / "public"</c>
      <c>Country code</c>
      <c>Network</c>
      <c>"trusted" / "untrusted"</c>
      <c>CIDR block</c>
      <c>Time</c>
      <c>"business-hours" / "off"</c>
      <c>ISO 8601</c>
      <c>Platform</c>
      <c>"attested" / "unattested"</c>
      <c>PCR values</c>
</texttable>

<t>A Context Provider MUST NOT disclose fine-grained
context unless both of the following conditions
are met:</t>

<t><list style="numbers" type="1">
  <t>The requested OAuth scope explicitly requires
the finer granularity (e.g., a geofencing
scope that specifies country-level).</t>
  <t>The current CRS is in the Nominal tier
(S &lt; 0.3).  At Elevated or Critical CRS, the
Verifier MUST reject fine-grained context
requests and fall back to coarse defaults to
reduce the information surface.</t>
</list></t>

</section>
<section anchor="additional-disclosure-constraints"><name>Additional Disclosure Constraints</name>

<t><list style="symbols">
  <t>The SCO's "ctx" claim MUST NOT carry raw
sensor data, biometric measurements, or
personally identifiable information (PII)
unless the requested scope explicitly
requires it and the CRS permits it.</t>
  <t>Implementations SHOULD support selective
disclosure mechanisms (e.g., SD-JWT) to
enable verifiers to request only the claims
they require from the SCO.</t>
  <t>When RATS Evidence is included in the SCO,
the Verifier SHOULD produce an Attestation
Result that abstracts the raw Evidence into
a trust score or categorical assessment,
ensuring that detailed platform measurements
are not propagated beyond the Verifier.</t>
  <t>The CAAM mesh MUST NOT log or persist the
full contents of the "ctx" claim beyond the
lifetime of the Contextual Session.
Implementations SHOULD retain only the CRS
value and remediation tier for audit
purposes.</t>
</list></t>

<t>The principle of Minimal Disclosure ensures that
the CAAM mesh does not itself become a vector
for privacy leakage by aggregating and
propagating more context than is necessary for
each authorization decision.</t>

</section>
</section>
</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>This section requests registration of claims,
parameters, and a new registry with IANA.</t>

<section anchor="json-web-token-claims-registration"><name>JSON Web Token Claims Registration</name>

<t>This specification defines one new claim for
registration in the "JSON Web Token Claims"
registry established by Section 10.1 of
RFC7519.</t>

<section anchor="registry-contents"><name>Registry Contents</name>

<dl>
  <dt>Claim Name:</dt>
  <dd>
    <t>ctx</t>
  </dd>
  <dt>Claim Description:</dt>
  <dd>
    <t>CAAM Contextual Assertion.  A JSON object
containing purpose, scope ceiling, delegation
depth, consistency token, attestation result
reference, and contextual risk score for
agentic authorization decisions.</t>
  </dd>
  <dt>Change Controller:</dt>
  <dd>
    <t>IETF</t>
  </dd>
  <dt>Specification Document(s):</dt>
  <dd>
    <t>sco-definition of this document</t>
  </dd>
  <dt>Claim Value Type:</dt>
  <dd>
    <t>JSON object</t>
  </dd>
</dl>

<t>The "ctx" claim is used within the Session
Context Object (SCO) defined in
sco-definition.  Its value is a JSON object
with the following members:</t>

<t><list style="symbols">
  <t>"purpose" (string, REQUIRED): Human-readable
intent of the agentic task.  MUST NOT be
modified by intermediate agents.</t>
  <t>"scope_ceiling" (array of strings, REQUIRED):
Maximum OAuth scope derived from the original
delegation grant.</t>
  <t>"max_hops" (integer, REQUIRED): Remaining
delegation depth.  Decremented by 1 at each
hop.</t>
  <t>"zookie" (string, OPTIONAL): Consistency
token for Knowledge Graph queries.</t>
  <t>"rats_result" (string, OPTIONAL): URI
reference to the Verifier's Attestation
Result per RFC9334.</t>
  <t>"crs" (number, REQUIRED): Contextual Risk
Score in the range [0, 1].</t>
</list></t>

<t>The following is a non-normative example of the
"ctx" claim value:</t>

<figure><sourcecode type="json"><![CDATA[
{
  "purpose": "Q4 revenue audit",
  "scope_ceiling": [
    "finance:read",
    "crm:read"
  ],
  "max_hops": 3,
  "zookie": "zk_v1_998877",
  "rats_result":
    "https://verifier.corp.internal/abc",
  "crs": 0.22
}
]]></sourcecode></figure>

</section>
</section>
<section anchor="oauth-parameters-registration"><name>OAuth Parameters Registration</name>

<t>IANA is requested to register the following
entry in the "OAuth Parameters" registry
established by RFC 6749:</t>

<dl>
  <dt>Parameter Name:</dt>
  <dd>
    <t>caam</t>
  </dd>
  <dt>Parameter Usage Location:</dt>
  <dd>
    <t>authorization request, token request</t>
  </dd>
  <dt>Change Controller:</dt>
  <dd>
    <t>IETF</t>
  </dd>
  <dt>Specification Document(s):</dt>
  <dd>
    <t>This document</t>
  </dd>
</dl>

<t>The "caam" parameter carries a reference to the
Session Context Object that MUST be validated by
the authorization server before issuing tokens
in a CAAM-compliant deployment.</t>

</section>
<section anchor="oauth-token-introspection-response"><name>OAuth Token Introspection Response</name>

<t>IANA is requested to register the following
entry in the "OAuth Token Introspection
Response" registry:</t>

<dl>
  <dt>Response Parameter:</dt>
  <dd>
    <t>ctx</t>
  </dd>
  <dt>Change Controller:</dt>
  <dd>
    <t>IETF</t>
  </dd>
  <dt>Specification Document(s):</dt>
  <dd>
    <t>sco-definition of this document</t>
  </dd>
</dl>

<t>When a CAAM-compliant authorization server
responds to an introspection request for a JIT
Scoped Token, it SHOULD include the "ctx" claim
to enable the Relying Party to perform
contextual validation.</t>

</section>
<section anchor="caam-agent-discovery-metadata-registry"><name>CAAM Agent Discovery Metadata Registry</name>

<t>IANA is requested to create a new registry
titled "CAAM Agent Discovery Security Metadata"
under the "CAAM" registry group.</t>

<section anchor="registration-policy"><name>Registration Policy</name>

<t>New entries require Specification Required per
RFC 8126.</t>

</section>
<section anchor="initial-registry-contents"><name>Initial Registry Contents</name>

<texttable>
      <ttcol align='left'>Attribute</ttcol>
      <ttcol align='left'>Description</ttcol>
      <ttcol align='left'>Req</ttcol>
      <c>caam_v1_supported</c>
      <c>CAAM support</c>
      <c>REQUIRED</c>
      <c>sc_object_hash</c>
      <c>SCO hash</c>
      <c>OPTIONAL</c>
      <c>inf_boundary_v1</c>
      <c>Inference limits</c>
      <c>RECOMMENDED</c>
      <c>authz_policy_uri</c>
      <c>Policy URI</c>
      <c>REQUIRED</c>
      <c>spiffe_trust_domain</c>
      <c>Trust domain</c>
      <c>REQUIRED</c>
      <c>rats_evidence_type</c>
      <c>Evidence type</c>
      <c>RECOMMENDED</c>
      <c>crs_threshold</c>
      <c>Max CRS w/o MFA</c>
      <c>OPTIONAL</c>
      <c>max_delegation_hops</c>
      <c>Max depth</c>
      <c>RECOMMENDED</c>
      <c>dpop_jwk_uri</c>
      <c>DPoP public key</c>
      <c>REQUIRED</c>
</texttable>

</section>
<section anchor="ardp-registry-extensions"><name>ARDP Registry Extensions</name>

<t>Additionally, this document requests the
following new attributes for the ARDP registry
defined by I-D.pioli-agent-discovery:</t>

<t><list style="symbols">
  <t>Policy Compliance Hash: A cryptographic hash
of the agent's active policy set, allowing
clients to verify governance.</t>
  <t>Inference Boundary Declaration: A formal
specification of the agent's semantic limits.</t>
  <t>Trust Anchor Reference: A pointer to the
authority responsible for the agent's
identity and behavioral attestation.</t>
</list></t>

</section>
</section>
</section>


  </middle>

  <back>


<references title='References' anchor="sec-combined-references">

    <references title='Normative References' anchor="sec-normative-references">



<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="RFC7515">
  <front>
    <title>JSON Web Signature (JWS)</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 Signature (JWS) represents content secured with digital signatures or Message Authentication Codes (MACs) using JSON-based data structures. Cryptographic algorithms and identifiers for use with this specification are described in the separate JSON Web Algorithms (JWA) specification and an IANA registry defined by that specification. Related encryption capabilities are described in the separate JSON Web Encryption (JWE) specification.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7515"/>
  <seriesInfo name="DOI" value="10.17487/RFC7515"/>
</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="RFC8174">
  <front>
    <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
    <author fullname="B. Leiba" initials="B." surname="Leiba"/>
    <date month="May" year="2017"/>
    <abstract>
      <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="8174"/>
  <seriesInfo name="DOI" value="10.17487/RFC8174"/>
</reference>
<reference anchor="RFC8392">
  <front>
    <title>CBOR Web Token (CWT)</title>
    <author fullname="M. Jones" initials="M." surname="Jones"/>
    <author fullname="E. Wahlstroem" initials="E." surname="Wahlstroem"/>
    <author fullname="S. Erdtman" initials="S." surname="Erdtman"/>
    <author fullname="H. Tschofenig" initials="H." surname="Tschofenig"/>
    <date month="May" year="2018"/>
    <abstract>
      <t>CBOR Web Token (CWT) is a compact means of representing claims to be transferred between two parties. The claims in a CWT are encoded in the Concise Binary Object Representation (CBOR), and CBOR Object Signing and Encryption (COSE) is used for added application-layer security protection. A claim is a piece of information asserted about a subject and is represented as a name/value pair consisting of a claim name and a claim value. CWT is derived from JSON Web Token (JWT) but uses CBOR rather than JSON.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8392"/>
  <seriesInfo name="DOI" value="10.17487/RFC8392"/>
</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="RFC9334">
  <front>
    <title>Remote ATtestation procedureS (RATS) Architecture</title>
    <author fullname="H. Birkholz" initials="H." surname="Birkholz"/>
    <author fullname="D. Thaler" initials="D." surname="Thaler"/>
    <author fullname="M. Richardson" initials="M." surname="Richardson"/>
    <author fullname="N. Smith" initials="N." surname="Smith"/>
    <author fullname="W. Pan" initials="W." surname="Pan"/>
    <date month="January" year="2023"/>
    <abstract>
      <t>In network protocol exchanges, it is often useful for one end of a communication to know whether the other end is in an intended operating state. This document provides an architectural overview of the entities involved that make such tests possible through the process of generating, conveying, and evaluating evidentiary Claims. It provides a model that is neutral toward processor architectures, the content of Claims, and protocols.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9334"/>
  <seriesInfo name="DOI" value="10.17487/RFC9334"/>
</reference>
<reference anchor="RFC9449">
  <front>
    <title>OAuth 2.0 Demonstrating Proof of Possession (DPoP)</title>
    <author fullname="D. Fett" initials="D." surname="Fett"/>
    <author fullname="B. Campbell" initials="B." surname="Campbell"/>
    <author fullname="J. Bradley" initials="J." surname="Bradley"/>
    <author fullname="T. Lodderstedt" initials="T." surname="Lodderstedt"/>
    <author fullname="M. Jones" initials="M." surname="Jones"/>
    <author fullname="D. Waite" initials="D." surname="Waite"/>
    <date month="September" year="2023"/>
    <abstract>
      <t>This document describes a mechanism for sender-constraining OAuth 2.0 tokens via a proof-of-possession mechanism on the application level. This mechanism allows for the detection of replay attacks with access and refresh tokens.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9449"/>
  <seriesInfo name="DOI" value="10.17487/RFC9449"/>
</reference>

<reference anchor="I-D.pioli-agent-discovery" target="https://datatracker.ietf.org/doc/draft-pioli-agent-discovery/">
  <front>
    <title>Agent Registration and Discovery Protocol (ARDP)</title>
    <author initials="R." surname="Pioli" fullname="Roberto Pioli">
      <organization></organization>
    </author>
    <date year="2026"/>
  </front>
</reference>


    </references>

    <references title='Informative References' anchor="sec-informative-references">



<reference anchor="RFC9635">
  <front>
    <title>Grant Negotiation and Authorization Protocol (GNAP)</title>
    <author fullname="J. Richer" initials="J." role="editor" surname="Richer"/>
    <author fullname="F. Imbault" initials="F." surname="Imbault"/>
    <date month="October" year="2024"/>
    <abstract>
      <t>The Grant Negotiation and Authorization Protocol (GNAP) defines a mechanism for delegating authorization to a piece of software and conveying the results and artifacts of that delegation to the software. This delegation can include access to a set of APIs as well as subject information passed directly to the software.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9635"/>
  <seriesInfo name="DOI" value="10.17487/RFC9635"/>
</reference>

<reference anchor="SPIFFE" target="https://spiffe.io/">
  <front>
    <title>Secure Production Identity Framework for Everyone</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="IPSIE" target="https://openid.net/wg/ipsie/">
  <front>
    <title>Interoperability Profiling for Secure Identity in the Enterprise</title>
    <author >
      <organization>OpenID Foundation</organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="HEXA" target="https://github.com/hexa-org/policy-orchestrator">
  <front>
    <title>Hexa Policy Orchestrator</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="ZANZIBAR" >
  <front>
    <title>Zanzibar: Google's Consistent, Global Authorization System</title>
    <author initials="R." surname="Pang">
      <organization></organization>
    </author>
    <author initials="R." surname="Lanber">
      <organization></organization>
    </author>
    <date year="2019"/>
  </front>
  <seriesInfo name="USENIX" value="ATC 2019"/>
</reference>
<reference anchor="OPA" target="https://www.openpolicyagent.org/">
  <front>
    <title>Open Policy Agent</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="CEDAR" target="https://www.cedarpolicy.com/">
  <front>
    <title>Cedar Policy Language</title>
    <author >
      <organization>Amazon Web Services</organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>


    </references>

</references>


<?line 1475?>

<section anchor="appendix-a-mathematical-models-for-inference-isolation"><name>Appendix A. Mathematical Models for Inference Isolation</name>

<t>Let X be the agent's internal state, S_1 and S_2
be two data sources, and B be the inference
boundary defined by policy.  The sidecar ensures
that for any inference I drawn by the agent:</t>

<figure><artwork><![CDATA[
  P(I | S_1, S_2, X) = P(I | Auth(S_1, S_2), X)
]]></artwork></figure>

<t>Where the Auth function represents the set of
permissible inferences under boundary B.  If the
combination is unauthorized, the sidecar applies
a privacy-preserving transformation T such that
the mutual information within the scratchpad is
minimized:</t>

<figure><artwork><![CDATA[
  I(T(S_1); T(S_2)) <= epsilon
]]></artwork></figure>

<t>Where epsilon is the privacy budget defined by
enterprise policy.</t>

</section>
<section anchor="acknowledgments"><name>Acknowledgments</name>

<t>The authors thank the IETF community and the
contributors to the Agent Registration and
Discovery Protocol for foundational work that
informed this specification.</t>

</section>
<section anchor="document-history"><name>Document History</name>

<section anchor="draft-barney-caam-00"><name>draft-barney-caam-00</name>

<t><list style="symbols">
  <t>Initial submission.</t>
</list></t>

</section>
</section>


  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA719aXfjRpLtd/yKPPKHlmySUpV3zfScppZyyV1V0ojy0p6Z
Uw2SkAgXCLABUCracv/2iRtLZgKkyn7z3rxZXBSJJTMyMtYbkcPhMGnztsiO
3d5pVbbZ+3adFm58l5WtG6/bRVXnv6RtXpXuddYs3P7pePz6YC9Jp9M6u8dN
9PdeMq9mZbqkh8zr9LYdTtO6zDbDWZouh0dHyTxt6afnR8+/GB49Hz7/LJnR
F3dVvTl2eXlbJfmqPnZtvW7a50dHXx89T9I6S4/dJJut67zdJA9V/e6urtar
Y3dzcpa8yzb0zfw4cW7o0niM8g3G3vDHmcyIP8+zIruLrmrbrGnlb/q3nL9N
i6qkYW6yJlnleHhbzeRP55qqbuvstvF/b5bxn7NquUpnrfyZyJB4ePT/juZI
F347cq9H7oQJw98Kvb6tyrRdpGXvx6q+S0ud1LG7KOfZKqP/lC3/2tBYMnrb
3h7/OSMa+T/q7I7vsd+qeRb9sS5bUP27Cf+dLdO8OHY/6xhGsmx/ucPXI5oT
X0RLcOwWbbtqjg8P7/J2sZ7it8Ofl3L554eBb4bMN8MO3wzBN11aXI/cVV4V
eUSH62qa1W0Vff+/TIKLm5gEtbx+tMLr/yAB9J4h33PIXDfEq2loMvF53syq
+6zedGd/NnI/pG3DfGjTP0vrmrZY9P3/Vw6Y1w/85qOvvvwsmn1SVvWSRnCf
gZmvX5w+f/bsa/345efPPg8f7duvnn35mX389Ovn9vGLrz/Vj19/+qld8PVn
n/FtF8MzoftQaOjJdsxDNOkkIuk6IrCjXevO7Gp3VVe0Y6vC7Y+vz64OZMJh
L+J/hjv470M8GASXDCWt70B1Ywb6OaWxzN5l9SjP2tsRLdohicJDkYI7J3WY
JJB5Xbp+/cWnTMzJ1cWLF+fdebMUzDC7+XrG074AG9CKuxc1jRvC0dED3Tke
TyJsb+dYm1V+e5uN8uoQJL+aXPRec0F7uK5WWZ1O8wIPpxfe0qfyjh+uo/Cv
zkvXLjJ3jrtWdd5ku8lNBDl2l8S5F2fuBfHe3ATw9gDp3WU+H5VZe/hwd5iv
mjzDUF+e/zjujvRl9j51V0Ta2cZd1rNFxvxQ1bvnHW3YBd04xBKt+Gb6GG6m
e38av/np4mR83X3bT2n5S06S7th9U1V3RfanxpG8a4gJiRID901RTaEvO5py
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
jAGRaK9hZo4D1mSiAT2WF6XE91MLlM4kGeSHZ/Gw83JOTohiodTRE2OLtWnM
dIprsTcbQkSjt7sQNuaDVaoVu1F1uKYeiLQjMr5buUkmIcYICQmuDd01EQPA
5q7YnuYpFJAEG8WLtbn7NLJOuQtJsshQRFm4Gp62/wLwEDkxDLMqbd5GNkh7
WeLtwYQ8YGdBGW8e7UCL3OYWAmXH2AOIEo+DkaRIDh1JG3lBZjf+i0G/V+OD
mJM2IFK+jUXSZfsEnZ17Rxe6tSgSD/NkU/y9/kFct1yXGn4w6/QivhcPvzTX
Fo60gyOtqgkkH3LmHpBRnVoSFxxEjribbWaFd9V70R9J6N8sUHvVCm/AF6af
FJmespqCRIkD/ZKzn0n18I2ng1ZmNT2+QLr9kpPCaf+OOptlOSyJugvNEgAh
bbJ1jUTPaMeCMmd5eotpweQQPzKRwIhkE9WJ0nkKJnOmScETEoIzsR7YX7Wk
FGJRD+lGxLC9NEXw/hfdoJp51U0Z4BSqD5mxU8Bf+GrV37bYMaTK3ZMyD6Fw
dZNoOxfsRD8B5vLw6qQTBIAwD9kXwVRJElWqKO7WYogYUboj2Vf9PsNaNKyH
YUKKKxlF6+PrmMKLtLg1jDMbneKkQRZCNlt8MK6BkChesKYjV5RNaiG9cAbv
J6mYkcCELj/rDXD232kof6dhzdqqjquNEtJYXDkTZ8ELEqc0gWOuTABg9VGJ
fGrqoHFR3QFi/1nIXSRae0DyqJYL2SzXaD487WO5gAH/GoI6QZBefJ9Pti8d
OG7wMOZbTvSWa2RPTuyeqzq7p7/5uhP3q93wG6L0N5UnNHnXKePtJP1PSpRp
u4Sr2XqAW5RKOZaMWxQf0MiPAorAQAlTewEEAJGaLiMRA9DgksYJQkjeHbg1
WmNyVzKEu5umqsF4PdvPNIJCjuTmhOH8bDwqmjgwg+6Ymy4wx1A55k09BT6I
ucrKCiJUQKP0iaCCfQSQvigODUKDRYE1jo1xIAfSlFMyIuSYC6L60wAXwkgh
6CT5rx7OqyzV2s4BImPEtHiBaAMWvZmUZfbMgKjilcTyZEH25gMDVm46z4wo
L2VJ9ljMBoQTEJJoceEBGgGPPHvPEW/gPAVIEDbt9yl0sYtk+qIq5o1kTzje
6apVSoxFD1MzmxXCRKOEDW2AFXwrEaAam5Ktr709ehHFrdQrK2dGpvspYToW
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

-->

</rfc>

