Geopriv J. Winterbottom
Internet-Draft M. Thomson
Intended status: Standards Track Andrew Corporation
Expires: February 27, 2010 H. Tschofenig
Nokia Siemens Networks
R. Barnes
BBN Technologies
August 26, 2009
Use of Device Identity in HTTP-Enabled Location Delivery (HELD)
draft-winterbottom-geopriv-held-identity-extensions-10
Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on February 27, 2010.
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.
Winterbottom, et al. Expires February 27, 2010 [Page 1]
Internet-Draft HELD Identity August 2009
Abstract
When a Location Information Server receives a request for location
information (using the locationRequest message), described in the
base HTTP Enabled Location Delivery (HELD) specification, it uses the
source IP address of arriving message as a pointer to the location
determination process. This is sufficient in environments where the
location of a Device can be determined based on its IP address.
Two additional use cases are addresses by this document. In the
first, location configuration requires additional or alternative
identifiers from the source IP address provided in the request. In
the second, an entity other than the Device requests the location of
the Device.
This document extends the HELD protocol to allow the location request
message to carry Device identifiers. Privacy and security
considerations describe the conditions where requests containing
identifiers are permitted.
Winterbottom, et al. Expires February 27, 2010 [Page 2]
Internet-Draft HELD Identity August 2009
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1. Applications . . . . . . . . . . . . . . . . . . . . . . . 4
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 6
3. Device Identity . . . . . . . . . . . . . . . . . . . . . . . 7
3.1. Identifier Suitability . . . . . . . . . . . . . . . . . . 7
3.1.1. Subjective Network Views . . . . . . . . . . . . . . . 7
3.1.2. Transient Identifiers . . . . . . . . . . . . . . . . 8
3.2. Identifier Format and Protocol Details . . . . . . . . . . 9
3.3. Identifiers . . . . . . . . . . . . . . . . . . . . . . . 10
3.3.1. IP Address . . . . . . . . . . . . . . . . . . . . . . 10
3.3.2. MAC Address . . . . . . . . . . . . . . . . . . . . . 10
3.3.3. TCP or UDP Port Number . . . . . . . . . . . . . . . . 11
3.3.4. Network Access Identifier . . . . . . . . . . . . . . 11
3.3.5. URI . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3.6. Hostname . . . . . . . . . . . . . . . . . . . . . . . 12
3.3.7. Directory Number . . . . . . . . . . . . . . . . . . . 12
3.3.8. Cellular Telephony Identifiers . . . . . . . . . . . . 12
3.3.9. DHCP Unique Identifier . . . . . . . . . . . . . . . . 13
4. XML Schema . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5. Privacy Considerations . . . . . . . . . . . . . . . . . . . . 17
6. Security Considerations . . . . . . . . . . . . . . . . . . . 19
6.1. Identifier Suitability . . . . . . . . . . . . . . . . . . 19
6.2. Location Configuration Protocol Requests . . . . . . . . . 19
6.3. Third Party Requests . . . . . . . . . . . . . . . . . . . 20
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 21
7.1. URN Sub-Namespace Registration for
urn:ietf:params:xml:ns:geopriv:held:id . . . . . . . . . . 21
7.2. XML Schema Registration . . . . . . . . . . . . . . . . . 21
7.3. Registration of HELD 'badIdentifier' Error Code . . . . . 22
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 23
9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 24
9.1. Normative references . . . . . . . . . . . . . . . . . . . 24
9.2. Informative references . . . . . . . . . . . . . . . . . . 24
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 26
Winterbottom, et al. Expires February 27, 2010 [Page 3]
Internet-Draft HELD Identity August 2009
1. Introduction
Protocols for requesting and providing location information require a
way for the requestor to specify the location that should be
returned. In a location configuration protocol (LCP), the location
being requested is the requestor's location. This fact can make the
problem of identifying the Device simpler for LCPs, since IP
datagrams that carry the request already carry an identifier for the
Device, namely the source IP address of an incoming request.
Existing LCPs, such as HELD [I-D.ietf-geopriv-http-location-delivery]
and DHCP ([RFC3825], [RFC4776]) rely on the source IP address or
other information present in protocol datagrams to identify a Device.
Aside from the datagrams that form a request, a location information
server (LIS) does not necessarily have access to information that
could further identify the Device. In some circumstances, as shown
in [I-D.ietf-geopriv-l7-lcp-ps], additional identification
information can be included in a request to identify a Device.
This document extends the HELD protocol to support the inclusion of
additional identifiers for the Device in HELD location requests. An
XML schema is defined that provides a structure for including these
identifiers in HELD requests.
An important characteristic of this addition to the HELD protocol is
that it also expands the potential scope of HELD beyond that of an
LCP. The scope of an LCP is limited to the interaction between a
Device and a LIS. That is, an LCP is limited to the Device
retrieving information about their own location. With this addition,
authorized third party location recipients (LRs) are able to make
requests that include identifiers to retrieve location information
about a particular Device.
The usage of HELD for purposes beyond the Device-LIS interaction
obviously introduces a new set of privacy concerns. In an LCP, the
requester is implicitly authorized to access the requested location
information, because it is their own location. In contrast, a third
party LR must be explicitly authorized when requesting the location
of a Device. Establishing appropriate authorization and other
related privacy concerns are discussed in Section 5.
1.1. Applications
The use of additional identifiers in HELD falls into two categories.
A Device can use these parameters to provide additional
identification information to a LIS. Identification information,
such as the MAC address of the interface card of a Target, can be
used to reduce the time required to determine the location by a LIS.
Winterbottom, et al. Expires February 27, 2010 [Page 4]
Internet-Draft HELD Identity August 2009
In other cases, a LIS might require Device identification before any
location information can be generated.
A third party LR can be granted authorization to make requests for a
given Device. In particular, network services can be permitted to
retrieve location for a Device that is unable to acquire location
information for itself (see Section 6.3 of
[I-D.ietf-ecrit-phonebcp]). This allows use of location-dependent
applications - particularly essential services like emergency calling
- where Devices do not support a location configuration protocol
(LCP) or they are unable to successfully retrieve location
information.
Winterbottom, et al. Expires February 27, 2010 [Page 5]
Internet-Draft HELD Identity August 2009
2. Terminology
This document uses the term Location Information Server (LIS) and
location configuration protocol (LCP) as described in
[I-D.ietf-geopriv-l7-lcp-ps].
The term Device is used specifically as the subject of an LCP,
consistent with [I-D.ietf-geopriv-http-location-delivery]. This
document also uses the term Target to refer to any entity that might
be a subject of the same location information. Target is used in a
more general sense, including the Device, but also any nearby entity,
such as the user of a Device. A Target has a stake in setting
authorization policy on the use of location information. Both Device
and Target are defined in [RFC3693].
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 [RFC2119].
Winterbottom, et al. Expires February 27, 2010 [Page 6]
Internet-Draft HELD Identity August 2009
3. Device Identity
Identifiers are used as the starting point in location determination.
They should not be confused with measurement information
([I-D.thomson-geopriv-held-measurements]). Measurement information
is information about a Device and the time varying details of its
network attachment. Identifiers might be associated with a different
Device over time, but the their purpose is to identify the Device,
not to describe its environment or network attachment.
3.1. Identifier Suitability
Use of any identifier MUST only be allowed if it identifies a single
Device at a particular time. In some circumstances, certain of these
identifiers are either temporary or could potentially identify
multiple devices. Identifiers that are transient or ambiguous could
be exploited by an attacker to either gain information about another
device or to coerce the LIS into producing misleading information.
The identifiers described in this section MUST only be used where
that identifier is used as the basis for location determination.
Considerations relating to the use of identifiers for a Device
requesting its own location are discussed in Section 5 of
[I-D.ietf-geopriv-l7-lcp-ps]; this section discusses use of
identifiers for authorized third party requests.
It is tempting for a LIS implementation to allow alternative
identifiers for convenience or some other perceived benefit.
However, care needs to be taken to ensure that the binding between
the indicated identifier and the identifier that is used for
location determination is unique and not subject to attacks.
Identifiers can have a different meaning to different entities on a
network. An identifier in one network context might have a
completely different meaning in a different context. Errors in
perspective arise in both topology (all network entities have a
subjective view of the network) and time (the network changes over
time).
3.1.1. Subjective Network Views
Subjective views of the network mean that the identifier a requests
uses to refer to one physical entity could actually apply to a
different physical entity when used in a different network context.
Unless an authorized third party requester and LIS operate in the
same network context, each could have a different subjective view of
the meaning of the identifier.
Winterbottom, et al. Expires February 27, 2010 [Page 7]
Internet-Draft HELD Identity August 2009
In this case, the third party receives information that is correct
only within the network context of the LIS. The location information
provided by the LIS is probably misleading: the requester believes
that the information relates to a different entity than it was
generated for.
In IP networks, network address translation (NAT) and other forms
of address modification create network contexts. Entities on
either side of the point where modification occurs have a
different view of the network. Private use addresses [RFC1918]
are the most easily recognizable identifiers that have limited
scope.
A LIS can be configured to recognize scenarios where the subjective
view of a requester might not coincide with the view of the LIS. The
LIS can either provide location information that takes the view of
the requester into account, or it can reject the request.
For instance, a LIS might operate within a network that uses a
private address space, with NAT between that network and other
networks. A third party request that originates in an external
network with an IP address from the private address space might
not be valid - it could be identifying an entity within another
address space. The LIS can be configured to reject such requests,
unless it knows by other means that the request is valid.
In the same example, the requester might include an address from
the external space in an attempt to identify a host within the
network. The LIS could use knowledge about how the external
address is mapped to a private address, if that mapping is fixed,
to determine an appropriate response.
The residential gateway scenario in Section 3.1 of
[I-D.ietf-geopriv-l7-lcp-ps] is a particular example of where a
subjective view is permitted. The LIS knowingly provides Devices on
the remote side of the residential gateway with location information,
in spite of the ambiguity. The LIS provides location information
with appropriate uncertainty to allow for the fact that the
residential gateway serves a small geographical area.
3.1.2. Transient Identifiers
Some identifiers are temporary and can, over the course of time, be
assigned to different physical entities. An identifier that is
reassigned between the time that a request is formulated by a
requester and when the request is received by the LIS causes the LIS
to locate a different entity than the requester intended. The
response from the LIS might be accurate, but the request incorrectly
Winterbottom, et al. Expires February 27, 2010 [Page 8]
Internet-Draft HELD Identity August 2009
associates this information with the wrong subject.
A LIS should be configured with information about any potentially
temporary identifiers. It can use this information to identify when
changes have occurred. A LIS must not provide location information
if the identifier it uses might refer to a different Device. If an
identifier might have been reassigned recently, or it is likely to be
reassigned, it is not suitable as an identifier.
It's possible that some degree of uncertainty could persist where
identifiers are reassigned frequently; the extent to which errors
arising from using transient identifiers are tolerated is a matter
for local policy.
3.2. Identifier Format and Protocol Details
XML elements are used to express the Device identity. The "target"
element is used as a general container for identity information.
This document defines a basic set of identifiers. An example HELD
request, shown in Figure 1, includes an IP version 4 address.
See RFCXXXX.
END 7.2. XML Schema Registration This section registers an XML schema as per the guidelines in [RFC3688]. Winterbottom, et al. Expires February 27, 2010 [Page 21] Internet-Draft HELD Identity August 2009 URI: urn:ietf:params:xml:schema:geopriv:held:id Registrant Contact: IETF, GEOPRIV working group, (geopriv@ietf.org), James Winterbottom (james.winterbottom@andrew.com). Schema: The XML for this schema can be found as the entirety of Section 4 of this document. 7.3. Registration of HELD 'badIdentifier' Error Code This section registers the "badIdentifier" error code in the "Geopriv HELD Registries, Error codes for HELD" IANA registry. badIdentifier This error code indicates that the Device identifiers used in the HELD request were either: not supported by the LIS, badly formatted, or that the requester was not authorized to make a erquest for that identifier. Winterbottom, et al. Expires February 27, 2010 [Page 22] Internet-Draft HELD Identity August 2009 8. Acknowledgements The authors wish to thank the NENA VoIP location working group for their assistance in the definition of the schema used in this document. Special thanks go to Barbara Stark, Guy Caron, Nadine Abbott, Jerome Grenier and Martin Dawson. Bob Sherry provided input on use of URIs. Thanks to Adam Muhlbauer and Eddy Corbett for providing further corrections. Bernard Aboba provided extensive feedback on use cases and the security model; Bernard, along with Alan DeKok, also helped resolve an issue with NAIs. Ray Bellis provided motivation for the protocol port parameters. Winterbottom, et al. Expires February 27, 2010 [Page 23] Internet-Draft HELD Identity August 2009 9. References 9.1. Normative references [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., and M. Carney, "Dynamic Host Configuration Protocol for IPv6 (DHCPv6)", RFC 3315, July 2003. [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, January 2004. [RFC4282] Aboba, B., Beadles, M., Arkko, J., and P. Eronen, "The Network Access Identifier", RFC 4282, December 2005. [RFC4361] Lemon, T. and B. Sommerfeld, "Node-specific Client Identifiers for Dynamic Host Configuration Protocol Version Four (DHCPv4)", RFC 4361, February 2006. [I-D.ietf-geopriv-http-location-delivery] Barnes, M., Winterbottom, J., Thomson, M., and B. Stark, "HTTP Enabled Location Delivery (HELD)", draft-ietf-geopriv-http-location-delivery-15 (work in progress), June 2009. [I-D.ietf-geopriv-l7-lcp-ps] Tschofenig, H. and H. Schulzrinne, "GEOPRIV Layer 7 Location Configuration Protocol; Problem Statement and Requirements", draft-ietf-geopriv-l7-lcp-ps-10 (work in progress), July 2009. [W3C.REC-xml-names11-20060816] Hollander, D., Tobin, R., Layman, A., and T. Bray, "Namespaces in XML 1.1 (Second Edition)", World Wide Web Consortium Recommendation REC-xml-names11-20060816, August 2006,