| < draft-ietf-extra-imap-list-myrights-02.txt | draft-ietf-extra-imap-list-myrights-03.txt > | |||
|---|---|---|---|---|
| EXTRA K. Murchison | EXTRA K. Murchison | |||
| Internet-Draft B. Gondwana | Internet-Draft B. Gondwana | |||
| Intended status: Standards Track FastMail | Intended status: Standards Track FastMail | |||
| Expires: September 23, 2018 March 22, 2018 | Expires: October 19, 2018 April 17, 2018 | |||
| IMAP4 Extension for Returning MYRIGHTS Information in Extended LIST | IMAP4 Extension for Returning MYRIGHTS Information in Extended LIST | |||
| draft-ietf-extra-imap-list-myrights-02 | draft-ietf-extra-imap-list-myrights-03 | |||
| Abstract | Abstract | |||
| This document defines an extension to the to IMAP LIST command that | This document defines an extension to the to IMAP LIST command that | |||
| allows the client to request the set of rights that the logged-in | allows the client to request the set of rights that the logged-in | |||
| user has been granted on mailboxes, along with other information | user has been granted on mailboxes, along with other information | |||
| typically returned by the LIST command. | typically returned by the LIST command. | |||
| Status of This Memo | Status of This Memo | |||
| skipping to change at page 1, line 33 ¶ | skipping to change at page 1, line 33 ¶ | |||
| 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 September 23, 2018. | This Internet-Draft will expire on October 19, 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 | |||
| skipping to change at page 2, line 18 ¶ | skipping to change at page 2, line 18 ¶ | |||
| 2. Conventions Used in This Document . . . . . . . . . . . . . . 2 | 2. Conventions Used in This Document . . . . . . . . . . . . . . 2 | |||
| 3. MYRIGHTS Return Option to LIST Command . . . . . . . . . . . 2 | 3. MYRIGHTS Return Option to LIST Command . . . . . . . . . . . 2 | |||
| 4. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 4. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 5. Formal Syntax . . . . . . . . . . . . . . . . . . . . . . . . 4 | 5. Formal Syntax . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 6. Security Considerations . . . . . . . . . . . . . . . . . . . 4 | 6. Security Considerations . . . . . . . . . . . . . . . . . . . 4 | |||
| 7. Privacy Considerations . . . . . . . . . . . . . . . . . . . 4 | 7. Privacy Considerations . . . . . . . . . . . . . . . . . . . 4 | |||
| 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 | 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 8.1. Registration of IMAP capability LIST-MYRIGHTS . . . . . . 4 | 8.1. Registration of IMAP capability LIST-MYRIGHTS . . . . . . 4 | |||
| 8.2. Registration of LIST-EXTENDED option MYRIGHTS . . . . . . 4 | 8.2. Registration of LIST-EXTENDED option MYRIGHTS . . . . . . 4 | |||
| 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 5 | 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 10. Normative References . . . . . . . . . . . . . . . . . . . . 5 | |||
| 10.1. Normative References . . . . . . . . . . . . . . . . . . 5 | ||||
| 10.2. Informative References . . . . . . . . . . . . . . . . . 5 | ||||
| Appendix A. Change History (To be removed by RFC Editor before | Appendix A. Change History (To be removed by RFC Editor before | |||
| publication) . . . . . . . . . . . . . . . . . . . . 6 | publication) . . . . . . . . . . . . . . . . . . . . 6 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 1. Introduction | 1. Introduction | |||
| IMAP clients typically fetch the set of rights granted on mailboxes | IMAP clients typically fetch the set of rights granted on mailboxes | |||
| so they can expose the allowed functionality to the logged-in user. | so they can expose the allowed functionality to the logged-in user. | |||
| In order to do that, the client is forced to issue a LIST or LSUB | In order to do that, the client is forced to issue a LIST or LSUB | |||
| command to list all available mailboxes, followed by a MYRIGHTS | command to list all available mailboxes, followed by a MYRIGHTS | |||
| skipping to change at page 3, line 13 ¶ | skipping to change at page 3, line 11 ¶ | |||
| been granted on a given mailbox. Frequently, a client will have to | been granted on a given mailbox. Frequently, a client will have to | |||
| look up the rights for some or all of the mailboxes returned by the | look up the rights for some or all of the mailboxes returned by the | |||
| LIST command. Doing so in multiple MYRIGHTS commands wastes | LIST command. Doing so in multiple MYRIGHTS commands wastes | |||
| bandwidth and can degrade performance if the client does not pipeline | bandwidth and can degrade performance if the client does not pipeline | |||
| the requests. | the requests. | |||
| This document extends the LIST command with a new return option, | This document extends the LIST command with a new return option, | |||
| "MYRIGHTS", which allows the client to request all of the desired | "MYRIGHTS", which allows the client to request all of the desired | |||
| information in a single command. For each listable mailbox matching | information in a single command. For each listable mailbox matching | |||
| the list pattern and selection options, the server MUST return an | the list pattern and selection options, the server MUST return an | |||
| untagged LIST response followed by an untagged MYRIGHTS response | untagged LIST response and SHOULD also return an untagged MYRIGHTS | |||
| containing the set of rights granted to the logged-in user. | response containing the set of rights granted to the logged-in user. | |||
| The ordering of the responses is significant only in that the server | ||||
| MUST NOT send a MYRIGHTS response for a given mailbox before it sends | ||||
| the LIST response for that mailbox. | ||||
| If the server is unable to look up the set of rights for a given | If the server is unable to look up the set of rights for a given | |||
| mailbox, it MAY drop the corresponding MYRIGHTS reply. In such a | mailbox, it does not send the MYRIGHTS reply for that mailbox. | |||
| situation, the LIST command would still return a tagged OK reply. | ||||
| Client authors ought to note that generating the MYRIGHTS responses | Client authors ought to note that generating the MYRIGHTS responses | |||
| for a large number of mailboxes may be an expensive operation for the | for a large number of mailboxes may be an expensive operation for the | |||
| server. Clients SHOULD use a suitable match pattern and/or selection | server. Clients SHOULD use a suitable match pattern and/or selection | |||
| option to limit the set of mailboxes returned to only those whose | option to limit the set of mailboxes returned to only those whose | |||
| rights in which they are interested. | rights in which they are interested. | |||
| 4. Examples | 4. Examples | |||
| In this example the "bar" mailbox doesn't exist, so it has no | In this example the "bar" mailbox doesn't exist, so it has no | |||
| skipping to change at page 4, line 35 ¶ | skipping to change at page 4, line 35 ¶ | |||
| 7. Privacy Considerations | 7. Privacy Considerations | |||
| This specification does not introduce any additional privacy concerns | This specification does not introduce any additional privacy concerns | |||
| beyond those described in [RFC4314]. | beyond those described in [RFC4314]. | |||
| 8. IANA Considerations | 8. IANA Considerations | |||
| 8.1. Registration of IMAP capability LIST-MYRIGHTS | 8.1. Registration of IMAP capability LIST-MYRIGHTS | |||
| This document defines the "LIST-MYRIGHTS" IMAP capability to be added | This document defines the "LIST-MYRIGHTS" IMAP capability to be added | |||
| to the registry defined in Section 12 of [RFC3501]. | to the "IMAP Capabilities" registry: | |||
| <https://www.iana.org/assignments/imap-capabilities/imap- | ||||
| capabilities.xhtml#imap-capabilities-1>. | ||||
| 8.2. Registration of LIST-EXTENDED option MYRIGHTS | 8.2. Registration of LIST-EXTENDED option MYRIGHTS | |||
| This section registers the "MYRIGHTS" option to be added to the | This section registers the "MYRIGHTS" option to be added to the | |||
| registry defined in Section 9 of [RFC5258]. | "LIST-EXTENDED options" registry: <https://www.iana.org/assignments/ | |||
| imap-list-extended/imap-list-extended.xhtml#imap-list-extended-1>. | ||||
| LIST-EXTENDED option name: MYRIGHTS | LIST-EXTENDED option name: MYRIGHTS | |||
| LIST-EXTENDED option type: RETURN | LIST-EXTENDED option type: RETURN | |||
| LIST-EXTENDED option description: Causes the LIST command to return | LIST-EXTENDED option description: Causes the LIST command to return | |||
| MYRIGHTS responses in addition to LIST responses. | MYRIGHTS responses in addition to LIST responses. | |||
| Published specification: RFC XXXX, Section 3 | Published specification: RFC XXXX, Section 3 | |||
| Security considerations: RFC XXXX, Section 6 | Security considerations: RFC XXXX, Section 6 | |||
| Intended usage: COMMON | Intended usage: COMMON | |||
| Person and email address to contact for further | Person and email address to contact for further | |||
| information: | information: | |||
| Kenneth Murchison <murch@fastmail.com> | Kenneth Murchison <murch@fastmail.com> | |||
| Owner/Change controller: IESG <iesg@ietf.org> | Owner/Change controller: IESG <iesg@ietf.org> | |||
| 9. Acknowledgments | 9. Acknowledgments | |||
| This document is based largely on [RFC5819]. The author would like | This document is based largely on RFC5819. The authors would like to | |||
| to thank the authors of that document for providing both inspiration | thank the authors of that document for providing both inspiration and | |||
| and some borrowed text for this document. | some borrowed text for this document. The authors would also like to | |||
| thank the following individuals for contributing their ideas and | ||||
| 10. References | support for writing this specification: Barry Leiba. | |||
| 10.1. Normative References | 10. 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>. | |||
| [RFC3501] Crispin, M., "INTERNET MESSAGE ACCESS PROTOCOL - VERSION | [RFC3501] Crispin, M., "INTERNET MESSAGE ACCESS PROTOCOL - VERSION | |||
| 4rev1", RFC 3501, DOI 10.17487/RFC3501, March 2003, | 4rev1", RFC 3501, DOI 10.17487/RFC3501, March 2003, | |||
| <https://www.rfc-editor.org/info/rfc3501>. | <https://www.rfc-editor.org/info/rfc3501>. | |||
| skipping to change at page 5, line 45 ¶ | skipping to change at page 6, line 5 ¶ | |||
| [RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax | [RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax | |||
| Specifications: ABNF", STD 68, RFC 5234, | Specifications: ABNF", STD 68, RFC 5234, | |||
| DOI 10.17487/RFC5234, January 2008, | DOI 10.17487/RFC5234, January 2008, | |||
| <https://www.rfc-editor.org/info/rfc5234>. | <https://www.rfc-editor.org/info/rfc5234>. | |||
| [RFC5258] Leiba, B. and A. Melnikov, "Internet Message Access | [RFC5258] Leiba, B. and A. Melnikov, "Internet Message Access | |||
| Protocol version 4 - LIST Command Extensions", RFC 5258, | Protocol version 4 - LIST Command Extensions", RFC 5258, | |||
| DOI 10.17487/RFC5258, June 2008, | DOI 10.17487/RFC5258, June 2008, | |||
| <https://www.rfc-editor.org/info/rfc5258>. | <https://www.rfc-editor.org/info/rfc5258>. | |||
| 10.2. Informative References | ||||
| [RFC5819] Melnikov, A. and T. Sirainen, "IMAP4 Extension for | ||||
| Returning STATUS Information in Extended LIST", RFC 5819, | ||||
| DOI 10.17487/RFC5819, March 2010, | ||||
| <https://www.rfc-editor.org/info/rfc5819>. | ||||
| Appendix A. Change History (To be removed by RFC Editor before | Appendix A. Change History (To be removed by RFC Editor before | |||
| publication) | publication) | |||
| Changes from draft-ietf-extra-imap-list-myrights-02: | ||||
| o WGLC editorial changes from Barry Leiba. | ||||
| Changes from draft-ietf-extra-imap-list-myrights-01: | Changes from draft-ietf-extra-imap-list-myrights-01: | |||
| o Removed 'n' right from example. | o Removed 'n' right from example. | |||
| o Added advice to client authors regarding expense of calculating | o Added advice to client authors regarding expense of calculating | |||
| MYRIGHTS. | MYRIGHTS. | |||
| o Replicated Security Considerations section from RFC 5819. | o Replicated Security Considerations section from RFC 5819. | |||
| Changes from draft-ietf-extra-imap-list-myrights-00: | Changes from draft-ietf-extra-imap-list-myrights-00: | |||
| End of changes. 14 change blocks. | ||||
| 26 lines changed or deleted | 26 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/ | ||||