Network Working Group R. Mahy Request for Comments: 5333 April 2009 Category: Standards Track A Telephone Number Mapping (ENUM) Service Registration for Internet Calendaring Services Status of This Memo This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited. Copyright Notice Copyright (c) 2009 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents in effect on the date of publication of this document (http://trustee.ietf.org/license-info). Please review these documents carefully, as they describe your rights and restrictions with respect to this document. This document may contain material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s) controlling the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it into languages other than English. Abstract This document registers a Telephone Number Mapping (ENUM) service for Internet calendaring services. Specifically, this document focuses on provisioning 'mailto:' (iMIP) and 'http:' (CalDAV) URIs in ENUM. Mahy Standards Track [Page 1] RFC 5333 iCal Enumservice April 2009 1. Introduction ENUM (E.164 Number Mapping, RFC 3761 [1]) is a system that uses DNS (Domain Name Service, RFC 1034 [2]) to translate telephone numbers, such as '+12025550100', into URIs (Uniform Resource Identifiers, RFC 3986 [3]), such as 'mailto:user@example.com'. ENUM exists primarily to facilitate the interconnection of systems that rely on telephone numbers with those that use URIs to identify resources. The ENUM registration here could be used to allow phones, for example, to check the free/busy status of a user in their address book or propose a meeting with him or her from the user's phone number. The Guide to Internet Calendaring [10] describes the relationship between various Internet calendaring specifications like this: "iCalendar [4] is the language used to describe calendar objects. iTIP [5] [Transport-Independent Interoperability Protocol] describes a way to use the iCalendar language to do scheduling. iMIP [6] [Message-Based Interoperability Protocol] describes how to do iTIP scheduling via e-mail". Recently, another Standards Track protocol for calendar and scheduling access has appeared. CalDAV (Calendaring Extensions to WebDAV) [7] is a WebDAV (Web-based Distributed Authoring and Versioning) [8] based mechanism for manipulating internet calendars, viewing free/busy lists, and via a planned scheduling extension [15], could be used for proposing calendar events as well. The existing 'mailto:' URI scheme (defined in RFC 3986 [3]) is already used to address iMIP compatible Calendar Services. Likewise, the existing 'http:' and 'https:' URI schemes (defined in RFC 2616 [11] and RFC 2818 [12]) are already used to address CalDAV compatible Calendar Services. This document registers an enumservice for advertising Internet calendaring information associated with an E.164 number, using the 'mailto:', 'http:', or 'https:' schemes. 2. ENUM Service Registration - ical As defined in RFC 3761 [1], the following is a template covering information needed for the registration of the enumservice specified in this document: Enumservice Name: Mahy Standards Track [Page 2] RFC 5333 iCal Enumservice April 2009 "ical" Enumservice Type: "ical" Enumservice Subtypes: sched:mail URI scheme(s): "mailto:" Functional Specification: This Enumservice indicates that the resource identified is a URI used for scheduling using Internet calendaring via Internet mail. The supported URI scheme are the 'mailto:' URI for the iMIP [6] protocol. Security considerations: See Section 4. Intended usage: COMMON Author: Rohan Mahy (rohan@ekabal.com) Enumservice Name: "ical" Enumservice Type: "ical" Enumservice Subtypes: sched:web URI scheme(s): "http:", "https:" Functional Specification: This Enumservice indicates that the resource identified is a URI used for scheduling using Internet calendaring using CalDAV. Supported URI schemes are the 'http:' or 'https:' URIs for a planned scheduling extension [15] to the CalDAV [7] protocol. Security considerations: See Section 4. Intended usage: COMMON Author: Rohan Mahy (rohan@ekabal.com) Enumservice Name: "ical" Enumservice Type: "ical" Enumservice Subtypes: Mahy Standards Track [Page 3] RFC 5333 iCal Enumservice April 2009 sched URI scheme(s): "mailto:", "http:", "https:" Functional Specification: This Enumservice indicates that the resource identified is a URI used for scheduling using Internet calendaring. Supported URI schemes are the 'mailto:' URI for the iMIP [6] protocol, and 'http:' or 'https:' URIs for a planned scheduling extension [15] to the CalDAV [7] protocol. Security considerations: See Section 4. Intended usage: COMMON Author: Rohan Mahy (rohan@ekabal.com) Enumservice Name: "ical" Enumservice Type: "ical" Enumservice Subtypes: access URI scheme(s): "http:", "https:" Functional Specification: This Enumservice indicates that the resource identified is a URI used for Internet calendaring, which is available to access a user's calendar (for example free/busy status). Supported URI schemes are 'http:' or 'https:' URIs for the CalDAV [7] protocol. Security considerations: See Section 4. Intended usage: COMMON Author: Rohan Mahy (rohan@ekabal.com) 3. Example of Usage Below is a set of sample resource records for this enumservice. $ORIGIN 3.2.1.0.5.5.5.2.1.2.1.e164.arpa. @ NAPTR 10 100 "u" "E2U+ical:access" "!^.*$!http://cal.example.com/home/alice/calendars/!" . $ORIGIN 3.2.1.0.5.5.5.2.1.2.1.e164.arpa. @ NAPTR 20 100 "u" "E2U+ical:sched:mail" "!^.*$!mailto:alice@example.com!" . Mahy Standards Track [Page 4] RFC 5333 iCal Enumservice April 2009 Note that an ENUM lookup for "E2U+ical:sched" at this phone number would return the second record (one match), while a query for "E2U+ical" would return the first record (of the two matching records, the one with the lowest order). 4. Security Considerations The Domain Name System (DNS) does not make policy decisions about which records it provides to a DNS resolver. All DNS records must be assumed to be available to all inquirers at all times. The information provided within an ENUM record set must therefore be considered open to the public -- which is a cause for some privacy considerations. Revealing a calendaring URI by itself is unlikely to introduce many privacy concerns, although, depending on the structure of the URI, it might reveal the full name or employer of the target. The use of anonymous URIs mitigates this risk. As ENUM uses DNS, which in its current form is an insecure protocol, there is no mechanism for ensuring that the answer returned to a query is authentic. An analysis of threats specific to the dependence of ENUM on the DNS is provided in RFC 3761 [1], and a thorough analysis of threats to the DNS itself is covered in RFC 3833 [14]. Many of these problems are prevented when the resolver verifies the authenticity of answers to its ENUM queries via DNSSEC (DNS Security) [9] in zones where it is available. More serious security concerns are associated with potential attacks against an underlying calendaring system (for example, unauthorized modification or viewing). For this reason, iTIP discusses a number of security requirements (detailed in RFC 2446 [5]) that call for authentication, integrity and confidentiality properties, and similar measures to prevent such attacks. Any calendaring protocol used in conjunction with a URI scheme currently meets these requirements. The use of CalDAV with the 'https:' scheme makes use of TLS [13] (Transport Layer Security) to provide server authentication, confidentiality, and message integrity. Unlike a traditional telephone number, the resource identified by an calendaring URI is often already guessable, and it often requires that users provide cryptographic credentials for authentication and authorization before calendar data can be exchanged. Despite the public availability of ENUM records, the use of this information to reveal an unprotected calendaring resource is unlikely in practice. Mahy Standards Track [Page 5] RFC 5333 iCal Enumservice April 2009 5. IANA Considerations This document requests registration of the "iCal" Enumservice according to the definitions in Section 2 of this document and RFC 3761 [1]. 6. References 6.1. Normative References [1] Faltstrom, P. and M. Mealling, "The E.164 to Uniform Resource Identifiers (URI) Dynamic Delegation Discovery System (DDDS) Application (ENUM)", RFC 3761, April 2004. [2] Mockapetris, P., "Domain names - concepts and facilities", STD 13, RFC 1034, November 1987. [3] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform Resource Identifier (URI): Generic Syntax", STD 66, RFC 3986, January 2005. [4] Dawson, F. and Stenerson, D., "Internet Calendaring and Scheduling Core Object Specification (iCalendar)", RFC 2445, November 1998. [5] Silverberg, S., Mansour, S., Dawson, F., and R. Hopson, "iCalendar Transport-Independent Interoperability Protocol (iTIP) Scheduling Events, BusyTime, To-dos and Journal Entries", RFC 2446, November 1998. [6] Dawson, F., Mansour, S., and S. Silverberg, "iCalendar Message- Based Interoperability Protocol (iMIP)", RFC 2447, November 1998. [7] Daboo, C., Desruisseaux, B., and L. Dusseault, "Calendaring Extensions to WebDAV (CalDAV)", RFC 4791, March 2007. [8] Dusseault, L., "HTTP Extensions for Web Distributed Authoring and Versioning (WebDAV)", RFC 4918, June 2007. [9] Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose, "Protocol Modifications for the DNS Security Extensions", RFC 4035, March 2005. 6.2. Informative References [10] Mahoney, B., Babics, G., and A. Taler, "Guide to Internet Calendaring", RFC 3283, June 2002. Mahy Standards Track [Page 6] RFC 5333 iCal Enumservice April 2009 [11] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999. [12] Rescorla, E., "HTTP Over TLS", RFC 2818, May 2000. [13] Dierks, T. and E. Rescorla, "The Transport Layer Security (TLS) Protocol Version 1.2", RFC 5246, August 2008. [14] Atkins, D. and R. Austein, "Threat Analysis of the Domain Name System (DNS)", RFC 3833, August 2004. [15] Daboo, C. and B. Desruisseaux, "CalDAV Scheduling Extensions to WebDAV", Work in Progress, September 2008. Appendix A. Acknowlegments Thanks to Lisa Dusseault and Alexander Mayrhofer for reviewing this document. Author's Address Rohan Mahy EMail: rohan@ekabal.com Mahy Standards Track [Page 7]