<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.17 (Ruby 3.3.1) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-parecki-oauth-client-id-metadata-document-00" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.21.0 -->
  <front>
    <title abbrev="Client ID Document">OAuth Client ID Metadata Document</title>
    <seriesInfo name="Internet-Draft" value="draft-parecki-oauth-client-id-metadata-document-00"/>
    <author fullname="Aaron Parecki">
      <organization>Okta</organization>
      <address>
        <email>aaron@parecki.com</email>
        <uri>https://aaronparecki.com</uri>
      </address>
    </author>
    <author fullname="Emelia Smith">
      <organization/>
      <address>
        <email>emelia@brandedcode.com</email>
        <uri>https://thisismissem.social</uri>
      </address>
    </author>
    <date year="2024" month="July" day="02"/>
    <area>Security</area>
    <workgroup>Web Authorization Protocol</workgroup>
    <keyword>oauth</keyword>
    <abstract>
      <?line 91?>

<t>This specification defines a mechanism through which an OAuth client can
identify itself to authorization servers, without prior dynamic client
registration or other existing registration. This is through the usage of a URL
as a <tt>client_id</tt> in an OAuth flow, where the URL refers to a document containing
the necessary client metadata, enabling the authorization server to fetch the
metadata about the client as needed.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://aaronpk.github.io/draft-parecki-oauth-client-id-metadata-document/draft-parecki-oauth-client-id-metadata-document.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-parecki-oauth-client-id-metadata-document/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Web Authorization Protocol Working Group mailing list (<eref target="mailto:oauth@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/oauth/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/oauth/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/aaronpk/draft-parecki-oauth-client-id-metadata-document"/>.</t>
    </note>
  </front>
  <middle>
    <?line 100?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>In order for an OAuth 2.0 <xref target="RFC6749"/> client to utilize an OAuth 2.0
authorization server, the client needs to establish a unique identifier, and
needs to to provide the server with metadata about the application, such as the
application name, icon and redirect URIs. In cases where a client is interacting
with authorization servers that it has no relationship with, manual registration
is impossible.</t>
      <t>While Dynamic Client Registration <xref target="RFC7591"/> can provide a method for a
previously unknown client to establish itself at an authorization server and
obtain a client identifier, this is not always practical in some deployments and
can create additional challenges around management of the registration data and
cleanup of inactive clients.</t>
      <t>This specification describes how an OAuth 2.0 client can publish its
own registration information and avoid the need for pre-registering
at each authorization server.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

</section>
    <section anchor="client-identifier">
      <name>Client Identifier</name>
      <t>This specification defines the client identifier as a URL with the following
restrictions. Client identifier URLs <bcp14>MUST</bcp14> have an "https" scheme, <bcp14>MUST</bcp14> contain a
path component, <bcp14>MUST NOT</bcp14> contain single-dot or double-dot path segments, <bcp14>MUST
NOT</bcp14> contain a fragment component and <bcp14>MUST NOT</bcp14> contain a username or password
component. Client identifier URLs <bcp14>MAY</bcp14> contain a query string component and <bcp14>MAY</bcp14>
contain a port.</t>
      <t>This specification places no restrictions on what URL is used as
a client identifier. A short URL is <bcp14>RECOMMENDED</bcp14>, since the URL may
be displayed to the end user in the authorization interface or in
management interfaces. Usage of a stable URL that does not frequently
change for the client is also <bcp14>RECOMMENDED</bcp14>.</t>
    </section>
    <section anchor="client-information-discovery">
      <name>Client Information Discovery</name>
      <t>One purpose of registering clients at the authorization server is so that
the authorization server has additional information about the client that
can be used during an OAuth flow, such as presenting information about
the client to the user in an authorization consent screen, for example the
client name and logo.</t>
      <t>The authorization server <bcp14>SHOULD</bcp14> fetch the document indicated by the <tt>client_id</tt>
to retrieve the client registration information.</t>
      <section anchor="client-metadata">
        <name>Client Metadata</name>
        <t>The client metadata document URL is a JSON document containing the metadata
of the client. The client metadata values are the values defined in
OAuth Dynamic Client Registration (<xref target="RFC7591"/>) section 2.</t>
        <t>The client metadata document <bcp14>MUST</bcp14> contain a <tt>client_id</tt> property whose value
<bcp14>MUST</bcp14> compare and match the URL of the document using simple string comparison as
defined in <xref target="RFC3986"/> Section 6.2.1.</t>
        <t>The client metadata document <bcp14>MAY</bcp14> define additional properties in the response.
The client metadata document <bcp14>MAY</bcp14> also be served with more specific content types
as long as the response is JSON and conforms to <tt>application/&lt;AS-defined&gt;+json</tt>.</t>
        <t>The <tt>token_endpoint_auth_method</tt> property <bcp14>MUST NOT</bcp14> include <tt>client_secret_post</tt>
or <tt>client_secret_basic</tt>, as there is no way to establish a shared secret to be
used with these authentication methods. See <xref target="client_authentication"/> for more details.</t>
        <t>Other specifications <bcp14>MAY</bcp14> place additional restrictions on the contents of the
client metadata document accepted by authorization servers implementing their
specification, for instance, preventing the registration of confidential clients
by requiring the <tt>token_endpoint_auth_method</tt> property be set to <tt>"none"</tt>.</t>
      </section>
      <section anchor="metadata-discovery-errors">
        <name>Metadata Discovery Errors</name>
        <t>If fetching the metadata document fails, the authorization server <bcp14>SHOULD</bcp14> abort the
authorization request.</t>
      </section>
      <section anchor="metadata-caching">
        <name>Metadata Caching</name>
        <t>The authorization server <bcp14>MAY</bcp14> cache the client metadata it discovers at the
client metadata document URL.</t>
        <t>TBD: recommend a cache lifetime? considerations about stale data?</t>
        <t>The authorization server <bcp14>MUST NOT</bcp14> cache error responses. The authorization
server also <bcp14>MUST NOT</bcp14> cache documents which are invalid or malformed.</t>
        <t>TBD: Do we want to define an endpoint through which a document can be validated
by an authorization server, such that a developer can assert that their document
is valid?</t>
      </section>
      <section anchor="redirect-url-registration">
        <name>Redirect URL Registration</name>
        <t>According to <xref target="I-D.draft-ietf-oauth-security-topics"/>, the authorization server
<bcp14>MUST</bcp14> require registration of redirect URIs, and <bcp14>MUST</bcp14> ensure that the redirect URI
in a request is an exact match of a registered redirect URI.</t>
        <t>This method of client information discovery establishes a
registered redirect URI with the authorization server which is used when
comparing the redirect URI in an authorization request against the registered
redirect URIs.</t>
      </section>
    </section>
    <section anchor="as-metadata">
      <name>Authorization Server Metadata</name>
      <t>Authorization servers that publish Authorization Server Metadata <xref target="RFC8414"/> <bcp14>MUST</bcp14> include the following property to signal support for client metadata documents as described in this specification.</t>
      <dl>
        <dt><tt>client_id_metadata_document_supported</tt>:</dt>
        <dd>
          <t><bcp14>OPTIONAL</bcp14>. Boolean value specifying whether the authorization server supports retrieving client metadata from a <tt>client_id</tt> URL as described in this specification.</t>
        </dd>
      </dl>
      <t>This enables clients to avoid sending the user to a dead end, by only redirecting the user to an authorization server that supports this specification. Otherwise, the client would redirect the user and the user would be met with an error about an invalid client as described by Section 4.1.2.1 of <xref target="RFC6749"/>.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>In addition to the security considerations in OAuth 2.0 Core <xref target="RFC6749"/>, and OAuth 2.0 Threat Model and Security Considerations <xref target="RFC6819"/>, and <xref target="I-D.draft-ietf-oauth-security-topics"/> the additional considerations apply.</t>
      <section anchor="client_authentication">
        <name>Client Authentication</name>
        <t>Since the client establishes its own registration data at the authorization server,
prior coordination of client credentials is not possible. However, clients <bcp14>MAY</bcp14> establish
credentials at the authorization server by using authentication methods that use
public/private key pairs, by publishing the public key in their metadata document.</t>
        <t>For example, the client <bcp14>MAY</bcp14> include the following properties in its metadata document
to establish a public key and the <tt>private_key_jwt</tt> authentication method defined in <xref target="OpenID"/>:</t>
        <artwork><![CDATA[
{
  ...
  "token_endpoint_auth_method": "private_key_jwt",
  "jwks_uri": "https://client.example.com/jwks.json"
  ...
}
]]></artwork>
        <t>This establishes this client as a confidential client, and any communication with
the authorization server <bcp14>MUST</bcp14> include client authentication of the registered type.</t>
      </section>
      <section anchor="oauth-phishing-attacks">
        <name>OAuth Phishing Attacks</name>
        <t>Authorization servers <bcp14>SHOULD</bcp14> fetch the <tt>client_id</tt> metadata document provided in the authorization request in order to provide users with additional information about the request, such as the application name and logo. If the server does not fetch the client metadata document, then it <bcp14>SHOULD</bcp14> take additional measures to ensure the user is provided with as much information as possible about the request.</t>
        <t>The authorization server <bcp14>SHOULD</bcp14> display the hostname of the <tt>client_id</tt> on the authorization interface, in addition to displaying the fetched client information if any. Displaying the hostname helps users know that they are authorizing the expected application.</t>
        <t>If fetching the client metadata document fails for any reason, the <tt>client_id</tt> URL is the only piece of information the user has as an indication of which application they are authorizing.</t>
      </section>
      <section anchor="server-side-request-forgery-ssrf-attacks">
        <name>Server Side Request Forgery (SSRF) Attacks</name>
        <t>Authorization servers fetching the client metadata document and resolving URLs located in the metadata document should be aware of possible SSRF attacks. Authorization servers <bcp14>SHOULD</bcp14> avoid fetching any URLs using private or loopback addresses and consider network policies or other measures to prevent making requests to these addresses. Authorization servers <bcp14>SHOULD</bcp14> also be aware of the possibility that URLs might be non-http-based URI schemes which can lead to other possible SSRF attack vectors.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="oauth-authorization-server-metadata-registry">
        <name>OAuth Authorization Server Metadata Registry</name>
        <t>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 <xref target="RFC8414"/>.</t>
        <ul spacing="normal">
          <li>
            <t>Metadata Name: <tt>client_id_metadata_document_supported</tt>:</t>
          </li>
          <li>
            <t>Metadata Description: JSON boolean value specifying whether the authorization server supports retrieving client metadata from a <tt>client_id</tt> URL.</t>
          </li>
          <li>
            <t>Change Controller: IETF</t>
          </li>
          <li>
            <t>Specification Document: <xref target="as-metadata"/> of [[ this document ]]</t>
          </li>
        </ul>
      </section>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC3986">
          <front>
            <title>Uniform Resource Identifier (URI): Generic Syntax</title>
            <author fullname="T. Berners-Lee" initials="T." surname="Berners-Lee"/>
            <author fullname="R. Fielding" initials="R." surname="Fielding"/>
            <author fullname="L. Masinter" initials="L." surname="Masinter"/>
            <date month="January" year="2005"/>
            <abstract>
              <t>A Uniform Resource Identifier (URI) is a compact sequence of characters that identifies an abstract or physical resource. This specification defines the generic URI syntax and a process for resolving URI references that might be in relative form, along with guidelines and security considerations for the use of URIs on the Internet. The URI syntax defines a grammar that is a superset of all valid URIs, allowing an implementation to parse the common components of a URI reference without knowing the scheme-specific requirements of every possible identifier. This specification does not define a generative grammar for URIs; that task is performed by the individual specifications of each URI scheme. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="66"/>
          <seriesInfo name="RFC" value="3986"/>
          <seriesInfo name="DOI" value="10.17487/RFC3986"/>
        </reference>
        <reference anchor="RFC6749">
          <front>
            <title>The OAuth 2.0 Authorization Framework</title>
            <author fullname="D. Hardt" initials="D." role="editor" surname="Hardt"/>
            <date month="October" year="2012"/>
            <abstract>
              <t>The OAuth 2.0 authorization framework enables a third-party application to obtain limited access to an HTTP service, either on behalf of a resource owner by orchestrating an approval interaction between the resource owner and the HTTP service, or by allowing the third-party application to obtain access on its own behalf. This specification replaces and obsoletes the OAuth 1.0 protocol described in RFC 5849. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6749"/>
          <seriesInfo name="DOI" value="10.17487/RFC6749"/>
        </reference>
        <reference anchor="RFC6819">
          <front>
            <title>OAuth 2.0 Threat Model and Security Considerations</title>
            <author fullname="T. Lodderstedt" initials="T." role="editor" surname="Lodderstedt"/>
            <author fullname="M. McGloin" initials="M." surname="McGloin"/>
            <author fullname="P. Hunt" initials="P." surname="Hunt"/>
            <date month="January" year="2013"/>
            <abstract>
              <t>This document gives additional security considerations for OAuth, beyond those in the OAuth 2.0 specification, based on a comprehensive threat model for the OAuth 2.0 protocol. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6819"/>
          <seriesInfo name="DOI" value="10.17487/RFC6819"/>
        </reference>
        <reference anchor="RFC7591">
          <front>
            <title>OAuth 2.0 Dynamic Client Registration Protocol</title>
            <author fullname="J. Richer" initials="J." role="editor" surname="Richer"/>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="M. Machulak" initials="M." surname="Machulak"/>
            <author fullname="P. Hunt" initials="P." surname="Hunt"/>
            <date month="July" year="2015"/>
            <abstract>
              <t>This specification defines mechanisms for dynamically registering OAuth 2.0 clients with authorization servers. Registration requests send a set of desired client metadata values to the authorization server. The resulting registration responses return a client identifier to use at the authorization server and the client metadata values registered for the client. The client can then use this registration information to communicate with the authorization server using the OAuth 2.0 protocol. This specification also defines a set of common client metadata fields and values for clients to use during registration.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7591"/>
          <seriesInfo name="DOI" value="10.17487/RFC7591"/>
        </reference>
        <reference anchor="RFC8414">
          <front>
            <title>OAuth 2.0 Authorization Server Metadata</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <date month="June" year="2018"/>
            <abstract>
              <t>This specification defines a metadata format that an OAuth 2.0 client can use to obtain the information needed to interact with an OAuth 2.0 authorization server, including its endpoint locations and authorization server capabilities.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8414"/>
          <seriesInfo name="DOI" value="10.17487/RFC8414"/>
        </reference>
        <reference anchor="I-D.draft-ietf-oauth-security-topics">
          <front>
            <title>OAuth 2.0 Security Best Current Practice</title>
            <author fullname="Torsten Lodderstedt" initials="T." surname="Lodderstedt">
              <organization>SPRIND</organization>
            </author>
            <author fullname="John Bradley" initials="J." surname="Bradley">
              <organization>Yubico</organization>
            </author>
            <author fullname="Andrey Labunets" initials="A." surname="Labunets">
              <organization>Independent Researcher</organization>
            </author>
            <author fullname="Daniel Fett" initials="D." surname="Fett">
              <organization>Authlete</organization>
            </author>
            <date day="3" month="June" year="2024"/>
            <abstract>
              <t>   This document describes best current security practice for OAuth 2.0.
   It updates and extends the threat model and security advice given in
   RFC 6749, RFC 6750, and RFC 6819 to incorporate practical experiences
   gathered since OAuth 2.0 was published and covers new threats
   relevant due to the broader application of OAuth 2.0.  Further, it
   deprecates some modes of operation that are deemed less secure or
   even insecure.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-oauth-security-topics-29"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="IndieAuth" target="https://indieauth.spec.indieweb.org/">
          <front>
            <title>IndieAuth</title>
            <author initials="A." surname="Parecki" fullname="Aaron Parecki">
              <organization/>
            </author>
            <date year="2022" month="February" day="12"/>
          </front>
        </reference>
        <reference anchor="Solid-OIDC" target="https://solidproject.org/TR/2022/oidc-20220328">
          <front>
            <title>Solid-OIDC</title>
            <author initials="A." surname="Coburn" fullname="Aaron Coburn">
              <organization>Inrupt</organization>
            </author>
            <author initials="" surname="elf Pavlik" fullname="elf Pavlik">
              <organization/>
            </author>
            <author initials="D." surname="Zagidulin" fullname="Dmitri Zagidulin">
              <organization/>
            </author>
            <date year="2022" month="March" day="28"/>
          </front>
        </reference>
        <reference anchor="OpenID" target="https://openid.net/specs/openid-connect-core-1_0.html">
          <front>
            <title>OpenID Connect Core 1.0</title>
            <author initials="N." surname="Sakimura" fullname="N. Sakimura">
              <organization>NAT.Consulting</organization>
            </author>
            <author initials="J." surname="Bradley" fullname="J. Bradley">
              <organization>Yubico</organization>
            </author>
            <author initials="M." surname="Jones" fullname="M. Jones">
              <organization>Self-Issued Consulting</organization>
            </author>
            <author initials="B. de" surname="Medeiros" fullname="B. de Medeiros">
              <organization>Google</organization>
            </author>
            <author initials="C." surname="Mortimore" fullname="C. Mortimore">
              <organization>Disney</organization>
            </author>
            <date year="2023" month="December" day="15"/>
          </front>
        </reference>
        <reference anchor="OpenID.Federation" target="https://openid.net/specs/openid-federation-1_0.html">
          <front>
            <title>OpenID Federation 1.0</title>
            <author initials="R." surname="Hedberg" fullname="R. Hedberg">
              <organization>independent</organization>
            </author>
            <author initials="M.B." surname="Jones" fullname="M.B. Jones">
              <organization>Self-Issued Consulting</organization>
            </author>
            <author initials="A.Å." surname="Solberg" fullname="A.Å. Solberg">
              <organization>Sikt</organization>
            </author>
            <author initials="J." surname="Bradley" fullname="J. Bradley">
              <organization>Yubico</organization>
            </author>
            <author initials="G. D." surname="Marco" fullname="G. De Marco">
              <organization>independent</organization>
            </author>
            <author initials="V." surname="Dzhuvinov" fullname="V. Dzhuvinov">
              <organization>Connect2id</organization>
            </author>
            <date year="2024" month="May" day="17"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 283?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The idea of using URIs as the <tt>client_id</tt> in OAuth based authorization requests is not new, and has previously been specified in varying ways by <xref target="IndieAuth"/>, <xref target="Solid-OIDC"/>, and <xref target="OpenID.Federation"/>. This specification is largely inspired by the work of Aaron Coburn, elf Pavlik, and Dmitri Zagidulin in their <xref target="Solid-OIDC"/> specification which defined dereferenceable Client Identifier Documents.</t>
      <t>The authors would like to thank the following people for their contributions and reviews of this specification: Matthieu Sieben.</t>
    </section>
    <section numbered="false" anchor="document-history">
      <name>Document History</name>
      <t>[[ To be removed from the final specification ]]</t>
      <t>-00</t>
      <ul spacing="normal">
        <li>
          <t>Initial draft</t>
        </li>
      </ul>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
