| < draft-nottingham-rfc5785bis-07.txt | draft-nottingham-rfc5785bis-08.txt > | |||
|---|---|---|---|---|
| Network Working Group M. Nottingham | Network Working Group M. Nottingham | |||
| Internet-Draft August 1, 2018 | Internet-Draft October 4, 2018 | |||
| Obsoletes: 5785, 8307 (if approved) | Obsoletes: 5785, 8307 (if approved) | |||
| Updates: 7230, 6455 (if approved) | ||||
| Intended status: Standards Track | Intended status: Standards Track | |||
| Expires: February 2, 2019 | Expires: April 7, 2019 | |||
| Well-Known Uniform Resource Identifiers (URIs) | Well-Known Uniform Resource Identifiers (URIs) | |||
| draft-nottingham-rfc5785bis-07 | draft-nottingham-rfc5785bis-08 | |||
| Abstract | Abstract | |||
| This memo defines a path prefix for "well-known locations", "/.well- | This memo defines a path prefix for "well-known locations", "/.well- | |||
| known/", in selected Uniform Resource Identifier (URI) schemes. | known/", in selected Uniform Resource Identifier (URI) schemes. | |||
| Note to Readers | Note to Readers | |||
| _RFC EDITOR: please remove this section before publication_ | _RFC EDITOR: please remove this section before publication_ | |||
| skipping to change at page 2, line 4 ¶ | skipping to change at page 2, line 4 ¶ | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at https://datatracker.ietf.org/drafts/current/. | Drafts is at https://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on February 2, 2019. | This Internet-Draft will expire on April 7, 2019. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2018 IETF Trust and the persons identified as the | Copyright (c) 2018 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
| (https://trustee.ietf.org/license-info) in effect on the date of | (https://trustee.ietf.org/license-info) in effect on the date of | |||
| publication of this document. Please review these documents | publication of this document. Please review these documents | |||
| skipping to change at page 2, line 28 ¶ | skipping to change at page 2, line 28 ¶ | |||
| the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
| described in the Simplified BSD License. | described in the Simplified BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
| 2. Notational Conventions . . . . . . . . . . . . . . . . . . . 3 | 2. Notational Conventions . . . . . . . . . . . . . . . . . . . 3 | |||
| 3. Well-Known URIs . . . . . . . . . . . . . . . . . . . . . . . 3 | 3. Well-Known URIs . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 3.1. Registering Well-Known URIs . . . . . . . . . . . . . . . 4 | 3.1. Registering Well-Known URIs . . . . . . . . . . . . . . . 4 | |||
| 4. Security Considerations . . . . . . . . . . . . . . . . . . . 5 | 4. Security Considerations . . . . . . . . . . . . . . . . . . . 5 | |||
| 4.1. Interaction with Web Browsing . . . . . . . . . . . . . . 5 | 4.1. Interaction with Web Browsing . . . . . . . . . . . . . . 6 | |||
| 4.2. Scoping Applications . . . . . . . . . . . . . . . . . . 7 | 4.2. Scoping Applications . . . . . . . . . . . . . . . . . . 7 | |||
| 4.3. Hidden Capabilities . . . . . . . . . . . . . . . . . . . 7 | 4.3. Hidden Capabilities . . . . . . . . . . . . . . . . . . . 7 | |||
| 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 | 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 5.1. The Well-Known URI Registry . . . . . . . . . . . . . . . 7 | 5.1. The Well-Known URI Registry . . . . . . . . . . . . . . . 8 | |||
| 6. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 | 6. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 6.1. Normative References . . . . . . . . . . . . . . . . . . 8 | 6.1. Normative References . . . . . . . . . . . . . . . . . . 8 | |||
| 6.2. Informative References . . . . . . . . . . . . . . . . . 8 | 6.2. Informative References . . . . . . . . . . . . . . . . . 9 | |||
| 6.3. URIs . . . . . . . . . . . . . . . . . . . . . . . . . . 9 | 6.3. URIs . . . . . . . . . . . . . . . . . . . . . . . . . . 10 | |||
| Appendix A. Frequently Asked Questions . . . . . . . . . . . . . 10 | Appendix A. Frequently Asked Questions . . . . . . . . . . . . . 10 | |||
| Appendix B. Changes from RFC5785 . . . . . . . . . . . . . . . . 10 | Appendix B. Changes from RFC5785 . . . . . . . . . . . . . . . . 11 | |||
| Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 10 | Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 11 | |||
| 1. Introduction | 1. Introduction | |||
| Some applications on the Web require the discovery of information | Some applications on the Web require the discovery of information | |||
| about an origin [RFC6454] (sometimes called "site-wide metadata") | about an origin [RFC6454] (sometimes called "site-wide metadata") | |||
| before making a request. For example, the Robots Exclusion Protocol | before making a request. For example, the Robots Exclusion Protocol | |||
| (http://www.robotstxt.org/ [5]) specifies a way for automated | (http://www.robotstxt.org/ [5]) specifies a way for automated | |||
| processes to obtain permission to access resources; likewise, the | processes to obtain permission to access resources; likewise, the | |||
| Platform for Privacy Preferences [P3P] tells user-agents how to | Platform for Privacy Preferences [P3P] tells user-agents how to | |||
| discover privacy policy before interacting with an origin server. | discover privacy policy before interacting with an origin server. | |||
| skipping to change at page 3, line 15 ¶ | skipping to change at page 3, line 15 ¶ | |||
| While there are several ways to access per-resource metadata (e.g., | While there are several ways to access per-resource metadata (e.g., | |||
| HTTP headers, WebDAV's PROPFIND [RFC4918]), the perceived overhead | HTTP headers, WebDAV's PROPFIND [RFC4918]), the perceived overhead | |||
| (either in terms of client-perceived latency and/or deployment | (either in terms of client-perceived latency and/or deployment | |||
| difficulties) associated with them often precludes their use in these | difficulties) associated with them often precludes their use in these | |||
| scenarios. | scenarios. | |||
| At the same time, it has become more popular to use HTTP as a | At the same time, it has become more popular to use HTTP as a | |||
| substrate for non-Web protocols. Sometimes, such protocols need a | substrate for non-Web protocols. Sometimes, such protocols need a | |||
| way to locate one or more resources on a given host. | way to locate one or more resources on a given host. | |||
| When this happens, one solution is designating a "well-known | When this happens, one solution is to designate a "well-known | |||
| location" for data or services related to the origin overall, so that | location" for data or services related to the origin overall, so that | |||
| it can be easily located. However, this approach has the drawback of | it can be easily located. However, this approach has the drawback of | |||
| risking collisions, both with other such designated "well-known | risking collisions, both with other such designated "well-known | |||
| locations" and with resources that the origin has created (or wishes | locations" and with resources that the origin has created (or wishes | |||
| to create). Furthermore, defining well-known locations usurp's the | to create). Furthermore, defining well-known locations usurp's the | |||
| origin's control over its own URI space [RFC7320]. | origin's control over its own URI space [RFC7320]. | |||
| To address these uses, this memo defines a path prefix in HTTP(S) | To address these uses, this memo defines a path prefix in HTTP(S) | |||
| URIs for these "well-known locations", "/.well-known/". Future | URIs for these "well-known locations", "/.well-known/". Future | |||
| specifications that need to define a resource for such metadata can | specifications that need to define a resource for such metadata can | |||
| skipping to change at page 3, line 41 ¶ | skipping to change at page 3, line 41 ¶ | |||
| 2. Notational Conventions | 2. Notational Conventions | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | |||
| document are to be interpreted as described in RFC 2119 [RFC2119]. | document are to be interpreted as described in RFC 2119 [RFC2119]. | |||
| 3. Well-Known URIs | 3. Well-Known URIs | |||
| A well-known URI is a URI [RFC3986] whose path component begins with | A well-known URI is a URI [RFC3986] whose path component begins with | |||
| the characters "/.well-known/", and whose scheme is "http", "https", | the characters "/.well-known/", and whose scheme is "http" [RFC7230], | |||
| "ws", "wss", or another scheme that has explicitly been specified to | "https" [RFC7230], "ws" [RFC6455], "wss" [RFC6455], or another scheme | |||
| use well-known URIs. | that has explicitly been specified to use well-known URIs. | |||
| Applications that wish to mint new well-known URIs MUST register | Applications that wish to mint new well-known URIs MUST register | |||
| them, following the procedures in Section 5.1. | them, following the procedures in Section 5.1. | |||
| For example, if an application registers the name 'example', the | For example, if an application registers the name 'example', the | |||
| corresponding well-known URI on 'http://www.example.com/' would be | corresponding well-known URI on 'http://www.example.com/' would be | |||
| 'http://www.example.com/.well-known/example'. | 'http://www.example.com/.well-known/example'. | |||
| Registered names MUST conform to the segment-nz production in | Registered names MUST conform to the segment-nz production in | |||
| [RFC3986]. This means they cannot contain the "/" character. | [RFC3986]. This means they cannot contain the "/" character. | |||
| skipping to change at page 5, line 22 ¶ | skipping to change at page 5, line 22 ¶ | |||
| Change controller: For Standards-Track RFCs, state "IETF". For | Change controller: For Standards-Track RFCs, state "IETF". For | |||
| others, give the name of the responsible party. Other details | others, give the name of the responsible party. Other details | |||
| (e.g., postal address, e-mail address, home page URI) may also be | (e.g., postal address, e-mail address, home page URI) may also be | |||
| included. | included. | |||
| Specification document(s): Reference to the document that specifies | Specification document(s): Reference to the document that specifies | |||
| the field, preferably including a URI that can be used to retrieve | the field, preferably including a URI that can be used to retrieve | |||
| a copy of the document. An indication of the relevant sections | a copy of the document. An indication of the relevant sections | |||
| may also be included, but is not required. | may also be included, but is not required. | |||
| Status: One of "permanent" or "provisional". See guidance below. | ||||
| Related information: Optionally, citations to additional documents | Related information: Optionally, citations to additional documents | |||
| containing further relevant information. | containing further relevant information. | |||
| General requirements for registered relation types are described in | General requirements for registered relation types are described in | |||
| Section 3. | Section 3. | |||
| Standards-defined values have a status of "permanent". Other values | ||||
| can also be registered as permanent, if the Experts find that they | ||||
| are in use, in consultation with the community. Other values should | ||||
| be registered as "provisional". | ||||
| Provisional entries can be removed by the Experts if - in | ||||
| consultation with the community - the Experts find that they are not | ||||
| in use. The Experts can change a provisional entry's status to | ||||
| permanent at any time. | ||||
| Note that well-known URIs can be registered by third parties | Note that well-known URIs can be registered by third parties | |||
| (including the expert(s)), if the expert(s) determines that an | (including the expert(s)), if the expert(s) determines that an | |||
| unregistered well-known URI is widely deployed and not likely to be | unregistered well-known URI is widely deployed and not likely to be | |||
| registered in a timely manner otherwise. Such registrations still | registered in a timely manner otherwise. Such registrations still | |||
| are subject to the requirements defined, including the need to | are subject to the requirements defined, including the need to | |||
| reference a specification. | reference a specification. | |||
| 4. Security Considerations | 4. Security Considerations | |||
| Applications minting new well-known URIs, as well as administrators | Applications minting new well-known URIs, as well as administrators | |||
| skipping to change at page 8, line 18 ¶ | skipping to change at page 8, line 29 ¶ | |||
| o Conformance to the requirements in Section 3 | o Conformance to the requirements in Section 3 | |||
| o The availability and stability of the specifying document | o The availability and stability of the specifying document | |||
| o The considerations outlined in Section 4 | o The considerations outlined in Section 4 | |||
| IANA will direct any incoming requests regarding the registry to this | IANA will direct any incoming requests regarding the registry to this | |||
| document and, if defined, the processes established by the expert(s); | document and, if defined, the processes established by the expert(s); | |||
| typically, this will mean referring them to the registry Web page. | typically, this will mean referring them to the registry Web page. | |||
| IANA should replace all references to RFC 5988 in that registry have | Upon publication, IANA should: | |||
| been replaced with references to this document. | ||||
| o Replace all references to RFC 5988 in that registry have been | ||||
| replaced with references to this document. | ||||
| o Update the status of all existing registrations to "permanent". | ||||
| 6. References | 6. References | |||
| 6.1. Normative References | 6.1. Normative References | |||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| Requirement Levels", BCP 14, RFC 2119, | Requirement Levels", BCP 14, RFC 2119, | |||
| DOI 10.17487/RFC2119, March 1997, | DOI 10.17487/RFC2119, March 1997, | |||
| <https://www.rfc-editor.org/info/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
| [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform | [RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform | |||
| Resource Identifier (URI): Generic Syntax", STD 66, | Resource Identifier (URI): Generic Syntax", STD 66, | |||
| RFC 3986, DOI 10.17487/RFC3986, January 2005, | RFC 3986, DOI 10.17487/RFC3986, January 2005, | |||
| <https://www.rfc-editor.org/info/rfc3986>. | <https://www.rfc-editor.org/info/rfc3986>. | |||
| [RFC6454] Barth, A., "The Web Origin Concept", RFC 6454, | [RFC6454] Barth, A., "The Web Origin Concept", RFC 6454, | |||
| DOI 10.17487/RFC6454, December 2011, | DOI 10.17487/RFC6454, December 2011, | |||
| <https://www.rfc-editor.org/info/rfc6454>. | <https://www.rfc-editor.org/info/rfc6454>. | |||
| [RFC6455] Fette, I. and A. Melnikov, "The WebSocket Protocol", | ||||
| RFC 6455, DOI 10.17487/RFC6455, December 2011, | ||||
| <https://www.rfc-editor.org/info/rfc6455>. | ||||
| [RFC7230] Fielding, R., Ed. and J. Reschke, Ed., "Hypertext Transfer | ||||
| Protocol (HTTP/1.1): Message Syntax and Routing", | ||||
| RFC 7230, DOI 10.17487/RFC7230, June 2014, | ||||
| <https://www.rfc-editor.org/info/rfc7230>. | ||||
| [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for | [RFC8126] Cotton, M., Leiba, B., and T. Narten, "Guidelines for | |||
| Writing an IANA Considerations Section in RFCs", BCP 26, | Writing an IANA Considerations Section in RFCs", BCP 26, | |||
| RFC 8126, DOI 10.17487/RFC8126, June 2017, | RFC 8126, DOI 10.17487/RFC8126, June 2017, | |||
| <https://www.rfc-editor.org/info/rfc8126>. | <https://www.rfc-editor.org/info/rfc8126>. | |||
| 6.2. Informative References | 6.2. Informative References | |||
| [CSP] West, M., "Content Security Policy Level 3", World Wide | [CSP] West, M., "Content Security Policy Level 3", World Wide | |||
| Web Consortium WD WD-CSP3-20160913, September 2016, | Web Consortium WD WD-CSP3-20160913, September 2016, | |||
| <https://www.w3.org/TR/2016/WD-CSP3-20160913>. | <https://www.w3.org/TR/2016/WD-CSP3-20160913>. | |||
| End of changes. 15 change blocks. | ||||
| 17 lines changed or deleted | 43 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/ | ||||