rfc8959.original.xml   rfc8959.form.xml 
<?xml version='1.0' encoding='utf-8'?> <?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.3.3 -->
<!DOCTYPE rfc SYSTEM "../Tools/rfcbootstrap/rfc2629-xhtml.ent"> <!DOCTYPE rfc SYSTEM "../Tools/rfcbootstrap/rfc2629-xhtml.ent">
<?rfc toc="yes"?>
<?rfc tocindent="yes"?> <rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft
<?rfc sortrefs="yes"?> -nottingham-how-did-that-get-into-the-repo-02" number="0000" obsoletes="" update
<?rfc symrefs="yes"?> s="" submissionType="IETF" category="info" consensus="true" xml:lang="en" tocInc
<?rfc strict="yes"?> lude="true" sortRefs="true" symRefs="true" version="3">
<?rfc compact="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft
-nottingham-how-did-that-get-into-the-repo-02" category="info" obsoletes="" upda
tes="" submissionType="IETF" xml:lang="en" tocInclude="true" sortRefs="true" sym
Refs="true" version="3">
<!-- xml2rfc v2v3 conversion 3.2.1 --> <!-- xml2rfc v2v3 conversion 3.2.1 -->
<front> <front>
<title>The secret-token URI Scheme</title> <title>The secret-token URI Scheme</title>
<seriesInfo name="Internet-Draft" value="draft-nottingham-how-did-that-get-i nto-the-repo-02"/> <seriesInfo name="RFC" value="0000"/>
<author initials="M." surname="Nottingham" fullname="Mark Nottingham"> <author initials="M." surname="Nottingham" fullname="Mark Nottingham">
<organization/> <organization/>
<address> <address>
<postal> <postal>
<city>Prahran</city> <city>Prahran</city>
<region>VIC</region> <region>VIC</region>
<country>Australia</country> <country>Australia</country>
</postal> </postal>
<email>mnot@mnot.net</email> <email>mnot@mnot.net</email>
<uri>https://www.mnot.net/</uri> <uri>https://www.mnot.net/</uri>
</address> </address>
</author> </author>
<date year="2020"/> <date year="2020" month="October" />
<area>General</area> <area>General</area>
<keyword>Internet-Draft</keyword>
<!-- [rfced] Please insert any keywords (beyond those that appear in the title)
for use on https://www.rfc-editor.org/search. -->
<keyword>example</keyword>
<abstract> <abstract>
<t>This document registers the "secret-token" URI scheme, to aid in the id entification <t>This document registers the "secret-token" URI scheme, to aid in the id entification
of authentication tokens.</t> of authentication tokens.</t>
</abstract> </abstract>
<note> <note>
<name>Note to Readers</name> <name>Note to Readers</name>
<t><em>RFC EDITOR: please remove this section before publication</em></t> <t><em>RFC EDITOR: please remove this section before publication</em></t>
<t>The issues list for this draft can be found at <eref target="https://gi thub.com/mnot/I-D/labels/how-did-that-get-into-the-repo">https://github.com/mnot /I-D/labels/how-did-that-get-into-the-repo</eref>.</t> <t>The issues list for this draft can be found at <eref target="https://gi thub.com/mnot/I-D/labels/how-did-that-get-into-the-repo">https://github.com/mnot /I-D/labels/how-did-that-get-into-the-repo</eref>.</t>
<t>The most recent (often, unpublished) draft is at <eref target="https:// mnot.github.io/I-D/how-did-that-get-into-the-repo/">https://mnot.github.io/I-D/h ow-did-that-get-into-the-repo/</eref>.</t> <t>The most recent (often, unpublished) draft is at <eref target="https:// mnot.github.io/I-D/how-did-that-get-into-the-repo/">https://mnot.github.io/I-D/h ow-did-that-get-into-the-repo/</eref>.</t>
<t>Recent changes are listed at <eref target="https://github.com/mnot/I-D/ commits/gh-pages/how-did-that-get-into-the-repo">https://github.com/mnot/I-D/com mits/gh-pages/how-did-that-get-into-the-repo</eref>.</t> <t>Recent changes are listed at <eref target="https://github.com/mnot/I-D/ commits/gh-pages/how-did-that-get-into-the-repo">https://github.com/mnot/I-D/com mits/gh-pages/how-did-that-get-into-the-repo</eref>.</t>
skipping to change at line 62 skipping to change at line 59
<t>A bearer token is a security token with the property that any party in possession of the token (a <t>A bearer token is a security token with the property that any party in possession of the token (a
"bearer") can use the token in any way that any other party in possession of it can. Using a bearer "bearer") can use the token in any way that any other party in possession of it can. Using a bearer
token does not require a bearer to prove possession of cryptographic key materia l token does not require a bearer to prove possession of cryptographic key materia l
(proof-of-possession).</t> (proof-of-possession).</t>
<t>Unfortunately, the number of security incidents involving accidental di sclosure of these tokens has also increased. For example, we now regularly hear about a developer committing an access token to a public source code repository, either because they didn't realise it was included in the committed code, or be cause they didn't realise the implications of its disclosure.</t> <t>Unfortunately, the number of security incidents involving accidental di sclosure of these tokens has also increased. For example, we now regularly hear about a developer committing an access token to a public source code repository, either because they didn't realise it was included in the committed code, or be cause they didn't realise the implications of its disclosure.</t>
<t>This specification registers the "secret-token" URI scheme to aid preve ntion of such accidental disclosures. When tokens are easier to unambiguously id entify, they can trigger warnings in Continuous Integration systems, or be used in source code repositories themselves. They can also be scanned for separately. </t> <t>This specification registers the "secret-token" URI scheme to aid preve ntion of such accidental disclosures. When tokens are easier to unambiguously id entify, they can trigger warnings in Continuous Integration systems, or be used in source code repositories themselves. They can also be scanned for separately. </t>
<t>For example, if cloud.example.net issues access tokens to its clients f or later use, and it does so by formatting them as secret-token URIs, tokens tha t "leak" into places that they don't belong are easier to identify. This could b e through a variety of mechanisms; for example, if repo.example.com can be confi gured to refuse commits containing secret-token URIs, it helps its customers avo id accidental disclosures.</t> <t>For example, if cloud.example.net issues access tokens to its clients f or later use, and it does so by formatting them as secret-token URIs, tokens tha t "leak" into places that they don't belong are easier to identify. This could b e through a variety of mechanisms; for example, if repo.example.com can be confi gured to refuse commits containing secret-token URIs, it helps its customers avo id accidental disclosures.</t>
<t>secret-token URIs are intended to aid in identification of generated se crets like API keys and similar tokens. They are not intended for use in control led situations where ephemeral tokens are used, such as things like Cross-Site R equest Forgery (CSRF) tokens.</t> <t>secret-token URIs are intended to aid in identification of generated se crets like API keys and similar tokens. They are not intended for use in control led situations where ephemeral tokens are used, such as things like Cross-Site R equest Forgery (CSRF) tokens.</t>
<section anchor="notational-conventions" numbered="true" toc="default"> <section anchor="notational-conventions" numbered="true" toc="default">
<name>Notational Conventions</name> <name>Notational Conventions</name>
<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", " <t>
SHOULD", "SHOULD NOT", The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQU
"RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to IRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
be interpreted as NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>
described in BCP 14 <xref target="RFC2119" format="default"/> <xref target="RFC8 RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
174" format="default"/> when, and only when, they appear in all capitals, as "<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to
shown here.</t> be interpreted as
described in BCP&nbsp;14 <xref target="RFC2119"/> <xref target="RFC8174"/>
when, and only when, they appear in all capitals, as shown here.
</t>
<t>This document uses ABNF <xref target="RFC5234" format="default"/>. It also uses the pchar rule from <xref target="RFC3986" format="default"/>.</t> <t>This document uses ABNF <xref target="RFC5234" format="default"/>. It also uses the pchar rule from <xref target="RFC3986" format="default"/>.</t>
</section> </section>
</section> </section>
<section anchor="the-secret-token-uri-scheme" numbered="true" toc="default"> <section anchor="the-secret-token-uri-scheme" numbered="true" toc="default">
<name>The secret-token URI scheme</name> <name>The secret-token URI scheme</name>
<t>The secret-token URI scheme identifies a token that is intended to be a secret.</t> <t>The secret-token URI scheme identifies a token that is intended to be a secret.</t>
<artwork type="abnf" name="" align="left" alt=""><![CDATA[ <sourcecode type=""><![CDATA[
secret-token-URI = secret-token-scheme ":" token secret-token-URI = secret-token-scheme ":" token
secret-token-scheme = "secret-token" secret-token-scheme = "secret-token"
token = 1*pchar token = 1*pchar
]]></artwork> ]]></sourcecode>
<t>See <xref target="RFC3986" format="default"/>, Section 3.3 for a defini <t>See <xref target="RFC3986" sectionFormat="comma" section="3.3"/> for a
tion of pchar. Disallowed characters - including non-ASCII characters - MUST be definition of pchar. Disallowed characters - including non-ASCII characters - <b
encoded into UTF-8 <xref target="RFC3629" format="default"/> and then percent-en cp14>MUST</bcp14> be encoded into UTF-8 <xref target="RFC3629" format="default"/
coded (<xref target="RFC3986" format="default"/>, Section 2.1).</t> > and then percent-encoded (<xref target="RFC3986" sectionFormat="comma" section
<t>When a token is both generated and presented for authentication, the en ="2.1"/>).</t>
tire URI MUST be used, <t>When a token is both generated and presented for authentication, the en
tire URI <bcp14>MUST</bcp14> be used,
without changes.</t> without changes.</t>
<t>For example, given the URI:</t> <t>For example, given the URI:</t>
<artwork type="example" name="" align="left" alt=""><![CDATA[ <sourcecode type=""><![CDATA[
secret-token:E92FB7EB-D882-47A4-A265-A0B6135DC842%20foo secret-token:E92FB7EB-D882-47A4-A265-A0B6135DC842%20foo
]]></artwork> ]]></sourcecode>
<t>This string (character-for-character, case-sensitive) will both be issu ed by the token authority, and required for later access. Therefore, if the exam ple above were used as a bearer token in <xref target="RFC6750" format="default" />, a client might send:</t> <t>This string (character-for-character, case-sensitive) will both be issu ed by the token authority, and required for later access. Therefore, if the exam ple above were used as a bearer token in <xref target="RFC6750" format="default" />, a client might send:</t>
<artwork type="example" name="" align="left" alt=""><![CDATA[ <sourcecode type=""><![CDATA[
GET /authenticated/stuff HTTP/1.1 GET /authenticated/stuff HTTP/1.1
Host: www.example.com Host: www.example.com
Authorization: Bearer secret-token:E92FB7EB-D882-47A4-A265-A0B6135DC842%20foo Authorization: Bearer secret-token:E92FB7EB-D882-47A4-A265-A0B6135DC842%20foo
]]></artwork> ]]></sourcecode>
</section> </section>
<section anchor="iana-considerations" numbered="true" toc="default"> <section anchor="iana-considerations" numbered="true" toc="default">
<name>IANA Considerations</name> <name>IANA Considerations</name>
<t>This document registers the following value in the URI Scheme registry: </t> <t>This document registers the following value in the URI Scheme registry: </t>
<ul spacing="normal"> <dl newline="false" spacing="compact">
<li>Scheme name: secret-token</li> <dt>Scheme name:</dt>
<li>Status: provisional</li> <dd>secret-token</dd>
<li>Applications / protocols that use this scheme: none yet</li> <dt>Status:</dt>
<li>Contact: iesg@iesg.org</li> <dd>provisional</dd>
<li>Change Controller: IESG</li> <dt>Applications / protocols that use this scheme:</dt>
<li>References: (this document)</li> <dd>none yet</dd>
</ul> <dt>Contact:</dt>
<dd>iesg@iesg.org</dd>
<dt>Change Controller:</dt>
<dd>IESG</dd>
<dt>References:</dt>
<dd>(this document)</dd>
</dl>
</section> </section>
<section anchor="security-considerations" numbered="true" toc="default"> <section anchor="security-considerations" numbered="true" toc="default">
<name>Security Considerations</name> <name>Security Considerations</name>
<t>The token ABNF rule allows tokens as small as one character. This is no t recommended practice; applications should evaluate their requirements for entr opy and issue tokens correspondingly. <t>The token ABNF rule allows tokens as small as one character. This is no t recommended practice; applications should evaluate their requirements for entr opy and issue tokens correspondingly.
See <xref target="RFC4086" format="default"/> for more information.</t> See <xref target="RFC4086" format="default"/> for more information.</t>
<t>This URI scheme is intended to reduce the incidence of accidental discl osure; it cannot prevent intentional disclosure.</t> <t>This URI scheme is intended to reduce the incidence of accidental discl osure; it cannot prevent intentional disclosure.</t>
<t>If it is difficult to correctly handle secret material, or unclear as t o what the appropriate handling is, users might choose to obfuscate their secret tokens in order to evade detection (for example, removing the URI scheme for st orage). Mitigating this risk is often beyond the reach of <t>If it is difficult to correctly handle secret material, or unclear as t o what the appropriate handling is, users might choose to obfuscate their secret tokens in order to evade detection (for example, removing the URI scheme for st orage). Mitigating this risk is often beyond the reach of
the system using the secret-token URI, but they can caution users against such p ractices, and the system using the secret-token URI, but they can caution users against such p ractices, and
provide tools to help.</t> provide tools to help.</t>
</section> </section>
</middle> </middle>
<back> <back>
<references> <references>
<name>References</name> <name>References</name>
<references> <references>
<name>Normative References</name> <name>Normative References</name>
<reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2
119"> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.2119.
<front> xml"/>
<title>Key words for use in RFCs to Indicate Requirement Levels</tit <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.8174.
le> xml"/>
<author initials="S." surname="Bradner" fullname="S. Bradner"> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.5234.
<organization/> xml"/>
</author> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.3986.
<date year="1997" month="March"/> xml"/>
<abstract> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.3629.
<t>In many standards track documents several words are used to sig xml"/>
nify the requirements in the specification. These words are often capitalized.
This document defines these words as they should be interpreted in IETF document
s. 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" target="https://www.rfc-editor.org/info/rfc8
174">
<front>
<title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</ti
tle>
<author initials="B." surname="Leiba" fullname="B. Leiba">
<organization/>
</author>
<date year="2017" month="May"/>
<abstract>
<t>RFC 2119 specifies common key words that may be used in protoco
l specifications. This document aims to reduce the ambiguity by clarifying tha
t 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="RFC5234" target="https://www.rfc-editor.org/info/rfc5
234">
<front>
<title>Augmented BNF for Syntax Specifications: ABNF</title>
<author initials="D." surname="Crocker" fullname="D. Crocker" role="
editor">
<organization/>
</author>
<author initials="P." surname="Overell" fullname="P. Overell">
<organization/>
</author>
<date year="2008" month="January"/>
<abstract>
<t>Internet technical specifications often need to define a formal
syntax. Over the years, a modified version of Backus-Naur Form (BNF), called A
ugmented BNF (ABNF), has been popular among many Internet specifications. The c
urrent specification documents ABNF. It balances compactness and simplicity with
reasonable representational power. The differences between standard BNF and AB
NF involve naming rules, repetition, alternatives, order-independence, and value
ranges. This specification also supplies additional rule definitions and encod
ing for a core lexical analyzer of the type common to several Internet specifica
tions. [STANDARDS-TRACK]</t>
</abstract>
</front>
<seriesInfo name="STD" value="68"/>
<seriesInfo name="RFC" value="5234"/>
<seriesInfo name="DOI" value="10.17487/RFC5234"/>
</reference>
<reference anchor="RFC3986" target="https://www.rfc-editor.org/info/rfc3
986">
<front>
<title>Uniform Resource Identifier (URI): Generic Syntax</title>
<author initials="T." surname="Berners-Lee" fullname="T. Berners-Lee
">
<organization/>
</author>
<author initials="R." surname="Fielding" fullname="R. Fielding">
<organization/>
</author>
<author initials="L." surname="Masinter" fullname="L. Masinter">
<organization/>
</author>
<date year="2005" month="January"/>
<abstract>
<t>A Uniform Resource Identifier (URI) is a compact sequence of ch
aracters that identifies an abstract or physical resource. This specification d
efines the generic URI syntax and a process for resolving URI references that mi
ght be in relative form, along with guidelines and security considerations for t
he use of URIs on the Internet. The URI syntax defines a grammar that is a supe
rset of all valid URIs, allowing an implementation to parse the common component
s of a URI reference without knowing the scheme-specific requirements of every p
ossible identifier. This specification does not define a generative grammar for
URIs; that task is performed by the individual specifications of each URI schem
e. [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="RFC3629" target="https://www.rfc-editor.org/info/rfc3
629">
<front>
<title>UTF-8, a transformation format of ISO 10646</title>
<author initials="F." surname="Yergeau" fullname="F. Yergeau">
<organization/>
</author>
<date year="2003" month="November"/>
<abstract>
<t>ISO/IEC 10646-1 defines a large character set called the Univer
sal Character Set (UCS) which encompasses most of the world's writing systems.
The originally proposed encodings of the UCS, however, were not compatible with
many current applications and protocols, and this has led to the development of
UTF-8, the object of this memo. UTF-8 has the characteristic of preserving the
full US-ASCII range, providing compatibility with file systems, parsers and othe
r software that rely on US-ASCII values but are transparent to other values. Th
is memo obsoletes and replaces RFC 2279.</t>
</abstract>
</front>
<seriesInfo name="STD" value="63"/>
<seriesInfo name="RFC" value="3629"/>
<seriesInfo name="DOI" value="10.17487/RFC3629"/>
</reference>
</references> </references>
<references> <references>
<name>Informative References</name> <name>Informative References</name>
<reference anchor="RFC6750" target="https://www.rfc-editor.org/info/rfc6
750"> <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.6750.
<front> xml"/>
<title>The OAuth 2.0 Authorization Framework: Bearer Token Usage</ti <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.RFC.4086.
tle> xml"/>
<author initials="M." surname="Jones" fullname="M. Jones">
<organization/>
</author>
<author initials="D." surname="Hardt" fullname="D. Hardt">
<organization/>
</author>
<date year="2012" month="October"/>
<abstract>
<t>This specification describes how to use bearer tokens in HTTP r
equests to access OAuth 2.0 protected resources. Any party in possession of a b
earer token (a "bearer") can use it to get access to the associated resources (w
ithout demonstrating possession of a cryptographic key). To prevent misuse, bea
rer tokens need to be protected from disclosure in storage and in transport. [
STANDARDS-TRACK]</t>
</abstract>
</front>
<seriesInfo name="RFC" value="6750"/>
<seriesInfo name="DOI" value="10.17487/RFC6750"/>
</reference>
<reference anchor="RFC4086" target="https://www.rfc-editor.org/info/rfc4
086">
<front>
<title>Randomness Requirements for Security</title>
<author initials="D." surname="Eastlake 3rd" fullname="D. Eastlake 3
rd">
<organization/>
</author>
<author initials="J." surname="Schiller" fullname="J. Schiller">
<organization/>
</author>
<author initials="S." surname="Crocker" fullname="S. Crocker">
<organization/>
</author>
<date year="2005" month="June"/>
<abstract>
<t>Security systems are built on strong cryptographic algorithms t
hat foil pattern analysis attempts. However, the security of these systems is d
ependent on generating secret quantities for passwords, cryptographic keys, and
similar quantities. The use of pseudo-random processes to generate secret quant
ities can result in pseudo-security. A sophisticated attacker may find it easier
to reproduce the environment that produced the secret quantities and to search
the resulting small set of possibilities than to locate the quantities in the wh
ole of the potential number space.</t>
<t>Choosing random quantities to foil a resourceful and motivated
adversary is surprisingly difficult. This document points out many pitfalls in
using poor entropy sources or traditional pseudo-random number generation techni
ques for generating such quantities. It recommends the use of truly random hard
ware techniques and shows that the existing hardware on many systems can be used
for this purpose. It provides suggestions to ameliorate the problem when a hard
ware solution is not available, and it gives examples of how large such quantiti
es need to be for some applications. This document specifies an Internet Best C
urrent Practices for the Internet Community, and requests discussion and suggest
ions for improvements.</t>
</abstract>
</front>
<seriesInfo name="BCP" value="106"/>
<seriesInfo name="RFC" value="4086"/>
<seriesInfo name="DOI" value="10.17487/RFC4086"/>
</reference>
</references> </references>
</references> </references>
<section anchor="acknowledgements" numbered="true" toc="default"> <section anchor="acknowledgements" numbered="true" toc="default">
<name>Acknowledgements</name> <name>Acknowledgements</name>
<t>The definition of bearer tokens is from <xref target="RFC6750" format=" default"/>.</t> <t>The definition of bearer tokens is from <xref target="RFC6750" format=" default"/>.</t>
</section> </section>
</back> </back>
<!-- ##markdown-source:
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
DIntirr9kQMKJXrylDB72b8BDPbT/CcWAAA=
</rfc> </rfc>
 End of changes. 16 change blocks. 
293 lines changed or deleted 72 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/