| < draft-nottingham-rfc5785bis-04.txt | draft-nottingham-rfc5785bis-05.txt > | |||
|---|---|---|---|---|
| Network Working Group M. Nottingham | Network Working Group M. Nottingham | |||
| Internet-Draft February 15, 2018 | Internet-Draft April 5, 2018 | |||
| Obsoletes: 5785 (if approved) | Obsoletes: 5785 (if approved) | |||
| Intended status: Standards Track | Intended status: Standards Track | |||
| Expires: August 19, 2018 | Expires: October 7, 2018 | |||
| Defining Well-Known Uniform Resource Identifiers (URIs) | Defining Well-Known Uniform Resource Identifiers (URIs) | |||
| draft-nottingham-rfc5785bis-04 | draft-nottingham-rfc5785bis-05 | |||
| 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 August 19, 2018. | This Internet-Draft will expire on October 7, 2018. | |||
| 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 | |||
| carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
| to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
| include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
| 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 | |||
| 1.1. Appropriate Use of Well-Known URIs . . . . . . . . . . . 3 | 2. Notational Conventions . . . . . . . . . . . . . . . . . . . 3 | |||
| 2. Notational Conventions . . . . . . . . . . . . . . . . . . . 4 | 3. Well-Known URIs . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 3. Well-Known URIs . . . . . . . . . . . . . . . . . . . . . . . 4 | 3.1. Registering Well-Known URIs . . . . . . . . . . . . . . . 4 | |||
| 4. Security Considerations . . . . . . . . . . . . . . . . . . . 5 | 4. Security Considerations . . . . . . . . . . . . . . . . . . . 5 | |||
| 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5 | 4.1. Interaction with the Web . . . . . . . . . . . . . . . . 5 | |||
| 5.1. The Well-Known URI Registry . . . . . . . . . . . . . . . 5 | 4.2. Scoping Applications . . . . . . . . . . . . . . . . . . 6 | |||
| 5.1.1. Registration Template . . . . . . . . . . . . . . . . 6 | 4.3. Hidden Capabilities . . . . . . . . . . . . . . . . . . . 7 | |||
| 6. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 | 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 6.1. Normative References . . . . . . . . . . . . . . . . . . 6 | 5.1. The Well-Known URI Registry . . . . . . . . . . . . . . . 7 | |||
| 6.2. Informative References . . . . . . . . . . . . . . . . . 7 | 6. References . . . . . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 6.3. URIs . . . . . . . . . . . . . . . . . . . . . . . . . . 7 | 6.1. Normative References . . . . . . . . . . . . . . . . . . 7 | |||
| Appendix A. Frequently Asked Questions . . . . . . . . . . . . . 8 | 6.2. Informative References . . . . . . . . . . . . . . . . . 8 | |||
| Appendix B. Changes from RFC5785 . . . . . . . . . . . . . . . . 8 | 6.3. URIs . . . . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
| Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 9 | Appendix A. Frequently Asked Questions . . . . . . . . . . . . . 9 | |||
| Appendix B. Changes from RFC5785 . . . . . . . . . . . . . . . . 10 | ||||
| Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 10 | ||||
| 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 [W3C.REC-P3P-20020416] tells user- | Platform for Privacy Preferences [W3C.REC-P3P-20020416] tells user- | |||
| agents how to discover privacy policy before interacting with an | agents how to discover privacy policy before interacting with an | |||
| skipping to change at page 3, line 15 ¶ | skipping to change at page 3, line 18 ¶ | |||
| difficulties) associated with them often precludes their use in these | difficulties) associated with them often precludes their use in these | |||
| scenarios. | scenarios. | |||
| When this happens, one solution is designating a "well-known | When this happens, one solution is designating 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). | to create). | |||
| To address this, this memo defines a path prefix in HTTP(S) URIs for | At the same time, it has become more popular to use HTTP as a | |||
| these "well-known locations", "/.well-known/". Future specifications | substrate for non-Web protocols. Sometimes, such protocols need a | |||
| that need to define a resource for such metadata can register their | way to locate one or more resources on a given host. | |||
| use to avoid collisions and minimise impingement upon origins' URI | ||||
| space. | To address these uses, this memo defines a path prefix in HTTP(S) | |||
| URIs for these "well-known locations", "/.well-known/". Future | ||||
| specifications that need to define a resource for such metadata can | ||||
| register their use to avoid collisions and minimise impingement upon | ||||
| origins' URI space. | ||||
| Well-known URIs can also be used with other URI schemes, but only | Well-known URIs can also be used with other URI schemes, but only | |||
| when those schemes' definitions explicitly allow it. | when those schemes' definitions explicitly allow it. | |||
| 1.1. Appropriate Use of Well-Known URIs | ||||
| As per [RFC7320], "publishing independent standards that mandate | ||||
| particular forms of URI substructure is inappropriate, because that | ||||
| essentially usurps ownership." Well-known URIs are not an escape | ||||
| hatch from the requirements therein; they are a very limited carve- | ||||
| out of the path name space owned by the authority, ceded to standard | ||||
| use for a designated purpose. | ||||
| That purpose is to facilitate discovery of information about an | ||||
| origin when it isn't practical to use other mechanisms; for example, | ||||
| when discovering policy that needs to be evaluated before a resource | ||||
| is accessed, or when the information applies to many (or all) of the | ||||
| origin's resources. | ||||
| Typically, the resource(s) identified by a well-known URI will make | ||||
| information about the origin (e.g., policy) available directly, or | ||||
| provide references to other URIs that provide it. In general, that | ||||
| information should be applicable to most origins (i.e., Web sites - | ||||
| while acknowledging that some origins might not use a particular | ||||
| well-known location, for various reasons). | ||||
| In keeping with the Architecture of the World-Wide Web | ||||
| [W3C.REC-webarch-20041215], well-known URIs are not intended for | ||||
| general information retrieval or establishment of large URI | ||||
| namespaces. | ||||
| Specifically, well-known URIs are not a "protocol registry" for | ||||
| applications and protocols that wish to use HTTP as a substrate. | ||||
| Instead, such applications and protocols are encouraged to used an | ||||
| absolute URI to bootstrap their operation, rather than using a | ||||
| hostname and a well-known URI. | ||||
| Exceptionally, the registry expert(s) may approve such a registration | ||||
| for documents in the IETF Stream [RFC5741], in consultation with the | ||||
| IESG, provided that the protocol in question cannot be bootstrapped | ||||
| with a URI (e.g., the discovery mechanism can only carry a hostname). | ||||
| However, merely making it easier to locate it is not a sufficient | ||||
| reason. Likewise, future use unsupported by the specification in | ||||
| question is not sufficient reason to register a well-known location. | ||||
| Well-known locations are also not suited for information on topics | ||||
| other than the origin that they are located upon; for example, | ||||
| creating a well-known resource about a business entity or | ||||
| organisational structure presumes that Internet hosts and | ||||
| organisations share structure, and are likely to have significant | ||||
| deployment issues in environments where this is not true. | ||||
| 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", "HTTPS", | |||
| skipping to change at page 4, line 49 ¶ | skipping to change at page 4, line 5 ¶ | |||
| 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. | |||
| Note that this specification defines neither how to determine the | Registered names for a specific application SHOULD be correspondingly | |||
| authority to use for a particular context, nor the scope of the | precise; "squatting" on generic terms is not encouraged. For | |||
| metadata discovered by dereferencing the well-known URI; both should | example, if the Example application wants a well-known location for | |||
| be defined by the application itself. | metadata, an appropriate registered name might be "example-metadata" | |||
| or even "example.com-metadata", not "metadata". | ||||
| Typically, a registration will reference a specification that defines | At a minimum, a registration will reference a specification that | |||
| the format and associated media type to be obtained by dereferencing | defines the format and associated media type to be obtained by | |||
| the well-known URI. | dereferencing the well-known URI, along with the URI scheme(s) that | |||
| the well-known URI can be used with. If no URI schemes are | ||||
| explicitly specified, "HTTP" and "HTTPS" are assumed. | ||||
| It MAY also contain additional information, such as the syntax of | It MAY also contain additional information, such as the syntax of | |||
| additional path components, query strings and/or fragment identifiers | additional path components, query strings and/or fragment identifiers | |||
| to be appended to the well-known URI, or protocol-specific details | to be appended to the well-known URI, or protocol-specific details | |||
| (e.g., HTTP [RFC7231] method handling). | (e.g., HTTP [RFC7231] method handling). | |||
| Note that this specification does not define a format or media-type | Note that this specification defines neither how to determine the | |||
| for the resource located at "/.well-known/" and clients should not | hostname to use to find the well-known URI for a particular | |||
| expect a resource to exist at that location. | application, nor the scope of the metadata discovered by | |||
| dereferencing the well-known URI; both should be defined by the | ||||
| application itself. | ||||
| Also, this specification does not define a format or media-type for | ||||
| the resource located at "/.well-known/" and clients should not expect | ||||
| a resource to exist at that location. | ||||
| Well-known URIs are only valid when rooted in the top of the path's | Well-known URIs are only valid when rooted in the top of the path's | |||
| hierarchy; they MUST NOT be used in other parts of the path. For | hierarchy; they MUST NOT be used in other parts of the path. For | |||
| example, "/.well-known/example" is a valid use, but "/foo/.well- | example, "/.well-known/example" is a valid use, but "/foo/.well- | |||
| known/example" is not. | known/example" is not. | |||
| 4. Security Considerations | See also Section 4 for Security Considerations regarding well-known | |||
| locations. | ||||
| This memo does not specify the scope of applicability of metadata or | 3.1. Registering Well-Known URIs | |||
| policy obtained from a well-known URI, and does not specify how to | ||||
| discover a well-known URI for a particular application. Individual | The "Well-Known URIs" registry is located at | |||
| applications using this mechanism must define both aspects. | "https://www.iana.org/assignments/well-known-uris/". Registration | |||
| requests can be made by following the instructions located there or | ||||
| by sending an email to the "wellknown-uri-review@ietf.org" mailing | ||||
| list. | ||||
| Registration requests consist of at least the following information: | ||||
| URI suffix: The name requested for the well-known URI, relative to | ||||
| "/.well-known/"; e.g., "example". | ||||
| Change controller: For Standards-Track RFCs, state "IETF". For | ||||
| others, give the name of the responsible party. Other details | ||||
| (e.g., postal address, e-mail address, home page URI) may also be | ||||
| included. | ||||
| Specification document(s): Reference to the document that specifies | ||||
| the field, preferably including a URI that can be used to retrieve | ||||
| a copy of the document. An indication of the relevant sections | ||||
| may also be included, but is not required. | ||||
| Related information: Optionally, citations to additional documents | ||||
| containing further relevant information. | ||||
| General requirements for registered relation types are described in | ||||
| Section 3. | ||||
| Registrations MUST reference a freely available, stable | ||||
| specification. | ||||
| Note that well-known URIs can be registered by third parties | ||||
| (including the expert(s)), if the expert(s) determines that an | ||||
| unregistered well-known URI is widely deployed and not likely to be | ||||
| registered in a timely manner otherwise. Such registrations still | ||||
| are subject to the requirements defined, including the need to | ||||
| reference a specification. | ||||
| 4. Security Considerations | ||||
| Applications minting new well-known URIs, as well as administrators | Applications minting new well-known URIs, as well as administrators | |||
| deploying them, will need to consider several security-related | deploying them, will need to consider several security-related | |||
| issues, including (but not limited to) exposure of sensitive data, | issues, including (but not limited to) exposure of sensitive data, | |||
| denial-of-service attacks (in addition to normal load issues), server | denial-of-service attacks (in addition to normal load issues), server | |||
| and client authentication, vulnerability to DNS rebinding attacks, | and client authentication, vulnerability to DNS rebinding attacks, | |||
| and attacks where limited access to a server grants the ability to | and attacks where limited access to a server grants the ability to | |||
| affect how well-known URIs are served. | affect how well-known URIs are served. | |||
| Security-sensitive applications using well-known locations should | 4.1. Interaction with the Web | |||
| consider that some server administrators might be unaware of its | ||||
| existence (especially on operating systems that hide directories | In particular, applications using well-known URIs for HTTP or HTTPS | |||
| whose names begin with "."). This means that if an attacker has | URLs need to be aware that well-known resources will be accessible to | |||
| write access to the .well-known directory, they would be able to | Web browsers, and therefore is potentially able to be manipulated by | |||
| control its contents, possibly without the administrator realising | content obtained from other parts of that origin. If an attacker is | |||
| it. | able to inject content (e.g., through a Cross-Site Scripting | |||
| vulnerability), they will be able to make potentially arbitrary | ||||
| requests to the well-known resource. | ||||
| HTTP and HTTPS also use origins as a security boundary for many other | ||||
| mechanisms, including (but not limited to) Cookies [RFC6265], Web | ||||
| Storage [W3C.REC-webstorage-20160419] and many capabilities. | ||||
| Applications defining well-known locations should not assume that | ||||
| they have sole access to these mechanisms. | ||||
| Applications defining well-known URIs should not assume or require | ||||
| that they are the only application using the origin, since this is a | ||||
| common deployment pattern; instead, they should use appropriate | ||||
| mechanisms to mitigate the risks of co-existing with Web | ||||
| applications, such as (but not limited to): | ||||
| o Using Strict Transport Security [RFC6797] to assure that HTTPS is | ||||
| used | ||||
| o Using Content-Security-Policy [W3C.WD-CSP3-20160913] to constrain | ||||
| the capabilities of content, thereby mitigating Cross-Site | ||||
| Scripting attacks (which are possible if client-provided data is | ||||
| exposed in any part of a response in the application) | ||||
| o Using X-Frame-Options [RFC7034] to prevent content from being | ||||
| included in a HTML frame from another origin, thereby enabling | ||||
| "clickjacking" | ||||
| o Using Referrer-Policy [W3C.CR-referrer-policy-20170126] to prevent | ||||
| sensitive data in URLs from being leaked in the Referer request | ||||
| header | ||||
| o Using the 'HttpOnly' flag on Cookies to assure that cookies are | ||||
| not exposed to browser scripting languages [RFC6265] | ||||
| 4.2. Scoping Applications | ||||
| This memo does not specify the scope of applicability of metadata or | ||||
| policy obtained from a well-known URI, and does not specify how to | ||||
| discover a well-known URI for a particular application. | ||||
| Individual applications using this mechanism must define both | ||||
| aspects; if this is not specified, security issues can arise from | ||||
| implementation deviations and confusion about boundaries between | ||||
| applications. | ||||
| Applying metadata discovered in a well-known URI to resources other | ||||
| than those co-located on the same origin risks administrative as well | ||||
| as security issues. For example, allowing | ||||
| "https://example.com/.well-known/example" to apply policy to | ||||
| "https://department.example.com", "https://www.example.com" or even | ||||
| "https://www.example.com:8000" assumes a relationship between hosts | ||||
| where there may be none, or there may be conflicting motivations. | ||||
| 4.3. Hidden Capabilities | ||||
| Applications using well-known locations should consider that some | ||||
| server administrators might be unaware of its existence (especially | ||||
| on operating systems that hide directories whose names begin with | ||||
| "."). This means that if an attacker has write access to the .well- | ||||
| known directory, they would be able to control its contents, possibly | ||||
| without the administrator realising it. | ||||
| 5. IANA Considerations | 5. IANA Considerations | |||
| 5.1. The Well-Known URI Registry | 5.1. The Well-Known URI Registry | |||
| This document specifies procedures for the well-known URI registry, | This specification updates the registration procedures for the "Well- | |||
| first defined in [RFC5785]. | Known URI" registry, first defined in [RFC5785]; see Section 3.1. | |||
| Well-known URIs are registered on the advice of one or more experts | Well-known URIs are registered on the advice of one or more experts | |||
| (appointed by the IESG or their delegate), with a Specification | (appointed by the IESG or their delegate), with a Specification | |||
| Required (using terminology from [RFC8126]). | Required (using terminology from [RFC8126]). | |||
| To allow for the allocation of values prior to publication, the | The Experts' primary considerations in evaluating registration | |||
| expert(s) may approve registration once they are satisfied that such | requests are: * Conformance to the requirements in Section 3 * The | |||
| a specification will be published. | availability and stability of the specifying document * The security | |||
| considerations outlined in Section 4 | ||||
| Registration requests can be sent to the wellknown-uri- | ||||
| review@ietf.org mailing list for review and comment, with an | ||||
| appropriate subject (e.g., "Request for well-known URI: example"). | ||||
| 5.1.1. Registration Template | ||||
| URI suffix: The name requested for the well-known URI, relative to | ||||
| "/.well-known/"; e.g., "example". | ||||
| Change controller: For Standards-Track RFCs, state "IETF". For | ||||
| others, give the name of the responsible party. Other details | ||||
| (e.g., postal address, e-mail address, home page URI) may also be | ||||
| included. | ||||
| Specification document(s): Reference to the document that specifies | IANA will direct any incoming requests regarding the registry to this | |||
| the field, preferably including a URI that can be used to retrieve | document and, if defined, the processes established by the expert(s); | |||
| a copy of the document. An indication of the relevant sections | typically, this will mean referring them to the registry Web page. | |||
| may also be included, but is not required. | ||||
| Related information: Optionally, citations to additional documents | IANA should replace all references to RFC 5988 in that registry have | |||
| containing further relevant information. | been replaced with references to this document. | |||
| 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>. | |||
| [RFC5741] Daigle, L., Ed., Kolkman, O., Ed., and IAB, "RFC Streams, | ||||
| Headers, and Boilerplates", RFC 5741, | ||||
| DOI 10.17487/RFC5741, December 2009, | ||||
| <https://www.rfc-editor.org/info/rfc5741>. | ||||
| [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>. | |||
| [RFC7320] Nottingham, M., "URI Design and Ownership", BCP 190, | ||||
| RFC 7320, DOI 10.17487/RFC7320, July 2014, | ||||
| <https://www.rfc-editor.org/info/rfc7320>. | ||||
| [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 | |||
| [RFC4918] Dusseault, L., Ed., "HTTP Extensions for Web Distributed | [RFC4918] Dusseault, L., Ed., "HTTP Extensions for Web Distributed | |||
| Authoring and Versioning (WebDAV)", RFC 4918, | Authoring and Versioning (WebDAV)", RFC 4918, | |||
| DOI 10.17487/RFC4918, June 2007, | DOI 10.17487/RFC4918, June 2007, | |||
| <https://www.rfc-editor.org/info/rfc4918>. | <https://www.rfc-editor.org/info/rfc4918>. | |||
| [RFC5785] Nottingham, M. and E. Hammer-Lahav, "Defining Well-Known | [RFC5785] Nottingham, M. and E. Hammer-Lahav, "Defining Well-Known | |||
| Uniform Resource Identifiers (URIs)", RFC 5785, | Uniform Resource Identifiers (URIs)", RFC 5785, | |||
| DOI 10.17487/RFC5785, April 2010, | DOI 10.17487/RFC5785, April 2010, | |||
| <https://www.rfc-editor.org/info/rfc5785>. | <https://www.rfc-editor.org/info/rfc5785>. | |||
| [RFC6265] Barth, A., "HTTP State Management Mechanism", RFC 6265, | ||||
| DOI 10.17487/RFC6265, April 2011, | ||||
| <https://www.rfc-editor.org/info/rfc6265>. | ||||
| [RFC6797] Hodges, J., Jackson, C., and A. Barth, "HTTP Strict | ||||
| Transport Security (HSTS)", RFC 6797, | ||||
| DOI 10.17487/RFC6797, November 2012, | ||||
| <https://www.rfc-editor.org/info/rfc6797>. | ||||
| [RFC7034] Ross, D. and T. Gondrom, "HTTP Header Field X-Frame- | ||||
| Options", RFC 7034, DOI 10.17487/RFC7034, October 2013, | ||||
| <https://www.rfc-editor.org/info/rfc7034>. | ||||
| [RFC7231] Fielding, R., Ed. and J. Reschke, Ed., "Hypertext Transfer | [RFC7231] Fielding, R., Ed. and J. Reschke, Ed., "Hypertext Transfer | |||
| Protocol (HTTP/1.1): Semantics and Content", RFC 7231, | Protocol (HTTP/1.1): Semantics and Content", RFC 7231, | |||
| DOI 10.17487/RFC7231, June 2014, | DOI 10.17487/RFC7231, June 2014, | |||
| <https://www.rfc-editor.org/info/rfc7231>. | <https://www.rfc-editor.org/info/rfc7231>. | |||
| [W3C.CR-referrer-policy-20170126] | ||||
| Eisinger, J. and E. Stark, "Referrer Policy", World Wide | ||||
| Web Consortium CR CR-referrer-policy-20170126, January | ||||
| 2017, | ||||
| <https://www.w3.org/TR/2017/CR-referrer-policy-20170126>. | ||||
| [W3C.REC-P3P-20020416] | [W3C.REC-P3P-20020416] | |||
| Marchiori, M., "The Platform for Privacy Preferences 1.0 | Marchiori, M., "The Platform for Privacy Preferences 1.0 | |||
| (P3P1.0) Specification", World Wide Web Consortium | (P3P1.0) Specification", World Wide Web Consortium | |||
| Recommendation REC-P3P-20020416, April 2002, | Recommendation REC-P3P-20020416, April 2002, | |||
| <http://www.w3.org/TR/2002/REC-P3P-20020416>. | <http://www.w3.org/TR/2002/REC-P3P-20020416>. | |||
| [W3C.REC-webarch-20041215] | [W3C.REC-webstorage-20160419] | |||
| Jacobs, I. and N. Walsh, "Architecture of the World Wide | Hickson, I., "Web Storage (Second Edition)", World Wide | |||
| Web, Volume One", World Wide Web Consortium | Web Consortium Recommendation REC-webstorage-20160419, | |||
| Recommendation REC-webarch-20041215, December 2004, | April 2016, | |||
| <http://www.w3.org/TR/2004/REC-webarch-20041215>. | <http://www.w3.org/TR/2016/REC-webstorage-20160419>. | |||
| [W3C.WD-CSP3-20160913] | ||||
| West, M., "Content Security Policy Level 3", World Wide | ||||
| Web Consortium WD WD-CSP3-20160913, September 2016, | ||||
| <https://www.w3.org/TR/2016/WD-CSP3-20160913>. | ||||
| 6.3. URIs | 6.3. URIs | |||
| [1] https://github.com/mnot/I-D/labels/rfc5785bis | [1] https://github.com/mnot/I-D/labels/rfc5785bis | |||
| [2] https://mnot.github.io/I-D/rfc5785bis/ | [2] https://mnot.github.io/I-D/rfc5785bis/ | |||
| [3] https://github.com/mnot/I-D/commits/gh-pages/rfc5785bis | [3] https://github.com/mnot/I-D/commits/gh-pages/rfc5785bis | |||
| [4] https://datatracker.ietf.org/doc/draft-nottingham-rfc5785bis/ | [4] https://datatracker.ietf.org/doc/draft-nottingham-rfc5785bis/ | |||
| skipping to change at page 8, line 38 ¶ | skipping to change at page 10, line 13 ¶ | |||
| None, until they choose to use this mechanism. | None, until they choose to use this mechanism. | |||
| 4. Why aren't per-directory well-known locations defined? | 4. Why aren't per-directory well-known locations defined? | |||
| Allowing every URI path segment to have a well-known location | Allowing every URI path segment to have a well-known location | |||
| (e.g., "/images/.well-known/") would increase the risks of | (e.g., "/images/.well-known/") would increase the risks of | |||
| colliding with a pre-existing URI on a site, and generally these | colliding with a pre-existing URI on a site, and generally these | |||
| solutions are found not to scale well, because they're too | solutions are found not to scale well, because they're too | |||
| "chatty". | "chatty". | |||
| 5. I want to use a well-known location to make it easy to configure | ||||
| my protocol that uses HTTP. | ||||
| This is not what well-known locations are for; see Section 1.1. | ||||
| Appendix B. Changes from RFC5785 | Appendix B. Changes from RFC5785 | |||
| o Discuss appropriate and inappropriate uses more fully | o Allow non-Web well-known locations | |||
| o Adjust IANA instructions | o Adjust IANA instructions | |||
| o Update references | o Update references | |||
| o Various other clarifications | o Various other clarifications | |||
| Author's Address | Author's Address | |||
| Mark Nottingham | Mark Nottingham | |||
| End of changes. 25 change blocks. | ||||
| 137 lines changed or deleted | 198 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/ | ||||