<?xml version="1.0" encoding="US-ASCII"?>
<!-- This template is for creating an Internet Draft using xml2rfc,
     which is available here: http://xml.resource.org. -->
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY RFC1034    PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.1034.xml'>
<!ENTITY RFC2119    PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml'>
<!ENTITY RFC2617    PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2617.xml'>
<!ENTITY RFC3966    PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3966.xml'>
<!ENTITY RFC3986    PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3986.xml'>
<!ENTITY RFC6116    PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.6116.xml'>
<!ENTITY RFC6117    PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.6117.xml'>
<!ENTITY RFC6118    PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.6118.xml'>
<!ENTITY I-D.ietf-appsawg-acct-uri  PUBLIC '' 
'http://xml.resource.org/public/rfc/bibxml3/reference.I-D.ietf-appsawg-acct-uri.xml'>
]>

<?xml-stylesheet type='text/xsl' href='http://xml.resource.org/authoring/rfc2629.xslt' ?>
<?rfc toc="yes" ?>
<?rfc tocompact="yes" ?>
<?rfc tocindent="yes" ?>
<?rfc comments="yes" ?>
<?rfc inline="yes" ?>
<?rfc symrefs="yes" ?>
<?rfc sortrefs="yes"?>
<?rfc iprnotified="no" ?>
<?rfc strict="yes" ?>
<?rfc compact="yes"?>
<?rfc subcompact="yes"?>

<rfc
  category="exp"
  ipr="trust200902"
  docName="draft-goix-appsawg-enum-acct-uri-07">

  <front>
    <title abbrev="Enum Service ACCT URI Registration">
    ENUM Service Registration for acct URI
    </title>
    
    <author initials='L.' surname="Goix" fullname='Laurent-Walter Goix'>
      <organization>Telecom Italia</organization>
      <address>
        <postal>
          <street>Via Golgi, 42</street>
          <city>Milano</city>
          <code>20133</code>
          <country>Italy</country>
        </postal>
        <email>laurentwalter.goix@telecomitalia.it</email>
      </address>
    </author>
	
    <author initials="K." surname="Li" fullname="Kepeng Li">
      <organization abbrev="Huawei Technologies">Huawei Technologies</organization>
      <address>
        <postal>
          <street>Huawei Base, Bantian, Longgang District</street>
          <city>Shenzhen</city>
          <code>518129</code>
          <country>P. R. China</country>
        </postal>
        <phone>+86-755-28971807</phone>
        <email>likepeng@huawei.com</email>
      </address>
    </author>
    
    <date year="2014" />

    <area>Applications</area>
    <workgroup>appsawg</workgroup>

    <abstract>
      <t>      
   This document registers a Telephone Number Mapping (ENUM) service for
   'acct:' URIs (Uniform Resource Identifiers).
       </t>
    </abstract>

  </front>

  <middle>
    <section anchor="intro" title="Introduction">
      <t>
	 ENUM (E.164 Number Mapping, <xref target='RFC6116' />) is a system that uses DNS
   (Domain Name Service, <xref target='RFC1034' />) to translate telephone numbers,
   such as '+44 1632 960123', into URIs 
   (Uniform Resource Identifiers, <xref target='RFC3986' />),
   such as 'acct: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.
       </t>
       <t>
   <xref target='I-D.ietf-appsawg-acct-uri' /> 
   defines the 'acct' URI scheme as a way to identify a
   user's account at a service provider.
       </t>
       <t>
   This document registers an Enumservice for advertising acct URI information
   associated with an E.164 number.
       </t>   
      </section>
      
       <section anchor="terms" title="Terminology">
        <t>
          The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
          "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in
          this document are to be interpreted as described in <xref target='RFC2119' />.
        </t>        
      </section>
	
	<section title="Use cases">   
		<section title="Reverse phone lookup">
		   <t>
		In this example, an address book application could issue ENUM queries looking for 'acct' URIs corresponding to phone 
		numbers. This could be used to display the account identifier as well as an icon based on the host (domain) 
		portion of that URI.
		</t>
		<t>
		Similarly, an endpoint could trigger this resolution process during inbound and/or outbound calls to discover an 
		account associated with the remote party.
		   </t>      
		   <t>
		   In general the provision of an ENUM record to map a phone number 
		   into an account may be useful for businesses or 
		   professional workers to identify themselves publicly 
		   (in a similar way as vCard enum records).
		</t>
		</section>
		<section title="Routing of mobile social communications">
		   <t>
		The Open Mobile Alliance (OMA) develops mobile service enabler specifications, which support the creation of interoperable
		end-to-end mobile services independent of the underlying wireless platforms, such as GSM (Global System for Mobile communications),
		UMTS (Universal Mobile Telecommunications System) and LTE (Long Term Evolution) mobile networks. 
		The OMA Social Network Web (SNeW) Enabler Release <xref target='OMA-SNeW' /> 
		has introduced a number of Social Networking functionalities for mobile subscribers identified by their
		MSISDN (Mobile Subscriber Integrated Services Digital Network number, a number uniquely identifying a subscription in a mobile network), amongst which is the ability to follow each other's social activities across service providers.
		</t>
		<t>
		Such functionality requires the global resolution of the MSISDN to the corresponding account and provider, in an analogous way as
		MMS routing, to identify the target endpoint for the related messages.
		Although alternatives solutions exist (e.g. based on mobile network operations and/or proprietary lookup techniques), ENUM provides a globally accessible mechanism for enabling resolution from network entities on behalf of an endpoint, or from an endpoint itself.
		</t>
		<t>
		For example, a user of a service provider could request to follow the social activities of user '+44 1632 960123'. The home SNEW
		Server of the former user could perform an ENUM query to identify the 'acct' URI corresponding to that phone number.
		Based on the resulting URI, the server could then identify the SNEW Server of the target user and route the original user's request to the appropriate endpoint.
		</t>
		<t>
		A similar mechanism can apply to other types of social networking-related messages or other communications targeted to a mobile subscriber.
		</t> 
		</section>
    </section>
    
    <section anchor="ianar" title="IANA Registration">
       <t>       
	As defined in <xref target='RFC6117' />,
	the following is a template covering information needed for the 
	registration of the Enumservice specified in this document:
       </t>
       <figure>
	   <artwork><![CDATA[
           <record>
             <class>Application-Based, Ancillary</class>
             <type>acct</type>
             <urischeme>acct</urischeme>
             <functionalspec>
               <paragraph>
                 This Enumservice indicates that the resource
                 can be identified by the associated 'acct' URI 
<xref target='I-D.ietf-appsawg-acct-uri' />.
               </paragraph>
             </functionalspec>
             <security>
               For DNS considerations in avoiding loops when 
			   searching for "acct" NAPTRs, 
			   see <xref type="rfc" data="rfcTHIS"/>, 
			   <xref target="dns">Section 6</xref>.
			   For security considerations, 
			   see <xref type="rfc" data="rfcTHIS"/>,
			   <xref target="security">Section 7</xref>.
             </security>
             <usage>COMMON</usage>
             <registrationdocs>
               <xref type="rfc" data="rfcTHIS"/>
             </registrationdocs>
             <requesters>
               <xref type="person" data="Laurent_Walter_Goix"/>
             </requesters>
           </record>

           <people>
             <person id="Laurent_Walter_Goix">
               <name>Laurent-Walter Goix</name>
               <org>Telecom Italia</org>
               <uri>mailto:laurentwalter.goix@telecomitalia.it</uri>
               <updated>2014-06-18</updated>
             </person>
           </people>      
        ]]></artwork></figure>
		<t>
		[Note for RFC-Editor: Please replace any instance of rfcTHIS with the
   RFC number of this document before publication]
	</t>
    </section>
    
     <section anchor="examples" title="Examples">
      <t>
      The following is an example of the use of the Enumservice 
	  registered by this document in a NAPTR resource record for phone
	  number +44 1632 960123.
      </t>
      <t>
     $ORIGIN 3.2.1.0.6.9.2.3.6.1.4.4.e164.arpa.
      </t>
	  <t>
	  IN NAPTR 10 100 "u" "E2U+acct" "!^.*$!acct:441632960123@foo.com!"	. 
	  </t>
      <t>
      IN NAPTR 10 101 "u" "E2U+acct" "!^.*$!acct:john.doe@example.com!"     .
      </t>
      <t>
      Note that in the first record, the revealed 
	  information is limited to the domain of the service 
	  provider serving that user as the userpart of the acct URI simply 
	  replicates the phone number.
      </t>
     </section>
    
     <section anchor="dns" title="DNS Considerations">
     <t>
	 There may not be any "E2U+acct" NAPTRs returned in response to the
   original ENUM query on the requested telephone number, but other
   terminal ENUM NAPTRs that include tel: URLs <xref target='RFC3966' /> 
   (e.g., "voice:tel" or "pstn:tel" or "SMS:tel" or "MMS:tel" - see <xref target='RFC6118' />) may be present.
	  </t>
	  <t>
	  The application that made that ENUM query may choose to re-submit
   ENUM queries for any E.164 numbers included in those returned
   terminal NAPTRs. Doing so may cause a query loop (e.g., the ENUM
   records returned from subsequent queries may refer to the telephone
   number already considered). If applications choose to perform
   subsequent ENUM queries using telephone numbers retrieved from
   earlier queries, these applications MUST be aware of the potential
   for query loops, and MUST be prepared to abort the set of queries if
   such a loop is detected.
	  </t>
	  <t>
   This is a similar issue to the referential loop issue caused by
   processing non-terminal NAPTR queries, as mentioned in section 5.2.1
   of <xref target='RFC6116' />, and a similar technique to mitigate this issue can be
   used; an application searching for records with "acct" Enumservice
   may consider that submitting a chain of more that 5 ENUM queries
   without finding such a record indicates that a referential loop has
   been entered, and the chain of queries SHOULD be abandoned.
	</t>
     </section>
    
     <section anchor="security" title="Security Considerations">
       <t>
         DNS, as used by ENUM, is a global, distributed database.  Should
   implementers of this specification use e164.arpa or any other
   publicly available domain as the tree for maintaining PSTN
   Enumservice data, this information would be visible to anyone
   anonymously.  
      </t>
       <t>
   Carriers, service providers, and other users may
   choose not to publish such information in the public e164.arpa tree.
   They may instead simply publish this in an internal ENUM
   infrastructure that is only able to be queried by trusted elements of
   their network, thus limiting threats.
      </t>
       <t>
   For security considerations that apply to all Enumservices, please
   refer to <xref target='RFC6116' />, section 7.
      </t>
<!--	  
   <t>
   Linking telephone numbers to Personally Identifiable 
   Information (PII) is a very sensitive topic, because it 
   provides a "reverse lookup" from the phone number to its owner. 
   Publication of such PII is covered by data-protection law 
   in many legislations. In most cases, the explicit consent
    of the affected individual is required.
   </t> 
   <t>
    Users MUST therefore carefully consider the information  
    provided in the resource identified by the ENUM record as 
    well as in the record itself. Considerations SHOULD include 
    serving information only to entities of the user's choice 
    and/or limiting the comprehension of the information provided
     based on the identity of the requestor.
   </t>
  --> 
        <t>
   It is important to note that the ENUM record itself does not 
   need to contain any personal information but only contains a pointer to
    an account identifier. This identifier may be queried 
    to discover pointers to personal information (e.g. 
    social network information) endpoints and an authorisation mechanism 
    may be in place in that context with any level of granularity although it is out of scope of this document.
    </t>
   <t>
	Technically, ENUM records themselves could contain pointers to the same endpoints. 
	However the visibility of ENUM records cannot be controlled based on the requesting entity. In that context the 
	simple mapping of the phone number to the account identifier, notwithstanding the disclosure of the association 
	itself, still enables the reuse of more advanced access policies.
    </t>     
    <t>
	Revealing an 'acct' 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.
	</t>
	<t>
	Unlike a traditional telephone number, the endpoint identified by an
   'acct' URI may require that requesting entities provide cryptographic credentials
   for authentication and authorization before messages are
   exchanged. ENUM can
   actually provide far greater protection from unwanted requesting entities than
   does the existing PSTN, despite the public availability of ENUM
   records.
	</t>
	<t>
	More serious security concerns are associated with potential attacks
   against an underlying system (for example, social network system) using the 'acct' URI. 
   For this reason, underlying system should have a number
   of security requirements that call for
   authentication, integrity and confidentiality properties, and similar
   measures to prevent such attacks. And this is out of scope of this document.
	</t>
      </section>

    <section anchor="ianac" title="IANA Considerations">
       <t>   
       This document requests the IANA registration of the Enumservice with
   Type "acct" according to the definitions in this document, 
   <xref target='RFC6116' /> and <xref target='RFC6117' />.  
       </t>
       <t>
      Details of the registration are given in <xref target="ianar" />.
       </t>
     </section>  
    
    <section anchor="acknowledgement" title="Acknowledgements">
      <t>  
   The authors would like to thank Gonzalo Salgueiro, Paul Jones,
   Lawrence Conroy, Enrico Marocco, Bert Greevenbosch and Bernie Hoeneisen
   for their valuable feedback to
   improve this document.     
      </t>
    </section>

  </middle>

  <back>
    <references title="Normative References">
      &I-D.ietf-appsawg-acct-uri;
      &RFC1034;
      &RFC2119;
      &RFC2617;
      &RFC3966;
      &RFC3986;
      &RFC6116;
      &RFC6117;  
      &RFC6118;        
    </references>
    <references title="Informative References">
      <reference anchor="OMA-SNeW">
        <front>
          <title>Social Network Web Enabler</title>
          <author>
            <organization>Open Mobile Alliance</organization>
          </author>
          <date month="Aug" year="2013"/>
        </front>
        <seriesInfo name="OMA-ER-SNeW-V1_0" value="http://technical.openmobilealliance.org/Technical/release_program/snew_v1_0.aspx"/>
      </reference>
    </references>

  </back>
</rfc>    