OAuth Authorization Server Metadata Parameter for Requiring DPoP
draft-emelia-oauth-as-metadata-dpop-required-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 | Emelia Smith | ||
| Last updated | 2026-11-02 | ||
| 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-emelia-oauth-as-metadata-dpop-required-00
Web Authorization Protocol E. Smith
Internet-Draft 2 November 2026
Intended status: Standards Track
Expires: 6 May 2027
OAuth Authorization Server Metadata Parameter for Requiring DPoP
draft-emelia-oauth-as-metadata-dpop-required-00
Abstract
This specification defines a new OAuth 2.0 Authorization Server
Metadata parameter, dpop_bound_access_tokens_required, which allows
an authorization server to indicate that it always issues DPoP-bound
access tokens and requires DPoP for all requests made to it to obtain
access tokens, including pushed authorization requests.
This complements the metadata parameter of the same name defined in
OAuth 2.0 Protected Resource Metadata.
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://drafts.thisismissem.social/draft-emelia-oauth-as-metadata-
dpop-required/draft-emelia-oauth-as-metadata-dpop-required.html.
Status information for this document may be found at
https://datatracker.ietf.org/doc/draft-emelia-oauth-as-metadata-dpop-
required/.
Discussion of this document takes place on the Web Authorization
Protocol Working Group mailing list (mailto:oauth@ietf.org), which is
archived at https://mailarchive.ietf.org/arch/browse/oauth/.
Subscribe at https://www.ietf.org/mailman/listinfo/oauth/.
Source for this draft and an issue tracker can be found at
https://github.com/ThisIsMissEm/draft-emelia-oauth-as-metadata-dpop-
required.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Smith Expires 6 May 2027 [Page 1]
Internet-Draft AS Metadata for requiring DPoP November 2026
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 6 May 2027.
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 . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Conventions and Definitions . . . . . . . . . . . . . . . . . 3
3. Authorization Server Metadata . . . . . . . . . . . . . . . . 3
3.1. Example . . . . . . . . . . . . . . . . . . . . . . . . . 4
4. Security Considerations . . . . . . . . . . . . . . . . . . . 5
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
5.1. OAuth Authorization Server Metadata Registry . . . . . . 5
6. References . . . . . . . . . . . . . . . . . . . . . . . . . 6
6.1. Normative References . . . . . . . . . . . . . . . . . . 6
6.2. Informative References . . . . . . . . . . . . . . . . . 6
Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . 6
Document History . . . . . . . . . . . . . . . . . . . . . . . . 7
-00 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 7
Smith Expires 6 May 2027 [Page 2]
Internet-Draft AS Metadata for requiring DPoP November 2026
1. Introduction
An OAuth 2.0 [RFC6749] client can determine from the
dpop_signing_alg_values_supported authorization server metadata
parameter (Section 5.1 of [RFC9449]) whether an authorization server
supports DPoP, but not whether the authorization server requires it.
Without this information, a client can only discover that DPoP is
required by sending a request without DPoP, receiving an error, and
retrying the request with DPoP. [RFC9449] does not define a specific
error for a request that is missing a required DPoP proof, so the
client cannot reliably distinguish this case from other failures.
Additionally, a client that does not support DPoP has no way to
determine in advance that it cannot complete an authorization flow
with the authorization server, and may only discover this after the
user has completed the authorization request.
OAuth 2.0 Protected Resource Metadata [RFC9728] registered a
dpop_bound_access_tokens_required parameter in the IANA "OAuth
Protected Resource Metadata" registry established by that
specification; however, no similar parameter was added to the "OAuth
Authorization Server Metadata" registry established by OAuth 2.0
Authorization Server Metadata [RFC8414]. This specification defines
that metadata parameter for authorization servers.
2. Conventions and Definitions
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.
3. Authorization Server Metadata
The metadata parameter dpop_bound_access_tokens_required is an
optional Boolean value specifying whether the authorization server
always issues DPoP-bound access tokens [RFC9449], and requires DPoP
for all requests made to it to obtain access tokens. The default
value is false.
If the metadata parameter dpop_bound_access_tokens_required is true:
* the authorization server MUST NOT issue access tokens that are not
DPoP-bound, and MUST reject token requests that do not include a
DPoP proof (Section 5 of [RFC9449]).
Smith Expires 6 May 2027 [Page 3]
Internet-Draft AS Metadata for requiring DPoP November 2026
* the authorization server MUST also publish the
dpop_signing_alg_values_supported metadata parameter (Section 5.1
of [RFC9449]).
* the client MUST include a DPoP proof in token requests (Section 5
of [RFC9449]).
* if the client uses pushed authorization requests [RFC9126],
including when the authorization server requires them
(require_pushed_authorization_requests, Section 5 of [RFC9126]),
the client MUST bind them to a DPoP key (Section 10.1 of
[RFC9449]), and the authorization server MUST reject pushed
authorization requests that are not bound to a DPoP key.
A client that does not support DPoP SHOULD NOT initiate an
authorization request with an authorization server that advertises a
value of true.
This metadata parameter applies to all clients of the authorization
server. A requirement that a specific client always uses DPoP is
instead expressed using the dpop_bound_access_tokens client metadata
parameter (Section 5.2 of [RFC9449]).
Unlike the metadata parameter of the same name for protected
resources [RFC9728], which indicates that a protected resource only
accepts DPoP-bound access tokens, this metadata parameter also covers
the requests a client makes to the authorization server to obtain
access tokens.
Since access tokens issued by such an authorization server are DPoP-
bound, clients present them using the DPoP authentication scheme
(Section 7 of [RFC9449]). As a result, these access tokens can only
be used with resource servers that support DPoP; a resource server
that does not support DPoP will reject such requests.
3.1. Example
The following is a non-normative example of authorization server
metadata that includes the dpop_bound_access_tokens_required metadata
parameter:
Smith Expires 6 May 2027 [Page 4]
Internet-Draft AS Metadata for requiring DPoP November 2026
{
"issuer": "https://as.example.com",
"authorization_endpoint": "https://as.example.com/authorize",
"token_endpoint": "https://as.example.com/token",
"pushed_authorization_request_endpoint": "https://as.example.com/par",
"dpop_signing_alg_values_supported": ["ES256", "EdDSA"],
"dpop_bound_access_tokens_required": true
}
4. Security Considerations
The security considerations of [RFC9449] apply to this specification.
The dpop_bound_access_tokens_required parameter informs clients of
the authorization server's requirements; it does not enforce them.
Requests from clients that ignore or do not retrieve the
authorization server metadata are rejected by the authorization
server, as described in Section 3.
A DPoP-bound access token only provides protection against token
replay if the resource server verifies the binding. An attacker that
obtains a DPoP-bound access token may attempt to present it using the
Bearer authentication scheme to a resource server that does not
verify the cnf claim of the access token. Resource servers that
support both the Bearer and DPoP authentication schemes need to
reject DPoP-bound access tokens presented using the Bearer
authentication scheme, as described in Section 7.2 of [RFC9449].
This specification does not change those requirements.
5. IANA Considerations
5.1. OAuth Authorization Server Metadata Registry
The following authorization server metadata value is defined by this
specification and registered in the IANA "OAuth Authorization Server
Metadata" registry established in OAuth 2.0 Authorization Server
Metadata [RFC8414].
* Metadata Name: dpop_bound_access_tokens_required
* Metadata Description: Boolean value specifying whether the
authorization server always issues DPoP-bound access tokens and
requires DPoP for all requests to its pushed authorization request
endpoint and token endpoint
* Change Controller: IETF
* Specification Document: This document
Smith Expires 6 May 2027 [Page 5]
Internet-Draft AS Metadata for requiring DPoP November 2026
6. References
6.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<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,
May 2017, <https://www.rfc-editor.org/rfc/rfc8174>.
[RFC8414] Jones, M., Sakimura, N., and J. Bradley, "OAuth 2.0
Authorization Server Metadata", RFC 8414,
DOI 10.17487/RFC8414, June 2018,
<https://www.rfc-editor.org/rfc/rfc8414>.
[RFC9126] Lodderstedt, T., Campbell, B., Sakimura, N., Tonge, D.,
and F. Skokan, "OAuth 2.0 Pushed Authorization Requests",
RFC 9126, DOI 10.17487/RFC9126, September 2021,
<https://www.rfc-editor.org/rfc/rfc9126>.
[RFC9449] Fett, D., Campbell, B., Bradley, J., Lodderstedt, T.,
Jones, M., and D. Waite, "OAuth 2.0 Demonstrating Proof of
Possession (DPoP)", RFC 9449, DOI 10.17487/RFC9449,
September 2023, <https://www.rfc-editor.org/rfc/rfc9449>.
6.2. Informative References
[RFC6749] Hardt, D., Ed., "The OAuth 2.0 Authorization Framework",
RFC 6749, DOI 10.17487/RFC6749, October 2012,
<https://www.rfc-editor.org/rfc/rfc6749>.
[RFC9728] Jones, M.B., Hunt, P., and A. Parecki, "OAuth 2.0
Protected Resource Metadata", RFC 9728,
DOI 10.17487/RFC9728, April 2025,
<https://www.rfc-editor.org/rfc/rfc9728>.
Acknowledgments
The author would like to thank Max Gerber (Twilio) for identifying
the gap in OAuth Authorization Server Metadata that this document
addresses.
Smith Expires 6 May 2027 [Page 6]
Internet-Draft AS Metadata for requiring DPoP November 2026
Document History
(This appendix to be deleted by the RFC editor in the final
specification.)
-00
Initial draft
Author's Address
Emelia Smith
Email: emelia@brandedcode.com
URI: https://thisismissem.social
Smith Expires 6 May 2027 [Page 7]