NHE Backchannel Authorization: Graduated Autonomy and Intent-Scoped Credentials for Autonomous Agent Actions
draft-ruvalcaba-nhe-authz-00
This document is an Internet-Draft (I-D).
Anyone may submit an I-D to the IETF.
This I-D is not endorsed by the IETF and has no formal standing in the
IETF standards process.
| Document | Type | Active Internet-Draft (individual) | |
|---|---|---|---|
| Author | Cristian Xavier Ruvalcaba | ||
| Last updated | 2026-08-13 | ||
| RFC stream | (None) | ||
| Intended RFC status | (None) | ||
| Formats | |||
| Stream | Stream state | (No stream defined) | |
| Consensus boilerplate | Unknown | ||
| RFC Editor Note | (None) | ||
| IESG | IESG state | I-D Exists | |
| Telechat date | (None) | ||
| Responsible AD | (None) | ||
| Send notices to | (None) |
draft-ruvalcaba-nhe-authz-00
Individual Submission C.X. Ruvalcaba
Internet-Draft Saluca LLC
Intended status: Standards Track 11 August 2026
Expires: 12 February 2027
NHE Backchannel Authorization: Graduated Autonomy and Intent-Scoped
Credentials for Autonomous Agent Actions
draft-ruvalcaba-nhe-authz-00
Abstract
This document specifies how a consequential action attempted by a
Non-Human Entity (NHE) is authorized at the time it is attempted. A
security runtime transparently intercepts an entity's outbound
action, so the entity holds no standing credentials, and classifies
it under graduated autonomy as autonomous, supervised, or denied. A
supervised action triggers a backchannel approval flow that presents
a human approver with a human-readable rendering of the exact
operation; on approval the runtime issues an intent-scoped, single-
use, short-lived credential cryptographically bound to that specific
action, which an enforcement point verifies against the operation
actually being forwarded. The same canonical parameter digest scopes
the credential and appears in the human-facing description, so the
approver provably authorizes exactly what the credential permits.
The flow and credential data model are specified here; the wire
encoding is deferred to the next revision.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on 12 February 2027.
Ruvalcaba Expires 12 February 2027 [Page 1]
Internet-Draft NHE Authz August 2026
Copyright Notice
Copyright (c) 2026 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/
license-info) in effect on the date of publication of this document.
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document. Code Components
extracted from this document must include Revised BSD License text as
described in Section 4.e of the Trust Legal Provisions and are
provided without warranty as described in the Revised BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Relationship to the NHE Architecture . . . . . . . . . . . . 3
3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
4. Graduated Autonomy . . . . . . . . . . . . . . . . . . . . . 3
5. Backchannel Approval Flow . . . . . . . . . . . . . . . . . . 4
6. Intent-Scoped Credential . . . . . . . . . . . . . . . . . . 4
7. Enforcement . . . . . . . . . . . . . . . . . . . . . . . . . 4
8. Wire Format (to be specified in -01) . . . . . . . . . . . . 5
9. Security Considerations . . . . . . . . . . . . . . . . . . . 5
10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
11. Normative References . . . . . . . . . . . . . . . . . . . . 6
12. Informative References . . . . . . . . . . . . . . . . . . . 6
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 7
1. Introduction
A persistent autonomous entity will attempt actions of widely varying
consequence, from the trivial to the irreversible. Granting it
standing credentials broad enough for all of them makes every prompt
injection or reasoning error a potential catastrophe. This document
specifies an authorization model in which the entity holds no
standing credentials at all: a security runtime transparently
intercepts each outbound action --- with no change to the entity's
own logic --- decides, by the action's sensitivity, whether it may
proceed autonomously, requires human approval, or is denied, and,
when it proceeds, authorizes it with a credential scoped to that one
action and no more.
Ruvalcaba Expires 12 February 2027 [Page 2]
Internet-Draft NHE Authz August 2026
2. Relationship to the NHE Architecture
This document specifies part of the Governance interface of
[I-D.ruvalcaba-nhe-arch] and is the action-time realization of that
model's *bounded-authority* invariant: authority for a specific
action is conferred as a single-use, scope-bound, short-lived grant,
and consequential actions require an external human grant. It
complements the bootstrap protocol [I-D.ruvalcaba-nhe-bootstrap],
which bounds what an entity may ever do; this protocol bounds whether
a particular action is permitted now. The acting entity and the
human approver are named by NHE identity
[I-D.ruvalcaba-nhe-identity], and the authorization flow SHOULD be
recorded in the audit chain [I-D.ruvalcaba-nhe-audit].
3. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHOULD", "MAY", and
"OPTIONAL" are to be interpreted as described in BCP 14 [RFC2119]
[RFC8174].
Security runtime: The component that transparently intercepts an
entity's outbound actions and drives authorization; the entity is
unmodified and holds no standing target credentials.
Autonomy mode: The decision for an action: autonomous, supervised,
or denied.
Intent-scoped credential: A short-lived credential cryptographic-
ally bound to one specific approved action.
Enforcement point: Where the credential is checked against the
operation actually being forwarded.
Binding message: The human-readable rendering of the operation shown
to the approver.
Approver: The human (or delegated authority) who grants or denies a
supervised action.
4. Graduated Autonomy
The security runtime classifies each intercepted action by a
sensitivity assessment into one of three autonomy modes: *autonomous*
(the runtime authorizes it directly), *supervised* (the action
requires human approval via the backchannel flow of Section 5), or
*denied* (the action is refused outright). The sensitivity
assessment is policy; interoperation requires agreement on the three-
mode outcome and the flow each triggers, not on a single
Ruvalcaba Expires 12 February 2027 [Page 3]
Internet-Draft NHE Authz August 2026
classification function.
5. Backchannel Approval Flow
A supervised action triggers an out-of-band approval, decoupled from
the entity's action channel (a backchannel flow in the manner of
OAuth 2.0 [RFC6749] CIBA). The runtime creates an authorization
request with an authentication-request identifier and routes it to
the approver over one or more channels, carrying a *binding message*:
a human-readable rendering of the exact operation to be performed.
The approver grants or denies; the response MUST carry and be
verified against the authentication-request identifier, and for link
or reply channels MUST carry an HMAC-signed, single-use, expiring
action token so an approver cannot inadvertently approve a different
pending request and a response cannot be forged. Critical-
sensitivity actions MUST use a channel providing authenticated
delivery confirmation. Absent a positive approval --- on denial,
delivery failure, approver timeout, or expiry --- the action is
denied (Section 9).
6. Intent-Scoped Credential
On authorization (autonomous, or supervised-and-approved), the
runtime issues a short-lived credential --- for example a JWT
[RFC7519] --- cryptographically bound to the specific action by
carrying, as signed claims, the target resource identifier, the
operation type, and a *digest of the canonicalized operation
parameters* (JSON Canonicalization Scheme [RFC8785], hashed with a
named function), in the spirit of rich, fine-grained authorization
[RFC9396]. Altering any bound field invalidates the signature.
The single most important property is the *digest linkage*: the same
canonicalized-parameter digest that scopes the credential is the
digest rendered to the approver in the binding message. The human
therefore provably approves exactly the operation the credential
authorizes --- closing the confused-deputy gap in which an approver
okays one thing while a different thing is executed.
7. Enforcement
An enforcement point MUST verify, before an operation is forwarded,
that the credential's bound claims match the operation actually being
forwarded, and MUST reject any presentation whose bound claims do not
match. Two modes are supported: in *resource-validated* mode a
credential-aware target validates the credential directly; in
*enforcement-point* mode --- for targets that cannot validate the
credential --- the enforcement point verifies it and only then
obtains a just-in-time, single-operation backend secret, so
Ruvalcaba Expires 12 February 2027 [Page 4]
Internet-Draft NHE Authz August 2026
credential-unaware targets are supported while the runtime still
holds no standing target credential.
Authority is single-use and consumed at forward time: the enforcement
point MUST atomically mark an identifier of the credential consumed
*before* forwarding, and MUST reject any later presentation of that
identifier, using a shared, durable, low-latency consumption store so
the guarantee holds across replicas and restarts (defeating replay
and time-of-check/time-of-use races). Credential lifetime MUST be
measured from issuance and enforced at the enforcement point against
a synchronized time source with a bounded skew tolerance.
8. Wire Format (to be specified in -01)
The three-mode autonomy model, the backchannel approval flow, the
intent-scoped credential's bound-claim structure and its
canonicalization, the digest linkage to the binding message, and the
enforcement semantics (bound-claim match, forward-time single-use,
fail-closed) are fixed by this revision. The concrete encodings of
the approval-flow messages and the credential profile are deferred to
the next revision, reusing existing OAuth and JWT encodings where
practical.
9. Security Considerations
The model's purpose is to shrink the blast radius of a compromised or
misled entity: with no standing credentials and per-action scope, a
prompt injection can at most attempt one narrowly-scoped, possibly
human-gated action rather than wield broad authority. The digest
linkage (Section 6) is the anti-confused-deputy control and MUST be
preserved end to end: the canonicalization [RFC8785] MUST be
identical at binding-message construction, credential issuance, and
enforcement, or the human sees one operation while another is
authorized. Replay is defeated only if consumption is recorded at
forward time in a shared, durable store (Section 7); an in-memory or
after-response revocation list leaves an exploitable window. The
system MUST fail closed: on authorization-server error, all-channel
delivery failure, approver timeout, or expiry, the action is denied
and the denial is logged; no positive approval means no credential
means no execution. Approval responses MUST be bound to the request
identifier and, on reply/link channels, to a single-use expiring
token, or an attacker or a careless approver can authorize the wrong
request; unauthenticated channels (for example plain SMS) MUST be
limited to non-critical actions. The human approval is one input to
a machine-enforced cryptographic process, not a substitute for it.
Ruvalcaba Expires 12 February 2027 [Page 5]
Internet-Draft NHE Authz August 2026
10. IANA Considerations
A future revision will request registries for autonomy modes
(autonomous, supervised, denied) and for the bound-claim names used
in intent-scoped credentials, under a Specification Required policy
[RFC8126], and will register any new JWT claims via the established
JWT claim registry. No IANA action is requested by this skeleton
revision.
11. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>.
[RFC7519] Jones, M., Bradley, J., and N. Sakimura, "JSON Web Token
(JWT)", RFC 7519, May 2015,
<https://www.rfc-editor.org/info/rfc7519>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, May 2017,
<https://www.rfc-editor.org/info/rfc8174>.
[RFC8785] Rundgren, A., Jordan, B., and S. Erdtman, "JSON
Canonicalization Scheme (JCS)", RFC 8785, June 2020,
<https://www.rfc-editor.org/info/rfc8785>.
12. Informative References
[I-D.ruvalcaba-nhe-arch]
Ruvalcaba, C.X., "An Architecture for Non-Human Entities
(NHE)", Work in Progress, Internet-Draft, draft-ruvalcaba-
nhe-arch-00, August 2026,
<https://datatracker.ietf.org/doc/html/draft-ruvalcaba-
nhe-arch-00>.
[I-D.ruvalcaba-nhe-audit]
Ruvalcaba, C.X., "NHE Reasoning-Audit Log", Work in
Progress, Internet-Draft, draft-ruvalcaba-nhe-audit-00,
August 2026, <https://datatracker.ietf.org/doc/html/draft-
ruvalcaba-nhe-audit-00>.
[I-D.ruvalcaba-nhe-bootstrap]
Ruvalcaba, C.X., "NHE Constrained Bootstrap", Work in
Progress, Internet-Draft, draft-ruvalcaba-nhe-bootstrap-
00, August 2026, <https://datatracker.ietf.org/doc/html/
draft-ruvalcaba-nhe-bootstrap-00>.
Ruvalcaba Expires 12 February 2027 [Page 6]
Internet-Draft NHE Authz August 2026
[I-D.ruvalcaba-nhe-identity]
Ruvalcaba, C.X., "NHE Identity", Work in Progress,
Internet-Draft, draft-ruvalcaba-nhe-identity-00, August
2026, <https://datatracker.ietf.org/doc/html/draft-
ruvalcaba-nhe-identity-00>.
[RFC6749] Hardt, D., "The OAuth 2.0 Authorization Framework",
RFC 6749, October 2012,
<https://www.rfc-editor.org/info/rfc6749>.
[RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for
Writing an IANA Considerations Section in RFCs", BCP 26,
RFC 8126, June 2017,
<https://www.rfc-editor.org/info/rfc8126>.
[RFC9396] Lodderstedt, T., Richer, J., and B. Campbell, "OAuth 2.0
Rich Authorization Requests", RFC 9396, May 2023,
<https://www.rfc-editor.org/info/rfc9396>.
Author's Address
Cristian Xavier Ruvalcaba
Saluca LLC
Email: cristian@saluca.com
Ruvalcaba Expires 12 February 2027 [Page 7]