<?xml version="1.0" encoding="US-ASCII"?>

<!DOCTYPE rfc SYSTEM "rfc2629.dtd">

<?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="no"?>
<?rfc rfcedstyle="yes"?>

<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>

<rfc category="exp" number="7566" submissionType="independent">

  <front>
    <title abbrev="Enumservice 'acct' URI Registration">
    Enumservice Registration for 'acct' URI
    </title>
    
    <author initials='L.' surname="Goix" fullname='Laurent-Walter Goix'>
      <organization>Econocom-Osiatis Ingenierie</organization>
      <address>
        <postal>
          <street>75 cours Albert Thomas</street>
          <city>69003 Lyon</city>
          <country>France</country>
        </postal>
        <email>laurent.goix@econocom-osiatis.com</email>
      </address>
    </author>

    <author initials="K." surname="Li" fullname="Kepeng Li">
      <organization>Individual</organization>
      <address>
        <postal>
          <street>969 Wenyixi Road</street>
          <city>311121 Hangzhou</city>
          <country>China</country>
        </postal>
        <email>kepeng.likp@gmail.com</email>
      </address>
    </author>
    
    <date month="June" year="2015" />

    <abstract>
      <t>      
   This document registers an E.164 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='RFC7565' /> 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 way similar to 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 a
        way analogous to Multimedia Messaging Service (MMS)
        routing, to identify the target endpoint for the related messages.
        Although alternative 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='RFC7565'/>.
               </paragraph>
             </functionalspec>
             <security>
               For DNS considerations in avoiding loops when 
               searching for "acct" NAPTRs, see
               <xref type="rfc" data="7566"/>, Section 6.
               For security considerations, see
               <xref type="rfc" data="7566"/>, Section 7.
             </security>
             <usage>COMMON</usage>
             <registrationdocs>
               <xref type="rfc" data="7566"/>
             </registrationdocs>
             <requesters>
               <xref type="person" data="Laurent_Walter_Goix"/>
             </requesters>
           </record>

           <people>
             <person id="Laurent_Walter_Goix">
               <name>Laurent-Walter Goix</name>
               <org>Econocom-Osiatis Ingenierie</org>
               <uri>mailto:laurent.goix@econocom-osiatis.com</uri>
               <updated>2015-06-03</updated>
             </person>
           </people>
        ]]></artwork></figure>
                <t>
        </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 Naming Authority Pointer (NAPTR)
       resource record for phone number +44 1632 960123.
      </t>

<figure><artwork><![CDATA[
$ORIGIN 3.2.1.0.6.9.2.3.6.1.4.4.e164.arpa.

IN NAPTR 10 100 "u" "E2U+acct" "!^.*$!acct:441632960123@foo.com!" .

IN NAPTR 10 101 "u" "E2U+acct" "!^.*$!acct:john.doe@example.com!" .
]]></artwork></figure>

      <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", "pstn:tel", "sms:tel", or "mms:tel" --
     see <xref target='RFC6118' />) may be present.
          </t>
          <t>
          The application that made that ENUM query may choose to resubmit
   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 issue is similar 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 than 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
   Public Switched Telephone Network (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>
   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 authorization mechanism may be in
   place in that context with any level of granularity; these topics
   are out of scope for 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, a social-network system)
   using the 'acct' URI. For this reason, the underlying system should
   have a number of security requirements that call for
   authentication, integrity, and confidentiality properties, and similar
   measures to prevent such attacks. This is out of scope for this document.
        </t>
      </section>

    <section anchor="ianac" title="IANA Considerations">
       <t>   
       Per this document, IANA has registered 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>  
    
  </middle>

  <back>
    <references title="Normative References">
<!-- draft-ietf-appsawg-acct-uri (RFC 7565) -->
<reference anchor='RFC7565' target="http://www.rfc-editor.org/info/rfc7565">
<front>
<title>The 'acct' URI Scheme</title>
<author initials='P' surname='Saint-Andre' fullname='Peter Saint-Andre'>
    <organization />
</author>
<date month='May' year='2015' />
</front>
<seriesInfo name='RFC' value='7565' />
<seriesInfo name='DOI' value='10.17487/RFC7565'/>
</reference>

    <reference  anchor='RFC1034' target='http://www.rfc-editor.org/info/rfc1034'>
    <front>
    <title>Domain names - concepts and facilities</title>
    <author initials='P.V.' surname='Mockapetris' fullname='P.V. Mockapetris'><organization /></author>
    <date year='1987' month='November' />
    </front>
    <seriesInfo name='STD' value='13'/>
    <seriesInfo name='RFC' value='1034'/>
    <seriesInfo name='DOI' value='10.17487/RFC1034'/>
    <format type='ASCII' octets='129180'/>
    </reference>


    <reference  anchor='RFC2119' target='http://www.rfc-editor.org/info/rfc2119'>
    <front>
    <title>Key words for use in RFCs to Indicate Requirement Levels</title>
    <author initials='S.' surname='Bradner' fullname='S. Bradner'><organization /></author>
    <date year='1997' month='March' />
    </front>
    <seriesInfo name='BCP' value='14'/>
    <seriesInfo name='RFC' value='2119'/>
    <seriesInfo name='DOI' value='10.17487/RFC2119'/>
    <format type='ASCII' octets='4723'/>
    </reference>

    <reference  anchor='RFC3966' target='http://www.rfc-editor.org/info/rfc3966'>
    <front>
    <title>The tel URI for Telephone Numbers</title>
    <author initials='H.' surname='Schulzrinne' fullname='H. Schulzrinne'><organization /></author>
    <date year='2004' month='December' />
    </front>
    <seriesInfo name='RFC' value='3966'/>
    <seriesInfo name='DOI' value='10.17487/RFC3966'/>
    <format type='ASCII' octets='40783'/>
    </reference>


    <reference  anchor='RFC3986' target='http://www.rfc-editor.org/info/rfc3986'>
    <front>
    <title>Uniform Resource Identifier (URI): Generic Syntax</title>
    <author initials='T.' surname='Berners-Lee' fullname='T. Berners-Lee'><organization /></author>
    <author initials='R.' surname='Fielding' fullname='R. Fielding'><organization /></author>
    <author initials='L.' surname='Masinter' fullname='L. Masinter'><organization /></author>
    <date year='2005' month='January' />
    </front>
    <seriesInfo name='STD' value='66'/>
    <seriesInfo name='RFC' value='3986'/>
    <seriesInfo name='DOI' value='10.17487/RFC3986'/>
    <format type='ASCII' octets='141811'/>
    </reference>


    <reference  anchor='RFC6116' target='http://www.rfc-editor.org/info/rfc6116'>
    <front>
    <title>The E.164 to Uniform Resource Identifiers (URI) Dynamic Delegation Discovery System (DDDS) Application (ENUM)</title>
    <author initials='S.' surname='Bradner' fullname='S. Bradner'><organization /></author>
    <author initials='L.' surname='Conroy' fullname='L. Conroy'><organization /></author>
    <author initials='K.' surname='Fujiwara' fullname='K. Fujiwara'><organization /></author>
    <date year='2011' month='March' />
    </front>
    <seriesInfo name='RFC' value='6116'/>
    <seriesInfo name='DOI' value='10.17487/RFC6116'/>
    <format type='ASCII' octets='52840'/>
    </reference>


    <reference  anchor='RFC6117' target='http://www.rfc-editor.org/info/rfc6117'>
    <front>
    <title>IANA Registration of Enumservices: Guide, Template, and IANA Considerations</title>
    <author initials='B.' surname='Hoeneisen' fullname='B. Hoeneisen'><organization /></author>
    <author initials='A.' surname='Mayrhofer' fullname='A. Mayrhofer'><organization /></author>
    <author initials='J.' surname='Livingood' fullname='J. Livingood'><organization /></author>
    <date year='2011' month='March' />
    </front>
    <seriesInfo name='RFC' value='6117'/>
    <seriesInfo name='DOI' value='10.17487/RFC6117'/>
    <format type='ASCII' octets='83838'/>
    </reference>


    <reference  anchor='RFC6118' target='http://www.rfc-editor.org/info/rfc6118'>
    <front>
    <title>Update of Legacy IANA Registrations of Enumservices</title>
    <author initials='B.' surname='Hoeneisen' fullname='B. Hoeneisen'><organization /></author>
    <author initials='A.' surname='Mayrhofer' fullname='A. Mayrhofer'><organization /></author>
    <date year='2011' month='March' />
    </front>
    <seriesInfo name='RFC' value='6118'/>
    <seriesInfo name='DOI' value='10.17487/RFC6118'/>
    <format type='ASCII' octets='115372'/>
    </reference>

</references>

    <references title="Informative References">

      <reference anchor="OMA-SNeW" target="http://technical.openmobilealliance.org/Technical/release_program/snew_v1_0.aspx">
        <front>
          <title>Social Network Web Enabler</title>
          <author>
            <organization>Open Mobile Alliance, OMA-ER-SNeW-V1_0</organization>
          </author>
          <date month="August" year="2013"/>
        </front>
      </reference>
    </references>

    <section anchor="acknowledgement" numbered="no" 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>

  </back>
</rfc>
