Internet-Draft OAuth Mission Status List September 2026
McGuinness Expires 20 March 2027 [Page]
Workgroup:
Web Authorization Protocol
Internet-Draft:
draft-mcguinness-oauth-mission-status-list-latest
Published:
Intended Status:
Standards Track
Expires:
Author:
K. McGuinness
Independent

Mission Status List for OAuth 2.0

Abstract

The Mission Status and Lifecycle profile for OAuth 2.0 lets a consumer holding a mission_id resolve current Mission state, one Mission at a time, from a signed Mission Status Response or a token introspection projection. This document defines a companion surface for fleet scale: a Mission Issuer MAY additionally publish Mission state as an OAuth Status List, a signed, compressed bit array in which each participating Mission holds an index, fetched once per freshness window and read locally per action. It is optional and builds on the Mission Status and Lifecycle profile; a deployment that does not adopt it is unaffected.

About This Document

This note is to be removed before publishing as an RFC.

The latest revision of this draft can be found at https://mcguinness.github.io/mission-bound-authorization/draft-mcguinness-oauth-mission-status-list.html. Status information for this document may be found at https://datatracker.ietf.org/doc/draft-mcguinness-oauth-mission-status-list/.

Source for this draft and an issue tracker can be found at https://github.com/mcguinness/mission-bound-authorization.

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 20 March 2027.

▲

Table of Contents

1. Introduction

This document is a satellite of the Mission Status and Lifecycle profile [I-D.draft-mcguinness-oauth-mission-status] ("the Status profile"), adding a fleet-scale reliance surface.

The Status profile lets a consumer resolve current Mission state from the dedicated Mission Status operation or the token introspection projection, one Mission at a time. A consumer that relies on many Missions concurrently, such as a gateway fronting an agent fleet, can instead read Mission state from a compact, signed bit array published once and read locally per action. This document defines that surface: a Mission Status List ([I-D.draft-ietf-oauth-status-list]) profile of a status_list extension member the Status profile's response and introspection surfaces already accommodate.

This document is optional. A Mission Issuer that does not publish a Status List, and a consumer that does not read one, are unaffected; they rely on the Status profile's per-Mission surfaces directly.

This document defines no new Mission semantics and changes no meaning of any existing member: the Mission, its lifecycle states, and the Mission Status Response are defined in [I-D.draft-mcguinness-oauth-mission-status].

2. Status: An Optional Profile

Role: companion. Spec maturity: experimental. Maintenance: active. Implementation: not yet in the conformance ledger (conformance-manifest.json). Adopt when: A consumer relies on many Missions concurrently and per-Mission status reads do not scale. Requires: Mission-Bound Authorization for OAuth 2.0; Mission Status and Lifecycle for OAuth 2.0.

3. Conventions and Terminology

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.

This document uses the terms defined in the issuance profile [I-D.draft-mcguinness-oauth-mission] and the Status profile [I-D.draft-mcguinness-oauth-mission-status], in particular Mission, Mission Issuer, mission_id, the Mission lifecycle states, the Mission Status Response, and the token introspection projection.

All JSON shown in this document is non-normative and illustrative; the member definitions in the surrounding text are authoritative.

4. Mission Status List

This section is OPTIONAL.

One consumer often relies on many Missions at once: a gateway fronting an agent fleet holds a Mission per unit of work, and per-Mission status reads at that scale are a latency tax the Status profile's caching rules cannot amortize. A Mission Issuer MAY additionally publish Mission state as a Status List ([I-D.draft-ietf-oauth-status-list]): a signed, compressed bit array in which each participating Mission holds an index, fetched once per freshness window and read locally per action.

The arithmetic is the point. A fleet of 100,000 participating Missions at two bits per entry is 25,000 bytes before compression, and a mostly-active population compresses far below that; a consumer fetching that list once per 30-second window spends under a kilobyte per second to hold fresh state for every Mission it relies on, where per-Mission status reads would cost 100,000 requests per window. Fleet scale makes state freshness cheaper per Mission, not more expensive.

5. Security Considerations

The security considerations of the issuance profile [I-D.draft-mcguinness-oauth-mission] and the Status profile [I-D.draft-mcguinness-oauth-mission-status] apply in full. This document introduces no attack surface beyond the Mapping and Freshness rules of Section 4, which are normative above: a consumer that fails safe on a non-VALID bit and never relies past the Status List Token's own exp inherits the Status profile's revocation-propagation guarantees for the fleet-scale path.

6. Privacy Considerations

The privacy considerations of the issuance profile [I-D.draft-mcguinness-oauth-mission] and the Status profile [I-D.draft-mcguinness-oauth-mission-status] apply in full. The Status List's own privacy rule, that index assignment MUST NOT be derivable from or correlatable with the Mission Identifier, is given in Section 4.

7. IANA Considerations

This document requests no IANA actions. It defines no new OAuth Authorization Server metadata member, media type, or registry: the status_list object it profiles reuses the Status profile's existing Mission Status Response and introspection extension point ([I-D.draft-mcguinness-oauth-mission-status]).

8. Conformance

An implementation claiming this capability MUST publish a Mission Status List meeting the Reference, Mapping, Freshness, and Privacy rules of Section 4. An implementation that does not claim it is unaffected and remains conformant to the Status profile.

Acknowledgments

The author thanks the implementers and reviewers of the Mission-Bound Authorization work for feedback that shaped this extension.

References

Normative References

[I-D.draft-ietf-oauth-status-list]
Looker, T., Bastian, P., and C. Bormann, "Token Status List (TSL)", Work in Progress, Internet-Draft, draft-ietf-oauth-status-list-21, , <https://datatracker.ietf.org/doc/html/draft-ietf-oauth-status-list-21>.
[I-D.draft-mcguinness-oauth-mission]
McGuinness, K., "Mission-Bound Authorization for OAuth 2.0", , <https://mcguinness.github.io/mission-bound-authorization/draft-mcguinness-oauth-mission.html>.
[I-D.draft-mcguinness-oauth-mission-status]
McGuinness, K., "Mission Status and Lifecycle for OAuth 2.0", , <https://mcguinness.github.io/mission-bound-authorization/draft-mcguinness-oauth-mission-status.html>.
[RFC2119]
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, , <https://www.rfc-editor.org/rfc/rfc2119>.
[RFC8174]
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, , <https://www.rfc-editor.org/rfc/rfc8174>.

Informative References

[I-D.draft-mcguinness-mission-runtime]
McGuinness, K., "Mission-Bound Runtime Enforcement", , <https://mcguinness.github.io/mission-bound-authorization/draft-mcguinness-mission-runtime.html>.

Author's Address

Karl McGuinness
Independent