XEP-0363: amend security considerations and introduce retry element

This commit is contained in:
Daniel Gultsch 2017-12-03 18:35:39 +01:00 committed by Sam Whited
parent b691a40406
commit dfe8b8e429
1 changed files with 15 additions and 0 deletions

View File

@ -29,6 +29,17 @@
<email>daniel@gultsch.de</email>
<jid>daniel@gultsch.de</jid>
</author>
<revision>
<version>0.4.0</version>
<date>2017-12-03</date>
<initials>dg</initials>
<remark>
<ul>
<li>Added &lt;retry/&gt; element to error response</li>
<li>Extend Security Considerations</li>
</ul>
</remark>
</revision>
<revision>
<version>0.3.1</version>
<date>2017-04-21</date>
@ -211,6 +222,7 @@
</error>
</iq>]]></example>
<p>For any other type of error the service SHOULD respond with appropriate error types to indicate temporary or permanent errors.</p>
<p>For temporary errors such as exceeding a personal quota the service MAY include a &lt;retry/&gt; element qualified by the urn:xmpp:http:upload:0 namespace as a child of the &lt;error/&gt; element. The retry element MUST include an attribute 'stamp' which indicates the time at which the requesting entity may try again. The format of the timestamp MUST adhere to the date-time format specified in &xep0082; and MUST be expressed in UTC. The service SHOULD NOT impose sanctions on an entity for retrying earlier than the specified time.</p>
<example caption='Alternative response by the upload service to indicate a temporary error after the client exceeded a quota'><![CDATA[
<iq from='upload.montague.tld'
id='step_03'
@ -223,6 +235,8 @@
<error type='wait'>
<resource-constraint xmlns='urn:ietf:params:xml:ns:xmpp-stanzas' />
<text xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'>Quota reached. You can only upload 5 files in 5 minutes</text>
<retry xmlns='urn:xmpp:http:upload:0'
stamp='2017-12-03T23:42:05Z' />
</error>
</iq>]]></example>
<example caption='Alternative response by the upload service to indicate a permanent error to a client that is not allowed to upload files'><![CDATA[
@ -252,6 +266,7 @@
<section1 topic='Security Considerations' anchor='security'>
<ul>
<li>Client implementors MUST consider the fact that without additional end-to-end-encryption files uploaded to a service described in this document will store those files in plain text on that service. Client implementors SHOULD either use this only for semi public files (for example files shared in a public MUC or a PEP Avatar) or implement appropriate end-to-end encryption.</li>
<li>Requesting entities MUST strip any newline characters from the HTTP header names and values before making the PUT request.</li>
<li>Service implementors SHOULD use long randomized parts in their URLs making it impossible to guess the location of arbitrary files</li>
<li>Server operators SHOULD consider the responsibility that comes with storing user data and MAY consider appropriate measures such as full disk encryption.</li>
</ul>