<?xml version="1.0"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
  <!ENTITY rfc3501 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3501.xml'>
  <!ENTITY rfc6778 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.6778.xml'>
  <!ENTITY rfc5257 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5257.xml'>
  <!ENTITY rfc5464 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5464.xml'>
  <!ENTITY rfc5256 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5256.xml'>
  <!ENTITY rfc6237 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.6237.xml'>
  <!ENTITY rfc6203 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.6203.xml'>
  <!ENTITY rfc4505 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4505.xml'>
]>

<?rfc toc="yes" ?>
<?rfc compact="yes" ?>
<?rfc subcompact="no" ?>
<?rfc sortrefs="yes" ?>
<?rfc strict="yes" ?>
<?rfc comments="yes" ?>
<?rfc inline="yes" ?>
<?rfc symrefs="yes" ?>

<rfc ipr="trust200902"  category="info" docName="draft-sparks-genarea-imaparch-06">

<front>

<title abbrev="IMAP Access to IETF Email List Archives">
IMAP Access to IETF Email List Archives
</title>

<author initials="R." surname="Sparks" fullname="Robert Sparks" >
 <organization>Tekelec</organization>
 <address>
 <postal>
 <street>17210 Campbell Road</street>
 <street>Suite 250</street>
 <city>Dallas</city>
 <region>Texas</region>
 <code>75254-4203</code>
 <country>USA</country>
 </postal>
 <email>rjsparks@nostrum.com</email>
 </address>
</author>

<date month="Apr" day="3" year="2013" />

<abstract>
<t>
The IETF makes heavy use of email lists to conduct its work. This often involves
accessing the archived history of those email lists. Participants would
like to have the ability to browse and search those archives using standard IMAP clients.
This memo captures the requirements for providing a service that would allow such
browsing and searching. 
</t>
</abstract>

</front>

<middle>

<section anchor="intro" title="Introduction">
<t>
The IETF makes heavy use of email lists to conduct its work. This often involves
accessing the archived history of those email lists. Requirements for improved
web-based browsing and searching of these archives are captured in <xref target="RFC6778"/>.
Participants would like to have the ability to browse and search those archives using standard IMAP clients.
This memo captures the requirements for providing a service that would allow such browsing and searching. 
</t>
<t>
Discussion of this memo should take place on the ietf@ietf.org mailing list.
</t>
</section>

<section title="Requirements for IMAP access to archived IETF lists">
<t>Many participants would prefer to access the list archives using IMAP <xref target="RFC3501"/>. Providing this access while meeting the following requirements will likely require an IMAP server with specialized capabilities.</t>
<t><list style="hanging">
<t hangText="o">The system should expose the archive using an IMAP interface, with each list
represented as a mailbox.</t>
<t hangText="o">This interface must work with standard IMAP clients.</t>
<t hangText="o">The interface should allow users that have provided credentials to each have their own read/unread marks for messages. Allowing other annotation is desirable. The implementation should consider taking advantage of the IMAP extensions for ANNOTATE <xref target="RFC5257"/> and METADATA <xref target="RFC5464"/>.</t>
<t hangText="o">The interface must allow administrators to disable setting read/unread marks and other annotations, and delete any such marks or annotations on a per user basis.</t>
<t hangText="o">The interface must not allow users to modify the underlying message or metadata other than the read/unread marks and annotations described above. Specifically, users must not be able to delete or insert messages, or move them between mailboxes in the archive. (Clients will, of course, be able to make local copies of messages from the archive.) </t>
<t hangText="o">The interface must have server-side searching enabled, and should support multiple simultaneous extensive searches. The server should facilitate
the enhanced search capabilities described in <xref target="RFC6778"/>. The implementation should consider taking advantage of the extensions defined for IMAP SORT and THREAD <xref target="RFC5256"/>, multimailbox search <xref target="RFC6237"/>, and fuzzy search <xref target="RFC6203"/>.</t>
<t hangText="o">When the system requires credentials, it must use the datatracker's authentication system
<list style="hanging">
<t hangText="-">While the vast majority of archived lists have an open access policy, some archived lists have restricted archives.  The system must make it possible to limit access to a restricted archive based on login credentials.</t>
<t hangText="-">The system must not require credentials for accessing lists with open archives. (But it is acceptable for a user to access such archives while providing credentials). Specifically, the system will allow anonymous access using the SASL ANONYMOUS authentication mechanism <xref target="RFC4505"/> or an LOGIN command with a special username (such as "anonymous") determined by the administrator .</t>
</list></t>

</list></t>
</section>

<section title="Security Considerations">
<t>
   Allowing IMAP as an interface for browsing and searching the archives of IETF email lists does not affect
   the security of the Internet in any significant fashion.
</t>
<t> Searching can be I/O and CPU intensive. Clients that make local copies all messages in a mailbox can also present an I/O burden, particularly when syncronizing for the first time. The implementors of this interface should consider the potential for maliciously crafted searches attempting to consume all available resources. The implementors should consider the potential for denial of service attacks through making many connections to the interface. The implementors should consider ways to rate limit I/O due to making local copies of messages.</t>
<t> Storing read/unread marks and other annotations requires potentially unbounded storage space. The implementors of this interface should consider the potential for maliciously crafted annontations attempting to consume all storage space. The implementers should consider making it easy for the administrator to determine which users are consuming exceptional space.</t>
</section>

<section title="IANA Considerations">
<t>
This document has no actions for IANA.
</t>
</section>

<section title="Acknowledgements">
<t>
This text was derived directly from an early version of the Internet Draft that became <xref target="RFC6778"/> 
which incorporated text suggestions from Alexey Melnikov, Pete Resnick, and S. Moonesamy. Barry Leiba suggested
several references to IMAP extensions for an implementation to consider.
</t>
</section>

<section title="Changelog">
<section title="05 to 06">
<t><list style="symbols">
<t>Added a requirement making it explicit that this interface won't allow users to delete, insert, or move messages between archives.</t>
<t>Clarified how the would allow access without credentials (at Alexey's suggestion).</t>
<t>Pointed to potential resource abuse issues in the security considerations section.</t>
</list></t>
</section>
<section title="04 to 05">
<t><list style="symbols">
<t>Adapted text from RFC6778 to make it more clear that both authenticated and unauthenticated access should be supported.</t>
</list></t>
</section>
<section title="03 to 04">
<t><list style="symbols">
<t>Incorporated suggestions from Pete Resnick and Barry Leiba.</t>
</list></t>
</section>
<section title="02 to 03">
<t><list style="symbols">
<t>None - expiry refresh</t>
</list></t>
</section>
<section title="01 to 02">
<t><list style="symbols">
<t>Minor editorial changes</t>
</list></t>
</section>
<section title="00 to 01">
<t><list style="symbols">
<t>Added requirements to enable controlled access to restricted archives based on credentials</t>
<t>Generalized the requirement to use the datatracker's credentials.</t>
</list></t>
</section>
<section title="00">
<t><list style="symbols">
<t>Split this set of requirements out from the mailarch doc so that this project could be pursued separately</t>
</list></t>
</section>
</section>

</middle>
<back>

<!--
<references title="Normative References">
</references>
-->

<references title="Informative References">
&rfc3501;
&rfc6778;
&rfc5257;
&rfc5464;
&rfc5256;
&rfc6237;
&rfc6203;
&rfc4505;
</references>

</back>
	
</rfc>
