draft-ietf-geopriv-radius-lo-10.txt   draft-ietf-geopriv-radius-lo-11.txt 
GEOPRIV H. Tschofenig GEOPRIV H. Tschofenig
Internet-Draft Siemens Internet-Draft Nokia Siemens Networks
Intended status: Standards Track F. Adrangi Intended status: Standards Track F. Adrangi
Expires: March 31, 2007 Intel Expires: December 11, 2007 Intel
M. Jones M. Jones
A. Lior A. Lior
Bridgewater Bridgewater
September 27, 2006 June 9, 2007
Carrying Location Objects in RADIUS Carrying Location Objects in the Remote Authentication Dial In User
draft-ietf-geopriv-radius-lo-10.txt Service (RADIUS) Protocol
draft-ietf-geopriv-radius-lo-11.txt
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
skipping to change at page 1, line 38 skipping to change at page 1, line 39
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on March 31, 2007. This Internet-Draft will expire on December 11, 2007.
Copyright Notice Copyright Notice
Copyright (C) The Internet Society (2006). Copyright (C) The IETF Trust (2007).
Abstract Abstract
This document describes RADIUS attributes for conveying access This document describes Remote Authentication Dial In User Service
network ownership and location information based on a civic and (RADIUS) attributes for conveying access network ownership and
geospatial location format. location information based on a civic and geospatial location format.
The distribution of location information is a privacy sensitive task. The distribution of location information is a privacy sensitive task.
Dealing with mechanisms to preserve the user's privacy is important Dealing with mechanisms to preserve the user's privacy is important
and addressed in this document. and addressed in this document.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5
3. Delivery Methods for Location Information . . . . . . . . . . 6 3. Delivery Methods for Location Information . . . . . . . . . . 6
3.1. Authentication/Authorization Phase Delivery . . . . . . . 6 3.1. Location Delivery based on Out-of-Band Agreements . . . . 6
3.2. Mid-session Authorization . . . . . . . . . . . . . . . . 9 3.2. Location Delivery based on Initial Request . . . . . . . . 7
4. Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.3. Location Delivery based on Mid-Session Request . . . . . . 9
4.1. Scenario 1 - Use of Location Information in AAA . . . . . 11 3.4. Location Delivery in Accounting Messages . . . . . . . . . 10
4.2. Scenario 2 - Use of Location Information for Other 4. Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Services . . . . . . . . . . . . . . . . . . . . . . . . . 12 4.1. Operator-Name Attribute . . . . . . . . . . . . . . . . . 12
5. Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . 13 4.2. Location-Information Attribute . . . . . . . . . . . . . . 15
5.1. Operator-Name Attribute . . . . . . . . . . . . . . . . . 13 4.3. Location Data Attribute . . . . . . . . . . . . . . . . . 17
5.2. Location-Information Attribute . . . . . . . . . . . . . . 16 4.3.1. Civic Location Profile . . . . . . . . . . . . . . . . 18
5.3. Location-Info-Civic Attribute . . . . . . . . . . . . . . 18 4.3.2. Geospatial Location Profile . . . . . . . . . . . . . 19
5.4. Location-Info-Geo Attribute . . . . . . . . . . . . . . . 19 4.4. Basic Policy Rules Attribute . . . . . . . . . . . . . . . 19
5.5. Basic Policy Rules Attribute . . . . . . . . . . . . . . . 21 4.5. Extended Policy Rules Attribute . . . . . . . . . . . . . 22
5.6. Extended Policy Rules Attribute . . . . . . . . . . . . . 25 4.6. Challenge-Capable Attribute . . . . . . . . . . . . . . . 23
5.7. Challenge-Capable Attribute . . . . . . . . . . . . . . . 26 4.7. Requested-Info Attribute . . . . . . . . . . . . . . . . . 24
5.8. Requested-Info Attribute . . . . . . . . . . . . . . . . . 26 5. Table of Attributes . . . . . . . . . . . . . . . . . . . . . 30
6. Table of Attributes . . . . . . . . . . . . . . . . . . . . . 32 6. Diameter RADIUS Interoperability . . . . . . . . . . . . . . . 31
7. Diameter RADIUS Interoperability . . . . . . . . . . . . . . . 33 7. Security Considerations . . . . . . . . . . . . . . . . . . . 32
8. Matching with Geopriv Requirements . . . . . . . . . . . . . . 34 7.1. Communication Security . . . . . . . . . . . . . . . . . . 32
8.1. Distribution of Location Information at the User's 7.2. Privacy Considerations . . . . . . . . . . . . . . . . . . 33
Home Network . . . . . . . . . . . . . . . . . . . . . . . 34 7.2.1. RADIUS Client . . . . . . . . . . . . . . . . . . . . 34
8.2. Distribution of Location Information at the Visited 7.2.2. RADIUS Server . . . . . . . . . . . . . . . . . . . . 35
Network . . . . . . . . . . . . . . . . . . . . . . . . . 35 7.2.3. RADIUS Broker . . . . . . . . . . . . . . . . . . . . 35
8.3. Requirements matching . . . . . . . . . . . . . . . . . . 36 7.3. Identity Information and Location Information . . . . . . 36
9. Privacy Considerations . . . . . . . . . . . . . . . . . . . . 42 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 38
9.1. Entity in the visited network . . . . . . . . . . . . . . 42 8.1. New Registry: Operator Namespace Identifier . . . . . . . 38
9.2. Entity in the home network . . . . . . . . . . . . . . . . 43 8.2. New Registry: Location Profiles . . . . . . . . . . . . . 39
10. Security Considerations . . . . . . . . . . . . . . . . . . . 46 8.3. New Registry: Challenge Capable Attribute . . . . . . . . 40
11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 49 8.4. New Registry: Entity Types . . . . . . . . . . . . . . . . 40
11.1. New Registry: Operator Namespace Identifier . . . . . . . 49 8.5. New Registry: Privacy Flags . . . . . . . . . . . . . . . 41
11.2. New Registry: Requested-Info Attribute . . . . . . . . . . 50 8.6. New Registry: Requested-Info Attribute . . . . . . . . . . 41
12. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 52 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 43
13. References . . . . . . . . . . . . . . . . . . . . . . . . . . 54 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 44
13.1. Normative References . . . . . . . . . . . . . . . . . . . 54 10.1. Normative References . . . . . . . . . . . . . . . . . . . 44
13.2. Informative References . . . . . . . . . . . . . . . . . . 54 10.2. Informative References . . . . . . . . . . . . . . . . . . 44
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 57 Appendix A. Matching with Geopriv Requirements . . . . . . . . . 47
Intellectual Property and Copyright Statements . . . . . . . . . . 58 A.1. Distribution of Location Information at the User's
Home Network . . . . . . . . . . . . . . . . . . . . . . . 47
A.2. Distribution of Location Information at the Visited
Network . . . . . . . . . . . . . . . . . . . . . . . . . 48
A.3. Requirements matching . . . . . . . . . . . . . . . . . . 49
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 55
Intellectual Property and Copyright Statements . . . . . . . . . . 56
1. Introduction 1. Introduction
Wireless LAN (WLAN) access networks are being deployed in public Wireless LAN (WLAN) access networks are being deployed in public
places such as airports, hotels, shopping malls, and coffee shops by places such as airports, hotels, shopping malls, and coffee shops by
a diverse set of operators such as cellular network operators (GSM a diverse set of operators such as cellular network operators,
and CDMA), Wireless Internet Service Providers (WISPs), and fixed Wireless Internet Service Providers (WISPs), and fixed broadband
broadband operators. operators. Note that the proposed attributes are applicable for all
sorts of wireless and wired networks whenever operator network
When a user executes the network access authentication procedure to ownership and location information has to be conveyed to the RADIUS
such a network, information about the location and ownership of this server.
network needs to be conveyed to the user's home network to which the
user has a contractual relationship. The main intent of this
document is to enable location aware billing (e.g., by determining
the appropriate tariff and taxation in dependence of the location of
the access network and the end host), location aware subscriber
authentication and authorization for roaming environments and to
enable other location aware services.
This document describes AAA attributes, which are used by a AAA In the case when the home network needs to know the location of the
client or a AAA proxy in an access network, to convey location- user then, when a user executes the network access authentication
related information to the user's home AAA server. procedure, information about the location and ownership of the
visited network needs to be conveyed to the user's home network. The
main intent of this document is to enable location aware billing
(e.g., by determining the appropriate tariff and taxation in
dependence of the location of the access network and the end host),
location aware subscriber authentication and authorization for
roaming environments and to enable other location aware services.
Although the proposed attributes in this draft are intended for This document describes RADIUS attributes, which are added by a
wireless LAN deployments, they can also be used in other types of RADIUS client or a RADIUS proxy, to convey location-related
wireless and wired networks whenever location information is information to the RADIUS server in Access-Request packets, or
required. additionally, within Accounting-Request packets.
Location information needs to be protected against unauthorized Location information needs to be protected against unauthorized
access and distribution to preserve the user's privacy. [10] defines access and distribution to preserve the user's privacy. [9] defines
requirements for a protocol-independent model for the access to requirements for a protocol-independent model for the access to
geographic location information. The model includes a Location geographic location information. The model includes a Location
Generator (LG) that creates location information, a Location Server Generator (LG) that creates location information, a Location Server
(LS) that authorizes access to location information, a Location (LS) that authorizes access to location information, a Location
Recipient (LR) that requests and receives information, and a Rule Recipient (LR) that requests and receives information, and a Rule
Maker (RM) that provides authorization policies to the LS which Maker (RM) that provides authorization policies to the LS which
enforces access control policies on requests to location information. enforces access control policies on requests to location information.
In Appendix A the requirements for a GEOPRIV Using Protocol are
compared to the functionality provided by this document.
2. Terminology 2. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [1]. document are to be interpreted as described in [1].
RADIUS specific terminology is borrowed from [2] and [3]. RADIUS specific terminology is borrowed from [2] and [10].
Terminology related to privacy issues, location information and Terminology related to privacy issues, location information and
authorization policy rules is taken from [10]. authorization policy rules is taken from [9].
Based on today's protocols we assume that the location information is
provided by the access network where the end host is attached. As
part of the network attachment authentication to the AAA server
location information is sent from the AAA client to the AAA server.
The authenticated identity might refer to a user, a device or
something else. Although there might often be a user associated with
the authentication process (either directly or indirectly; indirectly
when a binding between a device and a user exists) there is no
assurance that a particular real-world entity (such as a person)
triggered this process. Since location based authorization is
executed based on the network access authentication of a particular
"user" it might be reasonable to talk about user's privacy within
this document even though scenarios exist where this might not apply
(and device or network privacy might be the better term).
Furthermore, the authors believe that there is a relationship between
the NAS (or other nodes in the access network) and the location of
the entity that triggered the network access authentication, such as
the user. The NAS might in many cases know the location of the end
host through various techniques (e.g., wire databases, wireless
triangulation). Knowing the location of a network (where the user or
end host is attached) might in many networks also reveal enough
information about the location of the user or the end host. A
similar assumption is also made with regard to the location
information obtained via DHCP (see for example [4]). This
information might be used by applications in other protocols (such as
SIP [11] with extensions [12]) to indicate the location of a
particular user even though the location "only" refers to the
location of the network or equipment within the network. This
assumption might not hold in all scenarios but seems to be reasonable
and practicable.
Please note that the authors use the terms end host and user
interchangably.
3. Delivery Methods for Location Information 3. Delivery Methods for Location Information
Location Objects, which consist of location information and privacy The following exchanges show how location information is conveyed in
rules, are transported via the RADIUS protocol from the AAA client to RADIUS. Note that the description of the individual scenarios
the AAA server. A few attributes are introduced for this purpose, as assumes that privacy policies allow the location being distributed.
listed in Section 5, whereby delivery to the RADIUS server can happen A discussion about the privacy treatment is provided in Section 7.2.
during the authentication/authorization phase (described in
Section 3.1), or in the mid-session using the dynamic authorization
protocol framework (described in Section 3.2). This section
describes messages flows for both delivery methods.
3.1. Authentication/Authorization Phase Delivery 3.1. Location Delivery based on Out-of-Band Agreements
Figure 1 shows an example message flow for delivering location Figure 1 shows an example message flow for delivering location
information during the network access authentication and information during the network access authentication and
authorization procedure. Upon a network authentication request from authorization procedure. Upon a network authentication request from
an access network client, the NAS submits a RADIUS Access-Request an access network client, the Network Access Server (NAS) submits a
message that contains location information attributes among other RADIUS Access-Request message that contains location information
required attributes. These attributes are added based on various attributes among other required attributes. In this scenario
criteria (such as local policy, business relationship with location information is attached to the Access-Request message
subscriber's home network provider and in case of location without an explicit request from the RADIUS server. Note that such
information also by considering privacy policies). an approach with a prior agreement between the RADIUS client and the
RADIUS server is only applicable in certain environments. For
example, in deployment environments where the RADIUS client and the
RADIUS server belong to the same organizational entity.
+---------+ +---------+ +---------+ +---------+ +---------+ +---------+
| Network | | Network | | AAA | | | | Network | | RADIUS |
| Access | | Access | | Server | | User | | Access | | Server |
| Client | | Server | | | | | | Server | | |
+---------+ +---------+ +---------+ +---------+ +---------+ +---------+
| | | | | |
| Authentication phase | | | Authentication phase | |
| begin | | | begin | |
|---------------------->| | |---------------------->| |
| | | | | |
| | RADIUS | | | RADIUS |
| | Access-Request | | | Access-Request |
| | + Location-Information | | | + Location-Information |
| | + Location-Data |
| | + Basic-Policy-Rules |
| | + Operator-Name |
| |----------------------------->| | |----------------------------->|
| | | | | |
| | RADIUS | | | RADIUS |
| | Access-Accept | | | Access-Accept |
| |<-----------------------------| | |<-----------------------------|
| Authentication | | | Authentication | |
| Success | | | Success | |
|<----------------------| | |<----------------------| |
| | | | | |
| | RADIUS |
| | Accounting-Request |
| | + Location-Information |
| |----------------------------->|
| | |
Figure 1: Location Delivery based on out-of-band Agreements Figure 1: Location Delivery based on out-of-band Agreements
3.2. Location Delivery based on Initial Request
If no location information is provided by the RADIUS client although If no location information is provided by the RADIUS client although
it is needed by the RADIUS server to compute the authorization it is needed by the RADIUS server to compute the authorization
decision then the RADIUS server challenges the RADIUS client. This decision then the RADIUS server challenges the RADIUS client. This
exchange is shown in Figure 2. The Access-Challenge thereby provides exchange is shown in Figure 2. In the initial Access-Request message
a hint to the Network Access Server regarding the type of location from the NAS to the RADIUS server the Challenge-Capable attribute is
information attributes that are desired. In the shown message flow attached to indicate that the NAS understands the Access-Challenge
message. The subsequent Access-Challenge message sent from the
RADIUS server to the NAS provides a hint regarding the type of
desired location information attributes. In the shown message flow
these attributes are then provided in the subsequent Access-Request these attributes are then provided in the subsequent Access-Request
message. When receiving this Access-Request message the message. When receiving this Access-Request message the
authorization procedure at the RADIUS server might be based on a authorization procedure at the RADIUS server might be based on a
number of criteria, including the newly defined attributes listed in number of criteria, including the newly defined attributes listed in
Section 5. Section 4.
+---------+ +---------+ +---------+ +---------+ +---------+ +---------+
| Network | | Network | | AAA | | | | Network | | RADIUS |
| Access | | Access | | Server | | User | | Access | | Server |
| Client | | Server | | | | | | Server | | |
+---------+ +---------+ +---------+ +---------+ +---------+ +---------+
| | | | | |
| Authentication phase | | | Authentication phase | |
| begin | | | begin | |
|---------------------->| | |---------------------->| |
| | | | | |
| | RADIUS | | | RADIUS |
| | Access-Request | | | Access-Request |
| | + Challenge-Capable | | | + Challenge-Capable |
| |----------------------------->| | |----------------------------->|
| | | | | |
| | RADIUS | | | RADIUS |
| | Access-Challenge | | | Access-Challenge |
| | + Rule set Information | | | + Basic-Policy-Rules |
| | + Extended-Policy-Rules |
| | + Requested-Info | | | + Requested-Info |
| |<-----------------------------| | |<-----------------------------|
| | | | | |
| | RADIUS | | | RADIUS |
| | Access-Request | | | Access-Request |
| | + Location-Information | | | + Location-Information |
| | + Location-Data |
| | + Basic-Policy-Rules |
| | + Extended-Policy-Rules |
| |----------------------------->| | |----------------------------->|
| | | | | |
: : : : : :
: Multiple Protocol Exchanges to perform : : Multiple Protocol Exchanges to perform :
: Authentication, Key Exchange and Authorization : : Authentication, Key Exchange and Authorization :
: ...continued... : : ...continued... :
: : : : : :
| | | | | |
| | RADIUS | | | RADIUS |
| | Access-Accept | | | Access-Accept |
| | + Requested-Info |
| |<-----------------------------| | |<-----------------------------|
| Authentication | | | Authentication | |
| Success | | | Success | |
|<----------------------| | |<----------------------| |
| | | | | |
| | RADIUS |
| | Accounting-Request |
| | + Location-Information |
| |----------------------------->|
| | |
Figure 2: Location Delivery based on Request Figure 2: Location Delivery based on Initial Request
If the AAA server needs to obtain location information also in
accounting messages then it needs to include a Requested-Info
attribute to the Access-Accept to express that is desired (if privacy
policy allow it) and the Network Access Server SHOULD then include
location information to the RADIUS accounting messages .
3.2. Mid-session Authorization 3.3. Location Delivery based on Mid-Session Request
The mid-session delivery method uses the Change of Authorization The demand mid-session location delivery method utilizes the Change
(COA) message as defined in [5]. At anytime during the session the of Authorization (COA) message, as defined in [3]. At anytime during
RADIUS server MAY send a COA message containing session the session the RADIUS server MAY send a COA message containing
identification attributes and a Requested-Info attribute attribute to session identification attributes to the RADIUS client. The COA
the AAA client if authorization policies allow it. The COA message message MAY instruct the RADIUS client to generate an Authorize-Only
MAY instruct the RADIUS client to generate an Authorize-Only Access- Access-Request (Access-Request with Service-Type set to "Authorize-
Request (Access-Request with Service-Type set to "Authorize-Only") in Only") in which case the RADIUS client MUST include location
which case the RADIUS client includes location information in this information in this Access-Request if it did so on a previous Access-
Access-Request if policies allow it. Request so that the RADIUS server can authorize based on location
information.
Figure 3 shows the approach graphically. Figure 3 shows the approach graphically.
+---------+ +---------+ +---------+ +---------+
| AAA | | AAA | | Network | | RADIUS |
| Client | | Server | | Access | | Server |
| (NAS) | | | | Server | | |
+---------+ +---------+ +---------+ +---------+
| | | |
| COA + Service-Type "Authorize Only" | | COA + Service-Type "Authorize Only" |
| + Requested-Info |
|<----------------------------------------------| |<----------------------------------------------|
| | | |
| COA NAK + Service-Type "Authorize Only" | | COA NAK + Service-Type "Authorize Only" |
| + Error-Cause "Request Initiated" | | + Error-Cause "Request Initiated" |
|---------------------------------------------->| |---------------------------------------------->|
| | | |
| Access-Request + Service-Type "Authorize Only"| | Access-Request + Service-Type "Authorize Only"|
| + Location-Information | | + Location-Information |
| + Policy-Rules | | + Location-Data |
| + Basic-Policy-Rules |
| + Extended-Policy-Rules |
|---------------------------------------------->| |---------------------------------------------->|
| | | |
| Access-Accept | | Access-Accept |
|<----------------------------------------------| |<----------------------------------------------|
| | | |
Figure 3: Mid-session Authorization Figure 3: Location Delivery based on Mid-Session Request
Upon receiving the Access-Request message containing the Service-Type Upon receiving the Access-Request message containing the Service-Type
hint attribute with a value of Authorize-Only from the NAS, the hint attribute with a value of Authorize-Only from the NAS, the
RADIUS server responds with either an Access-Accept or an Access- RADIUS server responds with either an Access-Accept or an Access-
Reject message. Reject message.
Since location information can be sent in accounting records RFC 3576 [3] is needed when location information is requested on
(including accounting interim records), RFC 3576 [5] is only needed demand and location information cannot be obtained from accounting
for authorization changes. messages at all or not in a timely fashion.
4. Scenarios
In the following subsections we describe two scenarios for use of
location information. Location information may refer to the
(visited) network or to the end host. How the network obtains the
end hosts location information is out of the scope of this document.
There are two potential consumers of location information: the AAA
server and location-based services. The privacy implications of
these scenarios are described in Section 9.
4.1. Scenario 1 - Use of Location Information in AAA
The home network operator requires location information for
authorization and billing purposes. The operator may deny service if
location information is not available, or it may offer limited
service only. The NAS delivers location information to the home AAA
server.
The location of the AAA client and/or the end host is transferred
from the NAS to the RADIUS server (based on a pre-established
agreement or if the RADIUS server asks for it under consideration of
privacy policies). The NAS and intermediaries (if any) are not
allowed to use that information other than to forward it to the home
network.
The RADIUS server authenticates and authorizes the user requesting 3.4. Location Delivery in Accounting Messages
access to the network. If the user's location policies are available
to the RADIUS server, the RADIUS server MUST deliver those policies
in an Access Accept to the RADIUS client. This information MAY be
needed if intermediaries or other elements want to act as Location
Servers (see Section 4.2). If the NAS or intermediaries do not
receive policies from the RADIUS server (or the end host itself) then
they MUST NOT make any use of the location information other than
forwarding it to the user's home network.
Location Information may also be reported in accounting messages. Location Information may also be reported in accounting messages.
Accounting messages are generated when the session starts, stops and Accounting messages are generated when the session starts, when the
periodically. Accounting messages may also be generated when the session stops and periodically during the lifetime of the session.
user roams during handoff. This information may be needed by the Accounting messages may also be generated when the user roams during
billing system to calculate the user's bill. For example, there may handoff.
be different tariffs or tax rates applied based on the location.
Unless otherwise specified by authorization rules, location
information in the accounting stream MUST NOT be transmitted to third
parties.
Location information in the accounting stream MUST only be sent in Accounting information may be needed by the billing system to
the proxy chain to the home network (unless specified otherwise). calculate the user's bill. For example, there may be different
tariffs or tax rates applied based on the location.
4.2. Scenario 2 - Use of Location Information for Other Services If the RADIUS server needs to obtain location information in
accounting messages then it needs to include a Requested-Info
attribute to the Access-Accept message.
Location Servers are entities that receive the user's location Figure 4 shows the message exchange.
information and transmit it to other entities. In this second
scenario, Location Servers comprise also the NAS and the RADIUS
server. The RADIUS servers are in the home network, in the visited
network, or in broker networks.
Unless explicitly authorized by the user's location policy, location +---------+ +---------+ +---------+
information MUST NOT be transmitted to other parties outside the | | | Network | | RADIUS |
proxy chain between the NAS and the Home RADIUS server. | User | | Access | | Server |
| | | Server | | |
+---------+ +---------+ +---------+
| | |
| Authentication phase | |
| begin | |
|---------------------->| |
| | |
: : :
: Protocol Exchanges to perform :
: Authentication and Authorization :
: : :
| | |
| | RADIUS |
| | Access-Accept |
| | + Requested-Info |
| | + Basic-Policy-Rules |
| | + Extended-Policy-Rules |
| |<-----------------------------|
| Authentication | |
| Success | |
|<----------------------| |
| | |
| | RADIUS |
| | Accounting-Request |
| | + Location-Information |
| | + Location-Data |
| | + Basic-Policy-Rules |
| | + Extended-Policy-Rules |
| |----------------------------->|
| | |
| | RADIUS |
| | Accounting-Response |
| |<-----------------------------|
| | |
Upon authentication and authorization, the home RADIUS server MUST Figure 4: Location Delivery in Accounting Messages
transmit the ruleset (if available) in an Access-Accept. The RADIUS
client, intermediate proxies are allowed to share location
information if they received ruleset indicates that it is allowed.
5. Attributes 4. Attributes
5.1. Operator-Name Attribute 4.1. Operator-Name Attribute
This attribute carries the operator namespace identifier and the This attribute carries the operator namespace identifier and the
operator name. The operator name is combined with the namespace operator name. The operator name is combined with the namespace
identifier to uniquely identify the owner of an access network. The identifier to uniquely identify the owner of an access network. The
value of the Operator-Name is a non-NULL terminated string whose value of the Operator-Name is a non-NULL terminated string whose
length MUST NOT exceed 253 bytes. length MUST NOT exceed 253 bytes.
The Operator-Name attribute SHOULD be sent in Access-Request, and The Operator-Name attribute SHOULD be sent in Access-Request, and
Accounting-Request records where the Acc-Status-Type is set to Start, Accounting-Request messages where the Acc-Status-Type is set to
Interim, or Stop. Start, Interim, or Stop.
A summary of the Operator-Name attribute is shown below. A summary of the Operator-Name attribute is shown below.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Value ... | Type | Length | Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value (cont.) ... | Value (cont.) ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 15, line 5 skipping to change at page 14, line 4
Operator-Name: Operator-Name:
The text field of variable length contains an The text field of variable length contains an
Access Network Operator Name. Access Network Operator Name.
This field is a RADIUS base data type of Text. This field is a RADIUS base data type of Text.
Example: anyisp.example.com Example: anyisp.example.com
The Namespace ID field provides information about the operator The Namespace ID field provides information about the operator
namespace. This document defines four values for this attribute that namespace. This document defines four values for this attribute that
are listed below. Additional namespace identifiers MUST be are listed below. Additional namespace identifiers must be
registered with IANA (see Section 11.1 below) and MUST be associated registered with IANA (see Section 8.1) and must be associated with an
with an organization responsible for managing the namespace. organization responsible for managing the namespace.
Requests to IANA will be evaluated by Expert Review as described in
Section 11.1.
TADIG (0): TADIG (0):
This namespace can be used to indicate operator names based on This namespace can be used to indicate operator names based on
Transferred Account Data Interchange Group (TADIG) codes defined Transferred Account Data Interchange Group (TADIG) codes defined
in [13]. TADIG codes are assigned by the TADIG Working Group in [11]. TADIG codes are assigned by the TADIG Working Group
within the GSM Association. The TADIG Code consists of two within the GSM Association. The TADIG Code consists of two
fields, with a total length of five ASCII characters consisting of fields, with a total length of five ASCII characters consisting of
a three-character country code and a two-character aplhanumeric a three-character country code and a two-character alphanumeric
operator (or company) ID. operator (or company) ID.
REALM (1): REALM (1):
The REALM operator namespace can be used to indicate operator The REALM operator namespace can be used to indicate operator
names based on any registered domain name. Such names are names based on any registered domain name. Such names are
required to be unique and the rights to use a given realm name are required to be unique and the rights to use a given realm name are
obtained coincident with acquiring the rights to use a particular obtained coincident with acquiring the rights to use a particular
Fully Qualified Domain Name (FQDN). Fully Qualified Domain Name (FQDN).
E212 (2): E212 (2):
The E212 namespace can be used to indicate operator names based on The E212 namespace can be used to indicate operator names based on
the Mobile Country Code (MCC) and Mobile Network Code (MNC) the Mobile Country Code (MCC) and Mobile Network Code (MNC)
defined in [14]. The MCC/MCC values are assigned by the defined in [12]. The MCC/MCC values are assigned by the
Telecommunications Standardization Bureau (TSB) within the ITU-T Telecommunications Standardization Bureau (TSB) within the ITU-T
and designated administrators in different countries. The E212 and designated administrators in different countries. The E212
value consists of three ASCII digits containing the MCC, followed value consists of three ASCII digits containing the MCC, followed
by two or three ASCII digits containing the MNC. by two or three ASCII digits containing the MNC.
ICC (3): ICC (3):
The ICC namespace can be used to indicate operator names based on The ICC namespace can be used to indicate operator names based on
ITU Carrier Codes (ICC) defined in [15]. ICC values are assigned International Telecommunication Union (ITU) Carrier Codes (ICC)
by national regulatory authorities and are coordinated by the defined in [13]. ICC values are assigned by national regulatory
Telecommunication Standardization Bureau (TSB) within the ITU-T. authorities and are coordinated by the Telecommunication
When using the ICC namespace, the attribute consists of three Standardization Bureau (TSB) within the ITU Telecommunication
uppercase ASCII characters containing a three-letter alphabetic Standardization Sector (ITU-T). When using the ICC namespace, the
country code as defined in [16], followed by one to six uppercase attribute consists of three uppercase ASCII characters containing
alphanumeric ASCII characters containing the ICC itself. a three-letter alphabetic country code as defined in [14],
followed by one to six uppercase alphanumeric ASCII characters
containing the ICC itself.
5.2. Location-Information Attribute 4.2. Location-Information Attribute
The Location-Information attribute SHOULD be sent in Access-Request The Location-Information attribute MAY be sent in Access-Request and
and in Accounting-Request messages. For the Accounting-Request in Accounting-Request messages. For the Accounting-Request message
message the Acc-Status-Type may be set to Start, Interim or Stop. the Acc-Status-Type may be set to Start, Interim or Stop.
The Location-Information Attribute provides meta-data about the The Location-Information Attribute provides meta-data about the
location information, such as sighting time, time-to-live, mechanism location information, such as sighting time, time-to-live, location
that was used to determine the location information, etc. The format determination method, etc. Note that this attribute is largely
is shown below. treated as an opaque blob, like the Location-Data attribute to which
it refers.
The format is shown below.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Value ... | Type | Length | Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value (cont.) ... | Value (cont.) ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: Type:
skipping to change at page 17, line 4 skipping to change at page 16, line 7
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sighting Time ~ | Sighting Time ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sighting Time | | Sighting Time |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Time-to-Live ... | Time-to-Live ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Time-to-Live | | Time-to-Live |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Method ... | Method ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Index (16 bits): Index (16 bits):
The 16-bit unsigned integer value allows to associate The 16-bit unsigned integer value allows this attribute
the Location-Information attribute with to provide information relating to the information included
Location-Info-Civic and Location-Info-Geo in the Location-Data attribute to which it refers (via the Index).
attributes.
Code (8 bits):
Describes the location format that is carried in this attribute Code: (8 bits):
as an unsigned 8-bit integer value. Two values are defined by
this document:
(0) describes civic location information Describes the location profile that is carried in this attribute
(1) describes geospatial location information as an unsigned 8-bit integer value.
Entity (8 bits): Entity (8 bits):
This field encodes which location this attribute refers to as an This field encodes which location this attribute refers to as an
unsigned 8-bit integer value. Two values are defined by this unsigned 8-bit integer value.
document:
(0) describes the location of the user's client device
(1) describes the location of the AAA client
Sighting Time (64 bits): Sighting Time (64 bits):
NTP timestamp for the 'sighting time' field. NTP timestamp for the 'sighting time' field.
Time-to-Live (64 bits): Time-to-Live (64 bits):
NTP timestamp for the 'time-to-live' field. NTP timestamp for the 'time-to-live' field.
Method (variable): Method (variable):
Describes the way that the location information was Describes the way that the location information was
determined. The values are registered with the 'method' Tokens determined. The values are registered with the 'method' Tokens
registry by RFC 4119. The data type of this registry by RFC 4119. The data type of this
field is a string. field is a string.
The following two fields need some explanation: The following fields need more explanation:
sighting time: sighting time:
This field indicates when the Location Information was accurate. This field indicates when the Location Information was accurate.
The data type of this field is a string and the format is a 64 bit The data type of this field is a string and and the content is
NTP timestamp [17]. expressed in the 64 bit Network Time Protocol (NTP) timestamp
format [15].
time-to-live: time-to-live:
This field gives a hint until when location information should be This field gives a hint until when location information should be
considered current. Note that the time-to-live field is different considered current. The data type of this field is a string and
than retention-expires. The latter indicates the time the the content is expressed in the 64 bit Network Time Protocol (NTP)
recipient is no longer permitted to possess the location timestamp format [15]. Note that the time-to-live field is
information. The data type of this field is a string and the different than Retention Expires field used in the Basic Policy
format is a 64 bit NTP timestamp [17]. Rules attribute, see Section 4.4. Retention expires indicates the
time the recipient is no longer permitted to possess the location
The length of the Location-Information Attribute MUST NOT exceed 253 information.
octets.
5.3. Location-Info-Civic Attribute
Civic location is a popular way to describe the location of an
entity. For the RADIUS protocol civic location information is an
opaque object and the RADIUS server parses the location information
based on the encoding format defined in [4]. The data format
described in Section 3.1 of [4] is used.
Location-Info-Civic attribute SHOULD be sent in Access-Request and in
Accounting-Request messages. For the Accounting-Request message the
Acc-Status-Type may be set to Start, Interim or Stop.
The Location-Information attribute provides information about civic
location information. The format is shown below.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value (cont.) ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type:
To Be Assigned by IANA - Location-Info-Civic
Length:
>= 21 Entity:
Value: Location information can refer to different entities. This
document registers two entity values, namely:
The Value field is at least two octets in length, and the format Value (0) describes the location of the user's client device
is shown below. The data type of the Value field is string.
All fields are transmitted from left to right:
0 1 2 3 Value (1) describes the location of the RADIUS client
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Index | Civic Location ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Civic Location ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Index (16 bits): The registry used for these values is established by this
document, see Section 8.4.
The 16-bit unsigned integer value allows to associate Code:
the Location-Info-Civic attribute with the
Location-Information attributes.
Civic Location (variable): This field indicates the content of the location profile carried
in the Location-Data attribute. Two profiles are defined in this
document, namely one civic location profile (see Section 4.3.1)
that uses value (0) and a geospatial location profile (see
Section 4.3.2) that uses the value (1).
The format of the data is described in Section 3.1 of [4] The length of the Location-Information Attribute MUST NOT exceed 253
whereby the first 3 octets (i.e., the code for this DHCP option, octets.
the length of the DHCP option, and the 'what' element)
are not included.
5.4. Location-Info-Geo Attribute 4.3. Location Data Attribute
Geospatial location information is encoded as an opaque object For the RADIUS protocol location information is an opaque object.
whereby the format is reused from [6].
Location-Info-Geo attribute SHOULD be sent in Access-Request, and The Location-Data attribute MAY be sent in Access-Request and in
Accounting-Request records where the Acc-Status-Type is set to Start, Accounting-Request messages. For the Accounting-Request message the
Interim or Stop if available. Acc-Status-Type may be set to Start, Interim or Stop.
The Location-Information attribute provides information about The format is shown below.
geospatial location information. The format is shown below.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Value ... | Type | Length | Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value (cont.) ... | Value (cont.) ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: Type:
To Be Assigned by IANA - Location-Info-Geo To Be Assigned by IANA - Location-Data
Length: Length:
>= 21 >= 21
Value: Value:
The Value field is at least two octets in length, and the format The Value field is at least two octets in length, and the format
is shown below. The data type of the Value field is string. is shown below. The data type of the Value field is string.
All fields are transmitted from left to right: All fields are transmitted from left to right:
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Index | Geo Location ... | Index | Location ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Geo Location ... | Location ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Index (16 bits): Index (16 bits):
The 16-bit unsigned integer value allows to associate The 16-bit unsigned integer value allows to associate
the Location-Info-Geo attribute with the the Location-Data attribute with the
Location-Information attributes. Location-Information attributes.
Geo Location (variable): Location (variable):
The RFC 3825 Location Configuration Information (LCI) format The format of the location data depends on the location
defined in Section 2 of RFC 3825 starting with starting with profile. This document defines two location profiles.
the third octet (i.e., the code for the DHCP option and the Details of the location profiles is described below.
length field is not included).
5.5. Basic Policy Rules Attribute 4.3.1. Civic Location Profile
Policy rules control the distribution of location location Civic location is a popular way to describe the location of an
information. In some environments the the AAA client might know the entity. This section defines the civic location information profile
privacy preferences of the user based on pre-configuration or the corresponding to the value (0) indicated in the Code field of the
user communicated them as part of the network attachment. In many Location-Information attribute. The location format is based on the
other cases the AAA server (or an entity with a relationship to the encoding format defined in Section 3.1 of [4] whereby the first 3
AAA server) might possess the user's authorization policies. The octets (i.e., the code for this DHCP option, the length of the DHCP
Basic-Policy-Rules attribute SHOULD be sent in an an Access-Request, option, and the 'what' element are not included) are not put into the
Access-Accept, an Access-Challenge, an Access-Reject and an Location field of the above-described RADIUS Location-Data attribute.
Accounting-Request message.
When the AAA client does not know the user's policy then the 4.3.2. Geospatial Location Profile
following procedure is applicable:
o The AAA client SHOULD NOT attach location information in the This section defines the geospatial location information profile
initial Access-Request message but should rather wait for the AAA corresponding to the value (1) indicated in the Code field of the
server to receive a challenge for location information. Location-Information attribute. Geospatial location information is
encoded as an opaque object whereby the format is reused from the
Section 2 of RFC 3825 Location Configuration Information (LCI) format
[5]. starting with starting with the third octet (i.e., the code for
the DHCP option and the length field is not included).
o If a roamig agreement or legal circumstances require the AAA 4.4. Basic Policy Rules Attribute
client to transfer location information in the initial Access-
Request message to the AAA server (even though user specific
policies are not available to the AAA client) then the access
network attaches default authorization policies. In this case
default policies with restrictive privacy settings appropriate for
the respective environment are attached in this case. The
'retransmission-allowed' flag MUST be set to '0' meaning that the
location must not be shared with other parties (other than
forarding them to the user's home network). In case the home
network knows the user's privacy policies then these policies
SHOULD be sent from the RADIUS server to the RADIUS client in a
subsequent response message and these policies will be applied to
further location dissemination and in subsequent RADIUS
interactions (e.g., when attaching location information to
Accounting messages).
Note that the authorization framework defined in [18] and [19] Policy rules control the distribution of location information. In
together with XCAP [20] gives users the ability to change their some environments the RADIUS client might know the privacy
privacy policies. preferences of the user based on pre-configuration or the user
communicated them as part of the network attachment. Note, however,
at the time of writing such a protocol extension has not be available
for network attachment protocols. In many other cases the RADIUS
server (or an entity with a relationship to the RADIUS server) might
possess the user's authorization policies. The Basic-Policy-Rules
attribute MAY be sent in an an Access-Request, Access-Accept, an
Access-Challenge, an Access-Reject and an Accounting-Request message.
If the RADIUS client does not know the user's policy and no out-of-
band agreement regarding the delivery of location information between
the RADIUS client and the RADIUS server exists then the RADIUS client
MUST NOT attach location information in the initial Access-Request
message but should rather wait for the RADIUS server to send an
Access-Challenge for location information.
If the RADIUS client does not know the user's policy but an out-of-
band agreement regarding the delivery of location information between
the RADIUS client and the RADIUS server exists then the RADIUS client
MAY transfer location information in the initial Access-Request
message to the RADIUS server. Since policies always travel with
location information it is necessary to attach default policies with
restrictive privacy settings appropriate for the respective
environment in this case. The 'retransmission-allowed' flag MUST be
set to '0' meaning that the location must not be shared with other
parties (other than forarding them to the RADIUS server). In case
the RADIUS server knows the user's privacy policies then these
policies SHOULD be sent from the RADIUS server to the RADIUS client
in a subsequent response message, namely Access-Challenge and Access-
Accept, and these policies will be applied to further location
dissemination and in subsequent RADIUS interactions (e.g., when
attaching location information to Accounting messages).
Note that the authorization framework defined in [16] and [17]
together with the Extensible Markup Language (XML) Configuration
Access Protocol (XCAP) [18] gives users the ability to change their
privacy policies using a standardized protocol.
With regard to authorization policies this document reuses work done With regard to authorization policies this document reuses work done
in [21] and encodes them in a non-XML format. Two fields ('sighting in [19] and encodes them in a non-XML format. Two fields ('sighting
time' and 'time-to-live') are additionally included in the Location- time' and 'time-to-live') are additionally included in the Location-
Information attribute to conform to the Geopriv requirements [10], Information attribute to conform to the GEOPRIV requirements [9],
Section 2.7. Two RADIUS attributes are used for this purpose: Basic- Section 2.7.
Policy-Rule and Extended-Policy-Rule attribute. The latter is
defined in Section 5.6. The Basic-Policy-Rule attribute contains a
fixed set of privacy relevant fields whereas the Extended-Policy-Rule
attribute contains a reference to a more extensive authorization rule
set.
The format of the Basic-Policy-Rules attribute is shown below. The format of the Basic-Policy-Rules attribute is shown below.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Value ... | Type | Length | Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value (cont.) ... | Value (cont.) ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 24, line 14 skipping to change at page 21, line 32
Retention Expires (64 bits): Retention Expires (64 bits):
NTP timestamp for the 'retention-expires' field. NTP timestamp for the 'retention-expires' field.
Note Well (variable): Note Well (variable):
This field contains a URI that points to human readable This field contains a URI that points to human readable
privacy instructions. The data type of this field is string. privacy instructions. The data type of this field is string.
This document reuses fields of the 'usage-rules' element, described This document reuses fields of the RFC 4119 [19] 'usage-rules'
in [21]. These fields have the following meaning: element. These fields have the following meaning:
retransmission-allowed: retransmission-allowed:
When the value of this element is '0', then the recipient of this When the value of this element is '0', then the recipient of this
Location Object is not permitted to share the enclosed location Location Object is not permitted to share the enclosed location
information, or the object as a whole, with other parties. The information, or the object as a whole, with other parties. The
value of '1' allows to share the location information with other value of '1' allows to share the location information with other
parties by considering the extended policy rules. parties by considering the extended policy rules.
retention-expires: retention-expires:
This field specifies an absolute date at which time the Recipient This field specifies an absolute date at which time the Recipient
is no longer permitted to possess the location information. The is no longer permitted to possess the location information. The
data type of this field is a string and the format is a 64 bit NTP data type of this field is a string and the format is a 64 bit NTP
timestamp [17]. timestamp [15].
note-well: note-well:
This field contains a URI which points to human readable privacy This field contains a URI that points to human readable privacy
instructions. This field is useful when location information is instructions. This field is useful when location information is
distributed to third party entities, which can include humans in a distributed to third party entities, which can include humans in a
location based service. RADIUS entities are not supposed to location based service. RADIUS entities are not supposed to
process this field. process this field.
Whenever a Location Object leaves the AAA system the URI in the Whenever a Location Object leaves the RADIUS eco-system the URI in
note-well attribute MUST be expanded to the human readable text. the note-well attribute MUST be expanded to the human readable
For example, when the Location Object is transferred to a SIP text. For example, when the Location Object is transferred to a
based environment then the human readable text is placed into the SIP based environment then the human readable text is placed into
'note-well' element of the 'usage-rules' element contained in the the 'note-well' element of the 'usage-rules' element contained in
PIDF-LO document (see [21]). the PIDF-LO document (see [19]).
5.6. Extended Policy Rules Attribute 4.5. Extended Policy Rules Attribute
The Extended-Policy-Rules attribute SHOULD be sent in an Access- The Extended-Policy-Rules attribute MAY be sent in an Access-Request,
Request, an Access-Accept, an Access-Challenge, an Access-Reject and an Access-Accept, an Access-Challenge, an Access-Reject and in an
in an Accounting-Request message whenever location information is Accounting-Request message whenever location information is
transmitted. transmitted.
Ruleset reference field of this attribute is of variable length. It The ruleset reference field of this attribute is of variable length.
contains a URI that indicates where the richer ruleset can be found. It contains a URI that indicates where the richer ruleset can be
This URI SHOULD use the HTTPS URI scheme. As a deviation from [21] found. This URI SHOULD use the HTTPS URI scheme. As a deviation
this field only contains a reference and does not carry an attached from [19] this field only contains a reference and does not carry an
extended rule set. This modification is motivated by the size attached extended rule set. This modification is motivated by the
limitations imposed by RADIUS. size limitations imposed by RADIUS.
The format of the Extended-Policy-Rules attribute is shown below. The format of the Extended-Policy-Rules attribute is shown below.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Value ... | Type | Length | Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value (cont.) ... | Value (cont.) ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 25, line 51 skipping to change at page 23, line 35
The fields are transmitted from left to right: The fields are transmitted from left to right:
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Ruleset Reference ... | Ruleset Reference ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Ruleset Reference: Ruleset Reference:
This field contains a URI that points to policy rules. This field contains a URI that points to the policy rules.
5.7. Challenge-Capable Attribute 4.6. Challenge-Capable Attribute
The Challenge-Capable attribute allows a NAS (or client function of a The Challenge-Capable attribute allows a NAS (or client function of a
proxy server) to indicate support for processing general purpose proxy server) to indicate support for processing general purpose
Access-Challenge messages from the RADIUS server, beyond those Access-Challenge messages from the RADIUS server, beyond those
specified for support of the authentication methods of textual specified for support of the authentication methods of textual
challenge-response, CHAP or EAP. This mechanism allows the RADIUS challenge-response, PPP Challenge Handshake Authentication Protocol
server to request additional information from the RADIUS client prior (CHAP) or the Extensible Authentication Protocol (EAP). This
to making an authentication and authorization decision. The mechanism allows the RADIUS server to request additional information
Challenge-Capable attribute MUST appear in Access-Request Messages, from the RADIUS client prior to making an authentication and
if the NAS supports this feature, as a hint to the RADIUS server. authorization decision. The Challenge-Capable attribute with the
C-flag set MUST appear in Access-Request Messages, if the NAS
supports this feature, as a hint to the RADIUS server.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Value | | Type | Length | Value |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type: Type:
To Be Assigned by IANA - Challenge-Capable Attribute To Be Assigned by IANA - Challenge-Capable Attribute
Length: Length:
4 4
Value: Value:
The Value field is two octets long and of type string. The Value field is at least two octets in length, and the format
Every bit of the two octets MUST be set to 0. is shown below. The data type of the Value field is string.
All fields are transmitted from left to right:
5.8. Requested-Info Attribute 0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|C|o o o o o o o o o o o o o o o|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The symbol 'o' refers to reserved flags.
This document defines a single bit only: C - Challenge Capable.
4.7. Requested-Info Attribute
The Requested-Info attribute allows the RADIUS server to indicate The Requested-Info attribute allows the RADIUS server to indicate
whether it needs civic and/or geospatial location information of the what location information about which entity it wants to receive.
NAS or the end host (i.e., the entities that are indicated in the The latter aspect refers to the entities that are indicated in the
Entity field of the Location-Information attribute). Entity field of the Location-Information attribute.
If the RADIUS server wants to dynamically decide on a per-request If the RADIUS server wants to dynamically decide on a per-request
basis to ask for location information from the RADIUS client then the basis to ask for location information from the RADIUS client then the
following cases need to be differentiated. If the AAA client and the following cases need to be differentiated. If the RADIUS client and
AAA server have agreed out-of-band to mandate the transfer of the RADIUS server have agreed out-of-band to mandate the transfer of
location information for every network access authentication request location information for every network access authentication request
then the processing listed below is not applicable. then the processing listed below is not applicable.
o The RADIUS server requires location information for computing the o If the RADIUS server requires location information for computing
authorization decision. If the RADIUS client does not provide the authorization decision and the RADIUS client does not provide
location information with the Access-Request message then the it with the Access-Request message then the Requested-Info
Requested-Info attribute is attached to the Access-Challenge to attribute is attached to the Access-Challenge with a hint about
indicate what is required. Two cases can be differentiated: what is required. Two cases can be differentiated:
o
1. If the RADIUS client sends the requested information then the 1. If the RADIUS client sends the requested information then the
RADIUS server can process the location-based attributes. RADIUS server can process the location-based attributes.
2. If the RADIUS server does not receive the requested 2. If the RADIUS server does not receive the requested
information in response to the Access-Challenge (including the information in response to the Access-Challenge (including the
Requested-Info attribute) then the RADIUS server responds with Requested-Info attribute) then the RADIUS server may respond
an Access-Reject with an Error-Cause attribute (including the with an Access-Reject message with an Error-Cause attribute
"Location-Info-Required" value). Note that an Access-Reject (including the "Location-Info-Required" value).
message SHOULD only be sent if the RADIUS server MUST use
location information for returning a positive access control
decision.
o If the RADIUS server would like location information in the o If the RADIUS server would like location information in the
Accounting-Request message but does not require it for computing Accounting-Request message but does not require it for computing
an authorization decision then an Access-Accept MUST include a an authorization decision then the Access-Accept message MUST
Required-Info attribute. This is typically the case when location include a Required-Info attribute. This is typically the case
information is used for inclusion to the user's bill only. The when location information is used only for billing. The RADIUS
RADIUS client SHOULD attach location information to the client SHOULD attach location information, if available, to the
Accounting-Request (unless authorization policies dictate Accounting-Request (unless authorization policies dictate
something different), if it is available. something different).
If the RADIUS server does not send a Requested-Info attribute then If the RADIUS server does not send a Requested-Info attribute then
the RADIUS client MUST NOT attach location information to messages to the RADIUS client MUST NOT attach location information to messages
the RADIUS server. The user's authorization policies, if available, towards the RADIUS server, unless an out-of-band agreement is in
MUST be consulted by the RADIUS server before requesting location place. The user's authorization policies, if available, MUST be
information delivery from the RADIUS client. consulted by the RADIUS server before requesting location information
delivery from the RADIUS client.
Figure 11 shows a simple protocol exchange where the RADIUS server Figure 11 shows a simple protocol exchange where the RADIUS server
indicates the desire to obtain location information, namely civic indicates the desire to obtain location information, namely civic
location information of the user, to grant access. Since the location information of the user, to grant access. Since the
Requested-Info attribute is attached to the Access-Challenge the Requested-Info attribute is attached to the Access-Challenge the
RADIUS server indicates that location information is required for RADIUS server indicates that location information is required for
computing an authorization decision. computing an authorization decision.
+---------+ +---------+ +---------+ +---------+
| RADIUS | | RADIUS | | RADIUS | | RADIUS |
skipping to change at page 28, line 21 skipping to change at page 26, line 21
| RADIUS | | RADIUS |
| Access-Request | | Access-Request |
| + Challenge-Capable | | + Challenge-Capable |
|----------------------------->| |----------------------------->|
| | | |
| RADIUS | | RADIUS |
| Access-Challenge | | Access-Challenge |
| + Requested-Info | | + Requested-Info |
| ('CIVIC_LOCATION', | | ('CIVIC_LOCATION', |
| 'USERS_LOCATION') | | 'USERS_LOCATION') |
| + Basic-Policy-Rules |
| + Extended-Policy-Rules |
|<-----------------------------| |<-----------------------------|
| | | |
| RADIUS | | RADIUS |
| Access-Request | | Access-Request |
| + Location-Information | | + Location-Information |
| (civic-location) | | + Location-Data |
| + Basic-Policy-Rules |
| + Extended-Policy-Rules |
|----------------------------->| |----------------------------->|
| | | |
| .... | | .... |
Figure 11: RADIUS server requesting location information Figure 11: RADIUS server requesting location information
The Requested-Info attribute MUST be sent by the RADIUS server if it The Requested-Info attribute MUST be sent by the RADIUS server, in
wants the RADIUS client to return civic and/or geospatial the absence of an out-of-band agreement, if it wants the RADIUS
information. This Requested-Info attribute MAY appear in the Access- client to return location information and if authorization policies
permit it. This Requested-Info attribute MAY appear in the Access-
Accept or in the Access-Challenge message. Accept or in the Access-Challenge message.
A summary of the attribute is shown below. A summary of the attribute is shown below.
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Value ... | Type | Length | Value ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Value (cont.) ... | Value (cont.) ...
skipping to change at page 30, line 9 skipping to change at page 28, line 9
This document specifies the following capabilities: This document specifies the following capabilities:
Name: Name:
CIVIC_LOCATION CIVIC_LOCATION
Description: Description:
The RADIUS server uses this attribute to request information from The RADIUS server uses this attribute to request information from
the RADIUS client to be returned. The numerical value the RADIUS client to be returned. The numerical value
representing CIVIC_LOCATION requires the RADIUS client to attach representing CIVIC_LOCATION requires the RADIUS client to attach
civic location attributes. civic location attributes. CIVIC_LOCATION refers to the location
profile defined in Section 4.3.1.
Numerical Value: Numerical Value:
A numerical value of this attribute is '1'. A numerical value of this attribute is '1'.
Name: Name:
GEO_LOCATION GEO_LOCATION
Description: Description:
The RADIUS server uses this attribute to request information from The RADIUS server uses this attribute to request information from
the RADIUS client to be returned. The numerical value the RADIUS client to be returned. The numerical value
representing GEO_LOCATION requires the RADIUS client to attach representing GEO_LOCATION requires the RADIUS client to attach
geospatial location attributes. geospatial location attributes. GEO_LOCATION refers to the
location profile described in Section 4.3.2.
Numerical Value: Numerical Value:
A numerical value of this attribute is '2'. A numerical value of this attribute is '2'.
Name: Name:
USERS_LOCATION USERS_LOCATION
Description: Description:
The numerical value representing USERS_LOCATION indicates that the The numerical value representing USERS_LOCATION indicates that the
AAA client must sent a Location-Information attribute that RADIUS client must sent a Location-Information attribute with the
contains location information with the Entity attribute expressing Entity attribute expressing the value of zero (0). Hence, there
the value of zero (0). A value of zero indicates that the is a one-to-one relationship between USERS_LOCATION token and the
value of zero (0) of the Entity attribute inside the Location-
Information attribute. A value of zero indicates that the
location information in the Location-Information attribute refers location information in the Location-Information attribute refers
to the user's client device. to the user's client device.
Numerical Value: Numerical Value:
A numerical value of this attribute is '4'. A numerical value of this attribute is '4'.
Name: Name:
NAS_LOCATION NAS_LOCATION
Description: Description:
The numberical value representing NAS_LOCATION indicates that the The numerical value representing NAS_LOCATION indicates that the
AAA client must sent a Location-Information attribute that RADIUS client must sent a Location-Information attribute that
contains location information with the Entity attribute expressing contains location information with the Entity attribute expressing
the value of one (1). A value of one indicates that the location the value of one (1). Hence, there is a one-to-one relationship
information in the Location-Information attribute refers to the between NAS_LOCATION token and the value of one (1) of the Entity
AAA client. attribute inside the Location-Information attribute. A value of
one indicates that the location information in the Location-
Information attribute refers to the RADIUS client.
Numerical Value: Numerical Value:
A numerical value of this attribute is '8'. A numerical value of this attribute is '8'.
If neither the NAS_LOCATION nor the USERS_LOCATION bit is set then If neither the NAS_LOCATION nor the USERS_LOCATION bit is set then
per-default the location of the user's client device MUST be returned per-default the location of the user's client device is returned (if
(if authorization policies allow it). If both the NAS_LOCATION and authorization policies allow it). If both the NAS_LOCATION and the
the USERS_LOCATION bits are set then the location information has to USERS_LOCATION bits are set then the returned location information
be put into separate attributes. If neither the CIVIC_LOCATION nor has to be put into separate attributes. If neither the
the GEO_LOCATION bit is set in the Requested-Info attribute then no CIVIC_LOCATION nor the GEO_LOCATION bit is set in the Requested-Info
location information is returned. If both the CIVIC_LOCATION and the attribute then no location information is returned. If both the
GEO_LOCATION bits are set then the location information has to be put CIVIC_LOCATION and the GEO_LOCATION bits are set then the location
into separate attributes. The value of NAS_LOCATION and information has to be put into separate attributes. The value of
USERS_LOCATION refers to the location information requested via NAS_LOCATION and USERS_LOCATION refers to the location information
CIVIC_LOCATION and via GEO_LOCATION. As an example, if the bits for requested via CIVIC_LOCATION and via GEO_LOCATION.
NAS_LOCATION, USERS_LOCATION and GEO_LOCATION are set then location
information of the AAA client and the users' client device are
returned in a geospatial location format.
6. Table of Attributes As an example, if the bits for NAS_LOCATION, USERS_LOCATION and
GEO_LOCATION are set then location information of the RADIUS client
and the users' client device are returned in a geospatial location
format.
5. Table of Attributes
The following table provides a guide which attributes may be found in The following table provides a guide which attributes may be found in
which RADIUS messages, and in what quantity. which RADIUS messages, and in what quantity.
Request Accept Reject Challenge Accounting # Attribute Request Accept Reject Challenge Accounting # Attribute
Request Request
0-1 0 0 0 0-1 TBD Operator-Name 0-1 0 0 0 0-1 TBD Operator-Name
0+ 0 0 0 0+ TBD Location-Information 0+ 0 0 0 0+ TBD Location-Information
0+ 0 0 0 0+ TBD Location-Info-Civic 0+ 0 0 0 0+ TBD Location-Data
0+ 0 0 0 0+ TBD Location-Info-Geo
0-1 0-1 0-1 0-1 0-1 TBD Basic-Policy-Rules 0-1 0-1 0-1 0-1 0-1 TBD Basic-Policy-Rules
0-1 0-1 0-1 0-1 0-1 TBD Extended-Policy-Rules 0-1 0-1 0-1 0-1 0-1 TBD Extended-Policy-Rules
0 0-1 0 0-1 0 TBD Requested-Info 0 0-1 0 0-1 0 TBD Requested-Info
0-1 0 0 0 0 TBD Challenge-Capable 0-1 0 0 0 0 TBD Challenge-Capable
The Location-Information, the Location-Info-Civic and the Location- The Location-Information and the Location-Data attribute MAY appear
Info-Geo attribute MAY appear more than once. For example, if the more than once. For example, if the server asks for civic and
server asks for civic and geospatial location information two geospatial location information two Location-Information attributes
Location-Information attributes need to be sent. If multiple need to be sent.
Location-Information attributes are sent then they MUST NOT contain
the same information.
The next table shows the occurrence of the error-cause attribute. The next table shows the occurrence of the error-cause attribute.
Request Accept Reject Challenge Accounting # Request Accept Reject Challenge Accounting #
Request Request
0 0 0-1 0 0 101 Error-Cause 0 0 0-1 0 0 101 Error-Cause
7. Diameter RADIUS Interoperability 6. Diameter RADIUS Interoperability
When used in Diameter, the attributes defined in this specification When used in Diameter, the attributes defined in this specification
can be used as Diameter AVPs from the Code space 1-255 (RADIUS can be used as Diameter AVPs from the Code space 1-255 (RADIUS
attribute compatibility space). No additional Diameter Code values attribute compatibility space). No additional Diameter Code values
are therefore allocated. The data types and flag rules for the are therefore allocated. The data types and flag rules for the
attributes are as follows: attributes are as follows:
+---------------------+ +---------------------+
| AVP Flag rules | | AVP Flag rules |
|----+-----+----+-----|----+ |----+-----+----+-----|----+
| | |SHLD| MUST| | | | |SHLD| MUST| |
Attribute Name Value Type |MUST| MAY | NOT| NOT|Encr| Attribute Name Value Type |MUST| MAY | NOT| NOT|Encr|
----------------------------------|----+-----+----+-----|----| ----------------------------------|----+-----+----+-----|----|
Operator-Name OctetString| | P,M | | V | Y | Operator-Name OctetString| | P,M | | V | Y |
Location-Information OctetString| M | P | | V | Y | Location-Information OctetString| M | P | | V | Y |
Location-Info-Civic OctetString| M | P | | V | Y | Location-Data OctetString| M | P | | V | Y |
Location-Info-Geo OctetString| M | P | | V | Y |
Basic-Policy-Rules OctetString| M | P | | V | Y | Basic-Policy-Rules OctetString| M | P | | V | Y |
Extended-Policy-Rules OctetString| M | P | | V | Y | Extended-Policy-Rules OctetString| M | P | | V | Y |
Requested-Info OctetString| M | P | | V | Y | Requested-Info OctetString| M | P | | V | Y |
Challenge-Capable OctetString| | P,M | | V | Y | Challenge-Capable OctetString| | P,M | | V | Y |
----------------------------------|----+-----+----+-----|----| ----------------------------------|----+-----+----+-----|----|
The attributes in this specification have no special translation The attributes in this specification have no special translation
requirements for Diameter to RADIUS or RADIUS to Diameter gateways; requirements for Diameter to RADIUS or RADIUS to Diameter gateways;
they are copied as is, except for changes relating to headers, they are copied as is, except for changes relating to headers,
alignment, and padding. See also Section 4.1 of [7] and Section 9 of alignment, and padding. See also Section 4.1 of [6] and Section 9 of
[22]. [20].
What this specification says about the applicability of the What this specification says about the applicability of the
attributes for RADIUS Access-Request packets applies in Diameter to attributes for RADIUS Access-Request packets applies in Diameter to
AA-Request [22] or Diameter-EAP-Request [23]. What is said about AA-Request [20] or Diameter-EAP-Request [21]. What is said about
Access-Challenge applies in Diameter to AA-Answer [22] or Diameter- Access-Challenge applies in Diameter to AA-Answer [20] or Diameter-
EAP-Answer [23] with Result-Code AVP set to EAP-Answer [21] with Result-Code AVP set to
DIAMETER_MULTI_ROUND_AUTH. What is said about Access-Accept applies DIAMETER_MULTI_ROUND_AUTH. What is said about Access-Accept applies
in Diameter to AA-Answer or Diameter-EAP-Answer messages that in Diameter to AA-Answer or Diameter-EAP-Answer messages that
indicate success. Similarly, what is said about RADIUS Access-Reject indicate success. Similarly, what is said about RADIUS Access-Reject
packets applies in Diameter to AA- Answer or Diameter-EAP-Answer packets applies in Diameter to AA- Answer or Diameter-EAP-Answer
messages that indicate failure. messages that indicate failure.
What is said about COA-Request applies in Diameter to Re-Auth-Request What is said about COA-Request applies in Diameter to Re-Auth-Request
[22]. [20].
What is said about Accounting-Request applies to Diameter Accounting- What is said about Accounting-Request applies to Diameter Accounting-
Request [22] as well. Request [20] as well.
8. Matching with Geopriv Requirements
This section compares the Geopriv requirements described in [10] and
the approach of distributing Location Objects with RADIUS.
In Section 8.1 and Section 8.2 we discuss privacy implications when
RADIUS is not used according to these usage scenario. In Section 8.3
Geopriv requirements are matched against these two scenarios.
8.1. Distribution of Location Information at the User's Home Network
This section focuses on location information transport from the local
AAA server (acting as the Location Generator) to the home AAA server
(acting as the Location Server). To use a more generic scenario we
assume that the visited AAA and the home AAA server belong to
different administrative domains. The Location Recipient obtains
location information about a particular Target via protocols
specified outside the scope of this document (e.g., SIP, HTTP or an
API).
Please note that the main usage scenario defined in this document
assumes that the Location Server and the Location Recipient are co-
located into a single entity with regard to location based network
access authorization, taxation and billing.
The subsequent figure shows the interacting entities graphically.
visited network | home network
|
| +----------+
| | Rule |
| | Holder |
| | |
| +----+-----+
| |
| rule|interface
| V
+----------+ | +----------+ +----------+
|Location | publication | Location | notification |Location |
|Generator |<------------->| Server |<------------->|Recipient |
| | interface | | interface | |
+----------+ | +----------+ +----------+
|
Local AAA RADIUS Home AAA SIP/HTTP/API/etc.
Server | Server
|
Figure 16: Location Server at the Home Network
The term 'Rule Holder' in Figure 16 denotes the entity that creates
the authorization rule set.
8.2. Distribution of Location Information at the Visited Network
This section describes a scenario where location information made
available to Location Recipients by some entity in the visited
network.
In order for this scenario to be applicable the following two
assumptions must hold:
o The visited network deploys a Location Server and wants to
distribute Location Objects
o The visited network is able to learn the user's identity.
The visited network provides location information to a Location
Recipient (e.g., via SIP or HTTP). During the network access
authentication procedure the visited network is able to retrieve the
user's authorization policies from the home AAA server. This should
ensure that the visited network acts according to the user's
policies.
The subsequent figure shows the interacting entities graphically.
visited network | home network
|
+----------+ |
|Location | |
|Recipient | |
| | |
+----------+ |
^ | +----------+
| | | Rule |
| | | Holder |
notification | | |
interface | +----+-----+
| | |
| | rule|interface
v | V
+----------+ | +----------+
|Location | Rule Transport| Home AAA |
|Generator |<------------->| Server |
|& Server | RADIUS | |
+----------+ | +----------+
|
Figure 17: Location Server at the Visited Network
8.3. Requirements matching
Section 7.1 of [10] details the requirements of a "Location Object".
We discuss these requirements in the subsequent list.
Req. 1. (Location Object generalities):
* Regarding requirement 1.1, the Location Object has to be
understood by the RADIUS server (and possibly a Diameter server
in case of interworking between the two) as defined in this
document. Due to the encoding of the Location Object it is
possible to convert it to the format used in GMLv3 [24]. This
document uses the civic and geospatial location information
format used in [6] and in [4]. The format of [6] and of [4]
can be convered into a PIDF-LO [21].
* Regarding requirement 1.2, a number of fields in the civic
location information format are optional.
* Regarding requirement 1.3, the inclusion of type of place item
(CAtype 29) used in the DHCP civic format gives a further
classification of the location. This attribute can be seen as
an extension.
* Regarding requirement 1.4, the location information is not
defined in this document.
* Regarding requirement 1.5, the Location Object is useful for
both receiving and sending location information as described in
this document.
* Regarding requirement 1.6, the Location Object contains both
location information and privacy rules. Location information
is described in Section 5.2, in Section 5.3 and in Section 5.4.
The corresponding privacy rules are detailed in Section 5.5 and
in Section 5.6.
* Regarding requirement 1.7, the Location Object is usable in a
variety of protocols. The format of the object is reused from
other documents as detailed in Section 5.2, Section 5.3,
Section 5.4 Section 5.5 and in Section 5.6).
* Regarding requirement 1.8, the encoding of the Location Object
has an emphasis on a lightweight encoding format. As such it
is useable on constrained devices.
Req. 2. (Location Object fields):
* Regarding requirement 2.1, the Target Identifier is carried
within the network access authentication protocol (e.g., within
the EAP-Identity Response when EAP is used and/or within the
EAP method itself). As described in Section 9 it has a number
of advantages if this identifier is not carried in clear. This
is possible with certain EAP methods whereby the identity in
the EAP-Identity Response only contains information relevant
for routing the response to the user's home network. The user
identity is protected by the authentication and key exchange
protocol.
* Regarding requirement 2.2, the Location Recipient is in the
main scenario the home AAA server. For a scenario where the
Location Recipient is obtaining Location Information from the
Location Server via HTTP or SIP the respective mechanisms
defined in these protocols are used to identify the recipient.
The Location Generator cannot, a priori, know the recipients if
they are not defined in this protocol.
* Regarding requirement 2.3, the credentials of the Location
Recipient are known to the RADIUS entities based on the
security mechanisms defined in the RADIUS protocol itself.
Section 10 describes these security mechanisms offered by the
RADIUS protocol. The same is true for requirement 2.4.
* Regarding requirement 2.5, Section 5.2, Section 5.3 and
Section 5.4 describe the content of the Location Field. Since
the location format itself is not defined in this document
motion and direction vectors as listed in requirement 2.6 are
not defined.
* Regarding requirement 2.6, this document provides the
capability for the AAA server to indicate what type of location
information it would like to see from the AAA client.
* Regarding requirement 2.7, timing information is provided with
'sighting time' and 'time-to-live' field defined in
Section 5.2.
* Regarding requirement 2.8, a reference to an external (more
detailed rule set) is provided with the Section 5.6 attribute.
* Regarding requirement 2.9, security headers and trailers are
provided as part of the RADIUS protocol or even as part of
IPsec.
* Regarding requirement 2.10, a version number in RADIUS is
provided with the IANA registration of the attributes. New
attributes are assigned a new IANA number.
Req. 3. (Location Data Types):
* Regarding requirement 3.1, this document reuses civic and
geospatial location information as described in Section 5.4 and
in Section 5.3.
* With the support of civic and geospatial location information
support requirement 3.2 is fulfilled.
* Regarding requirement 3.3, the geospatial location information
used by this document only refers to absolute coordinates.
However, the granularity of the location information can be
reduced with the help of the AltRes, LoRes, LaRes fields
described in [6].
* Regarding requirement 3.4, further Location Data Types can be
added via new coordinate reference systems (CRSs) (see Datum
field in [6]) and via extensions to [6] and [4].
Section 7.2 of [10] details the requirements of a "Using Protocol".
These requirements are listed below:
Req. 4.: The using protocol has to obey the privacy and security
instructions coded in the Location Object regarding the
transmission and storage of the LO. This document requires that
RADIUS entities sending or receiving location MUST obey such
instructions.
Req. 5.: The using protocol will typically facilitate that the keys
associated with the credentials are transported to the respective
parties, that is, key establishment is the responsibility of the
using protocol. Section 10 specifies how security mechanisms are
used in RADIUS and how they can be reused to provide security
protection for the Location Object. Additionally, the privacy
considerations (see Section 9) are also relevant for this
requirement.
Req. 6. (Single Message Transfer): In particular, for tracking of
small target devices, the design should allow a single message/
packet transmission of location as a complete transaction. The
encoding of the Location Object is specifically tailored towards
the inclusion into a single message that even respects the (Path)
MTU size. The concept of a transaction is not immediately
applicable to RADIUS.
Section 7.3 of [10] details the requirements of a "Rule based 7. Security Considerations
Location Data Transfer". These requirements are listed below:
Req. 7. (LS Rules): With the scenario shown in Figure 16 the A number of security aspects are relevant for the distribution of
decision of a Location Server to provide a Location Recipient location information via RADIUS. These aspects are discussed in
access to location information is based on Rule Maker-defined separate sub-sections.
Privacy Rules that are stored at the home network. With regard to
the scenario shown in Figure 17 the Rule Maker-defined Privacy
Rules are sent from the home network to the visited network (see
Section 5.5, Section 5.6 and Section 9 for more details).
Req. 8. (LG Rules): For mid-session delivery it is possible to 7.1. Communication Security
enforce the user's privacy rules for the transfer of the Location
Object. For the initial transmission of a Location Object the
user would have to use network access authentication methods which
provide user identity confidentiality which would render the
Location Object completely useless for the visited network. For
the scenario shown in Figure 16 the visited network is already in
possession of the users location information prior to the
authentication and authorization of the user. A correlation
between the location and the user identity might, however, still
not be possible for the visited network (as explained in
Section 9). The visited network MUST evaluate ruleset provided by
the home AAA server as soon as possible.
Req. 9. (Viewer Rules): The Rule Maker might define (via mechanisms Requirements for the protection of a Location Object are defined in
outside the scope of this document) which policy rules are [9], namely mutual end-point authentication, data object integrity,
disclosed to other entities. data object confidentiality and replay protection.
Req. 10. (Full Rule language): Geopriv has defined a rule language If no authentication, integrity and replay protection between the
capable of expressing a wide range of privacy rules which is participating RADIUS entities is provided then adversaries can spoof
applicable in the area of the distribution of Location Objects. A and modify transmitted attributes. Two security mechanisms are
basic ruleset is provided with the Basic-Policy-Rules attribute proposed for RADIUS:
Section 5.5. A reference to the extended ruleset is carried in
Section 5.6. The format of these rules are described in [18] and
[19].
Req. 11. (Limited Rule language): A limited (or basic) ruleset is o [2] proposes the usage of a static key that raised concerns
provided by the Policy-Information attribute Section 5.5 (and as regarding the lack dynamic key management. At the time of
introduced with PIDF-LO [21]). writing, work is ongoing to address some shortcomings of [2]
attribute security protection.
Section 7.4 of [10] details the requirements of a "Location Object o RADIUS over IPsec [22] enables the use of standard key management
Privacy and Security". These requirements are listed below: mechanisms, such as KINK, IKE and IKEv2 [23], to establish IPsec
security associations. Confidentiality protection MUST be used to
prevent eavesdropper gaining access to location information.
Confidentiality protection is not only a property required by this
document, it is also required for the transport of keying material
in the context of EAP authentication and authorization. Hence,
this requirement is, in many environments, already fulfilled.
Mutual authentication MUST be provided between neighboring RADIUS
entities to prevent man-in-the-middle attacks. Since mutual
authentication is already required for key transport within RADIUS
messages it does not represent a deployment obstacle. Since IPsec
protection is suggested as a mechanism to protect RADIUS already
no additional considerations need to be addressed beyond those
described in [22].
Req. 12 (Identity Protection): Support for unlinkable pseudonyms is In case that IPsec protection is not available for some reason and
provided by the usage of a corresponding authentication and key RADIUS specific security mechanisms have to be used then the
exchange protocol. Such protocols are available, for example, following considerations apply. The Access-Request message is not
with the support of EAP as network access authentication methods. integrity protected. This would allow an adversary to change the
Some EAP methods support passive user identity confidentiality contents of the Location Object or to insert, modify and delete
whereas others even support active user identity confidentiality. attributes or individual fields. To address these problems the
This issue is further discussed in Section 10. The importance for Message-Authenticator (80) can be used to integrity protect the
user identity confidentiality and identity protection has already entire Access-Request packet. The Message-Authenticator (80) is also
been recognized as an important property (see for example a required when EAP is used and hence is supported by many modern
document on 'EAP Method Requirements for Wireless LANs' [25]). RADIUS servers.
Req. 13. (Credential Requirements): As described in Section 10 Access-Request packets including Location attribute(s) without a
RADIUS signaling messages can be protected with IPsec. This Message-Authenticator(80) attribute SHOULD be silently discarded by
allows a number of authentication and key exchange protocols to be the RADIUS server. A RADIUS server supporting location attributes
used as part of IKE, IKEv2 or KINK. MUST calculate the correct value of the Message-Authenticator(80) and
MUST silently discard the packet if it does not match the value sent.
Req. 14. (Security Features): Geopriv defines a few security Access-Accept, including Location attribute(s) without a Message-
requirements for the protection of Location Objects such as mutual Authenticator(80) attribute SHOULD be silently discarded by the NAS.
end-point authentication, data object integrity, data object A NAS supporting location attributes MUST calculate the correct value
confidentiality and replay protection. As described in Section 10 of a received Message-Authenticator(80) and MUST silently discard the
these requirements are fulfilled with the usage of IPsec if mutual packet if it does not match the value sent.
authentication refers to the RADIUS entities (acting as various
Geopriv entities) which directly communicate with each other.
Req. 15. (Minimal Crypto): A minimum of security mechanisms are RADIUS and Diameter make some assumptions about the trust between
mandated by the usage of RADIUS. Communication security for traversed RADIUS entities in the sense that object level security is
Location Objects between AAA infrastructure elements is provided not provided by neither RADIUS nor Diameter. Hence, some trust has
by the RADIUS protocol (including IPsec and its dynamic key to be placed on the RADIUS entities to behave according to the
management framework) rather than on relying on object security defined rules. Furthermore, the RADIUS protocol does not involve the
via S/SIME (which is not available with RADIUS). user in their protocol interaction except for tunneling
authentication information (such as EAP messages) through their
infrastructure. RADIUS and Diameter have even become a de-facto
protocol for key distribution for network access authentication
applications. Hence, in the past there were some concerns about the
trust placed into the infrastructure particularly from the security
area when it comes to keying. The EAP keying infrastructure is
described in [24].
9. Privacy Considerations 7.2. Privacy Considerations
This section discusses privacy implications for the distribution of This section discusses privacy implications for the distribution of
location information within RADIUS. location information within RADIUS.
In many cases the location information of the network also reveals In many cases the location information of the network also reveals
the current location of the user with a certain degree of precision the current location of the user with a certain degree of precision
depending on the mechanism used, the positioning system, update depending on the mechanism used, the positioning system, update
frequency, where the location was generated, size of the network and frequency, where the location was generated, size of the network and
other mechanisms (such as movement traces or interpolation). other mechanisms (such as movement traces or interpolation).
Two entities might act as Location Servers as shown in Section 4, in Three types of use cases have to be differentiated:
Figure 16 and in Figure 17:
9.1. Entity in the visited network o RADIUS server does not want to receive location information from
the RADIUS client. The RADIUS client does not send location
information to the RADIUS server.
In this scenario it is difficult to obtain authorization policies o In case there is an out-of-band agreement between the entity
from the end host (or user) immediately when the user attaches to the responsible for the NAS and the entity operating the RADIUS server
network. In this case we have to assume that the visited network then location information may be sent without an explicit request
does not allow unrestricted distribution of location information to from the RADIUS server.
other than the intended recipients (e.g., to third party entities).
When the AAA messages traverses one or more broker networks, the
broker network is bound by the same guidelines as the visited network
with respect to the distribution of location information.
The visited network MUST behave according to the following o The RADIUS server dynamically requests location information from
guidelines: the NAS.
o Per default only the home network is allowed to receive location 7.2.1. RADIUS Client
information. The visited network MUST NOT distribute location
information to third parties without seeing the user's privacy
rule set.
o If the home network provides the Basic-Policy-Rules attribute The RADIUS client MUST behave according to the following guidelines:
o If neither an out-of-band agreement exists nor location
information is requested by the RADIUS server then location
information is not disclosed by the RADIUS client.
o If the RADIUS server provides the Basic-Policy-Rules attribute
either as part of the Access-Accept, the Access-Reject or the either as part of the Access-Accept, the Access-Reject or the
Access-Challenge message then the visited network MUST follow the Access-Challenge message then the RADIUS client MUST follow the
guidance given with these rules. guidance given with these rules.
o If the home network provides the Extended-Policy-Rules attributes o If the RADIUS server provides the Extended-Policy-Rules attributes
either as part of the Access-Accept, the Access-Reject or the either as part of the Access-Accept, the Access-Reject or the
Access-Challenge message then the visited network MUST fetch the Access-Challenge message then the RADIUS client MUST fetch the
full ruleset at the indicated URL and MUST follow the guidance full ruleset at the indicated URL and MUST follow the guidance
given with these rules. given by these rules.
o If the RADIUS client in the visited network learns the basic rule o If the RADIUS client in the visited network learns the basic rule
set or a reference to the extended rule set by means outside the set or a reference to the extended rule set by means outside the
RADIUS protocol (e.g., provided by the end host) then it MUST RADIUS protocol (e.g., provided by the end host) then it MUST
include the Basic-Policy-Rules and the Extended-Policy-Rules include the Basic-Policy-Rules and the Extended-Policy-Rules
attribute in the Access-Request message towards the home AAA attribute in the Access-Request message towards the home RADIUS
server. Furthermore, the visited network MUST evaluate these server. Furthermore, the visited network MUST evaluate these
rules prior to the transmission of location information either to rules prior to the transmission of location information either to
the home network or a third party. The visited network MUST the home network or a third party. The visited network MUST
follow the guidance given with these rules. follow the guidance given with these rules.
o If the RADIUS client in the visited network receives the Basic- o If the RADIUS client receives the Basic-Policy-Rules attribute
Policy-Rules attribute with Access-Accept or the Access-Challenge with Access-Accept or the Access-Challenge message then the Basic-
message then the Basic-Policy-Rules MUST be attach in subsequent Policy-Rules MUST be attached in subsequent RADIUS messages that
RADIUS messages which contain the Location-Information attribute contains the Location-Information attribute (such as in interim
(such as interim accounting messages). accounting messages).
o If the RADIUS client in the visited network receives the Extended- o If the RADIUS client in the visited network receives the Extended-
Policy-Rules attribute with Access-Accept or the Access-Challenge Policy-Rules attribute with Access-Accept or the Access-Challenge
message then the Basic-Policy-Rules attribute MUST be attach in message then the Basic-Policy-Rules attribute MUST be attached in
subsequent RADIUS messages which contain the Location-Information subsequent RADIUS messages that contains the Location-Information
attribute (such as interim accounting messages). attribute (such as in interim accounting messages).
9.2. Entity in the home network 7.2.2. RADIUS Server
The AAA server in the home network might be an ideal place for The RADIUS server is a natural place for storing authorization
storing authorization policies. The user typically has a contractual policies since the user has some sort of trust relationship with the
relationship with his home network and hence the trust relationship entity operating the RADIUS server. Once the infrastructure is
between them is stronger. Once the infrastructure is deployed and deployed and useful applications are available there might be a
useful applications are available there might be a strong desire to strong desire to use location information for other purposes as well
use location information for other purposes as well (such as location (such as location aware applications). Authorization policy rules
aware applications). Authorization policy rules described in [19] described in [17] and in [16] are tailored for this purpose. These
and in [18] are tailored for this environment. These policies might policies might be useful for limiting further distribution of the
be useful for limiting further distribution of the user's location to user's location to other location based services. The home RADIUS
other location based services. The home AAA server (or a similar server (or a similar entity) thereby acts as a location server for
entity) thereby acts as a location server for access to location access to location services.
services.
The home network MUST behave according to the following guidelines: The home network MUST behave according to the following guidelines:
o As a default policy the home network MUST NOT distribute the o As a default policy the home network MUST NOT distribute the
user's location information to third party entities. user's location information to third party entities.
o If a user provides basic authorization policies then these rules o If a user provides basic authorization policies then the RADIUS
MUST be returned to the visited network in the Access-Accept, the server MUST return these rules to the RADIUS client in the Access-
Access-Reject or the Access-Challenge message. Accept, the Access-Reject or the Access-Challenge message.
o If a user provides basic authorization policies then these rules
MUST be returned to the visited network in the Access-Accept, the
Access-Reject or the Access-Challenge message.
o If a user provides extended authorization policies then they MUST o If a user provides extended authorization policies then the RADIUS
be accessible for the visited networking using a reference to server MUST return these rules to the RADIUS client using a
these rule set. The Extended-Policy-Rules attribute MUST include reference to this rule set. The Extended-Policy-Rules attribute
the reference and they MUST be sent to the visited network in the MUST include the reference and they MUST be sent to the RADIUS
Access-Accept, the Access-Reject or the Access-Challenge message. client in the Access-Accept, the Access-Reject or the Access-
Challenge message.
o The home network MUST follow the user provided rule set for both o The RADIUS server MUST follow the user provided rule set for both
local storage and for further distribution. With regard to the local storage and for further distribution. With regard to the
usage of these rules the home network MUST ensure that the users usage of these rules the entity operating the RADIUS server MUST
preferences are taken care of within the given boundaries (such as ensure that the user's preferences are taken care of within the
legal regulations or operational considerations). For example, a given boundaries (such as legal regulations or operational
user might not want the home network to store information about considerations). For example, a user might not want the home
its location information beyond a indicated time frame. However, network to store information about its location information beyond
a user might on the other hand want to ensure that disputes a indicated time frame. However, a user might on the other hand
concerning the billed amount can be resolved. location information want to ensure that disputes concerning the billed amount can be
might help to resolve the dispute. The user might, for example, resolved. Location information might help to resolve the dispute.
be able to show that he has never been at the indicated place. The user might, for example, be able to show that he has never
been at the indicated place.
o If the policy rules provided by the user indicate that location 7.2.3. RADIUS Broker
information must not be distributed at all then the home network
MUST provide the Basic-Policy-Rules to the RADIUS entity in the When the RADIUS messages traverses one or more RADIUS broker then the
visited network via an Access-Accept, the Access-Reject and the RADIUS broker has to follow the privacy policy before utilizing
Access-Challenge message. The RADIUS server in the user's home location information for a purpose other than then forwarding RADIUS
network would set the 'Retention-Expires' and the 'Retransmission- messages between the RADIUS client and the RADIUS server, and vice
allowed' field to the user indicated value. versa.
7.3. Identity Information and Location Information
For the envisioned usage scenarios, the identity of the user and his For the envisioned usage scenarios, the identity of the user and his
device is tightly coupled to the transfer of location information. device is tightly coupled to the transfer of location information.
If the identity can be determined by the visited network or AAA If the identity can be determined by the visited network or RADIUS
brokers, then it is possible to correlate location information with a brokers, then it is possible to correlate location information with a
particular user. As such, it allows the visited network and brokers particular user. As such, it allows the visited network and brokers
to learn movement patterns of users. to learn movement patterns of users.
The identity of the user can "leak" to the visited network or AAA The user's identity can be "leaked" to the visited network or RADIUS
brokers in a number of ways: brokers in a number of ways:
o The user's device may employ a fixed MAC address, or base its IP o The user's device may employ a fixed MAC address, or base its IP
address on such an address. This enables the correlation of the address on such an address. This enables the correlation of the
particular device to its different locations. Techniques exist to particular device to its different locations. Techniques exist to
avoid the use of an IP address that is based on MAC address [26]. avoid the use of an IP address that is based on MAC address [25].
Some link layers make it possible to avoid MAC addresses or change Some link layers make it possible to avoid MAC addresses or change
them dynamically. them dynamically.
o Network access authentication procedures such as PPP CHAP [27] or o Network access authentication procedures, such as PPP CHAP [26] or
EAP [28] may reveal the user's identity as a part of the EAP [24], may reveal the user's identity as a part of the
authentication procedure. Techniques exist to avoid this problem authentication procedure. Techniques exist to avoid this problem
in EAP, for instance by employing private Network Access in EAP methods, for instance by employing private Network Access
Identifiers (NAIs) in the EAP Identity Response message [29] and Identifiers (NAIs) in the EAP Identity Response message [27] and
by method-specific private identity exchange in the EAP method by method-specific private identity exchange in the EAP method
(e.g., [29], [30], [31]). Support for identity privacy within (e.g., [27], [28] [29], [30]). Support for identity privacy
CHAP is not available. within CHAP is not available.
o AAA protocols may return information from the home network to the o RADIUS may return information from the home network to the visited
visited in a manner that makes it possible to either identify the in a manner that makes it possible to either identify the user or
user or at least correlate his session with other sessions, such at least correlate his session with other sessions, such as the
as the use of static data in a Class attribute [2] or in some use of static data in a Class attribute [2] or in some accounting
accounting attribute usage scenarios [32]. attribute usage scenarios [31].
o Mobility mechanisms may reveal some permanent identifier (such as o Mobility protocols may reveal some long-term identifier, such as a
a home address) in cleartext in the packets relating to mobility home address.
signaling.
o Application protocols may reveal other permanent identifiers. o Application layer protocols may reveal other permanent
identifiers.
Note that to prevent the correlation of identities with location Note that to prevent the correlation of identities with location
information it is necessary to prevent leakage of identity information it is necessary to prevent leakage of identity
information from all sources, not just one. information from all sources, not just one.
Unfortunately, most users are not educated about the importance of Unfortunately, most users are not educated about the importance of
identity confidentiality and there is a lack of support for it in identity confidentiality and some protocols lack support for identity
many protocols. This problem is made worse by the fact that the privacy mechanisms. This problem is made worse by the fact that
users may be unable to choose particular protocols, as the choice is users may be unable to choose particular protocols, as the choice is
often dictated by the type of network they wish to access, the kind often dictated by the type of network operator they use, by the type
of equipment they have, or the type of authentication method they are of network they wish to access, the kind of equipment they have, or
using. the type of authentication method they are using.
A scenario where the user is attached to the home network is, from a A scenario where the user is attached to the home network is, from a
privacy point of view, simpler than a scenario where a user roams privacy point of view, simpler than a scenario where a user roams
into a visited network since the NAS and the home AAA are in the same into a visited network since the NAS and the home RADIUS server are
administrative domain. No direct relationship between the visited in the same administrative domain. No direct relationship between
and the home network operator may be available and some AAA brokers the visited and the home network operator may be available and some
need to be consulted. With subscription-based network access as used RADIUS brokers need to be consulted. With subscription-based network
today the user has a contractual relationship with the home network access as used today the user has a contractual relationship with the
provider which could allow higher privacy considerations to be home network provider that could (theoretically) allow higher privacy
applied (including policy rules stored at the home network itself for considerations to be applied (including policy rules stored at the
the purpose of restricting further distribution). home network itself for the purpose of restricting further
distribution).
In many cases it is necessary to secure the transport of location In many cases it is necessary to secure the transport of location
information along the RADIUS infrastructure. Mechanisms to achieve information along the RADIUS infrastructure. Mechanisms to achieve
this functionality are discussed in Section 10. this functionality are discussed in Section 7.1.
10. Security Considerations
Requirements for the protection of a Location Object are defined in
[10]: Mutual end-point authentication, data object integrity, data
object confidentiality and replay protection. The distribution of
location information can be restricted with the help of authorization
policies. Basic authorization policies are attached to the location
information itself, in the same fashion as described in [21]. It is
possible that the user was already able to transfer some
authorization policies to the access network to restrict the
distribution of location information. This is, however, rather
unlikely in case of roaming users. Hence, it will be primarily the
NAS creating the Location Object which also sets the authorization
policies. If no authorization information is provided by the user
then the visited network MUST set the authorization policies to only
allow the home AAA server to use the provided location information.
Other entities, such as the visited network and possibly AAA brokers
MUST NOT use the location information for a purpose other than
described in this document. More extensible authorization policies
can be stored at the user's home network. These policies are useful
when location information is distributed to other entities in a
location-based service. This scenario is, however, outside the scope
of this document.
It is necessary to use authorization policies to limit the
unauthorized distribution of location information. The security
requirements which are created based on [10] are inline with threats
which appear in the relationship with disclosure of location
information as described in [33]. PIDF-LO [21] proposes S/MIME to
protect the Location Object against modifications. S/SIME relies on
public key cryptography which raises performance, deployment and size
considerations. Encryption would require that the local AAA server
or the NAS knows the recipient's public key (e.g., the public key of
the home AAA server). Knowing the final recipient of the location
information is in many cases difficult for RADIUS entities. Some
sort of public key infrastructure would be required to obtain the
public key and to verify the digital signature (at the home network).
Providing per-object cryptographic protection is, both at the home
and at the visited network, computationally expensive.
If no authentication, integrity and replay protection between the
participating RADIUS entities is provided then an adversaries can
spoof and modify transmitted attributes. Two security mechanisms are
proposed for RADIUS:
o [2] proposes the usage of a static key which might raise some
concerns about the lack dynamic key management.
o RADIUS over IPsec [34] allows to run standard key management
mechanisms, such as KINK, IKE and IKEv2 [35], to establish IPsec
security associations. Confidentiality protection MUST be used to
prevent eavesdropper gaining access to location information.
Confidentiality protection is not only a property required by this
document, it is also required for the transport of keying material
in the context of EAP authentication and authorization. Hence,
this requirement is, in many environments, already fulfilled.
Mutual authentication must be provided between the local AAA
server and the home AAA server to prevent man-in-the-middle
attacks from being successful. This is another requirement raised
in the area of key transport with RADIUS and does not represent a
deployment obstacle. The performance advantages superior compared
to the usage of S/MIME and object security since the expensive
authentication and key exchange protocol run needs to be provided
only once (for a long time). Symmetric channel security with
IPsec is highly efficient. Since IPsec protection is suggested as
a mechanism to protect RADIUS already no additional considerations
need to be addressed beyond those described in [34]. Where an
untrusted AAA intermediary is present, the Location Object MUST
NOT be provided to the intermediary.
In case that IPsec protection is not available for some reason and
RADIUS specific security mechanisms have to be used then the
following considerations apply. The Access-Request message is not
integrity protected. This would allow an adversary to change the
contents of the Location Object or to insert and modify attributes
and fields or to delete attributes. To address these problems the
Message-Authenticator (80) can be used to integrity protect the
entire Access-Request packet. The Message-Authenticator (80) is also
required when EAP is used and hence is supported by many modern
RADIUS servers.
Access-Request packets including Location attribute(s) without a
Message-Authenticator(80) attribute SHOULD be silently discarded by
the RADIUS server. A RADIUS server supporting the Location
attributes MUST calculate the correct value of the Message-
Authenticator(80) and MUST silently discard the packet if it does not
match the value sent.
Access-Accept, including Location attribute(s) without a Message-
Authenticator(80) attribute SHOULD be silently discarded by the NAS.
A NAS supporting the Location attribute MUST calculate the correct
value of a received Message-Authenticator(80) and MUST silently
discard the packet if it does not match the value sent.
RADIUS and Diameter make some assumptions about the trust between
traversed AAA entities in sense that object level security is not
provided by neither RADIUS nor Diameter. Hence, some trust has to be
placed on the AAA entities to behave according to the defined rules.
Furthermore, the AAA protocols do not involve the user in their
protocol interaction except for tunneling authentication information
(such as EAP messages) through their infrastructure. RADIUS and
Diameter have even become a de-facto protocol for key distribution.
Hence, in the past there were some concerns about the trust placed
into the infrastructure particularly from the security area when it
comes to keying. The EAP keying infrastructure is described in [28].
11. IANA Considerations 8. IANA Considerations
The authors request that the Attribute Types, and Attribute Values The authors request that the Attribute Types, and Attribute Values
defined in this document be registered by the Internet Assigned defined in this document be registered by the Internet Assigned
Numbers Authority (IANA) from the RADIUS name spaces as described in Numbers Authority (IANA) from the RADIUS name spaces as described in
the "IANA Considerations" section of RFC 3575 [8], in accordance with the "IANA Considerations" section of RFC 3575 [7], in accordance with
BCP 26 [9]. Additionally, the Attribute Type should be registered in BCP 26 [8]. Additionally, the Attribute Type should be registered in
the Diameter name space. For Radius attributes and registries the Diameter name space. For RADIUS attributes and registries
created by this document IANA is requested to place them at created by this document IANA is requested to place them at
http://www.iana.org/assignments/radius-types. http://www.iana.org/assignments/radius-types.
This document defines the following attributes: This document defines the following attributes:
Operator-Name Operator-Name
Location-Information Location-Information
Location-Data
Basic-Policy-Rules Basic-Policy-Rules
Extended-Policy-Rules Extended-Policy-Rules
Challenge-Capable Challenge-Capable
Requested-Info Requested-Info
Please refer to Section 6 for the registered list of numbers. Please refer to Section 5 for the registered list of numbers.
This document also instructs IANA to assign a new value for the This document also instructs IANA to assign a new value for the
Error-Cause attribute [5], of "Location-Info-Required" TBA. Error-Cause attribute [3], of "Location-Info-Required" TBA.
Additionally, IANA is requested to create the following new Additionally, IANA is requested to create the following new
registries: registries listed in the subsections below.
11.1. New Registry: Operator Namespace Identifier 8.1. New Registry: Operator Namespace Identifier
This document also defines an operator namespace identifier registry This document also defines an operator namespace identifier registry
(used in the Namespace ID field of the Operator-Name attribute). (used in the Namespace ID field of the Operator-Name attribute).
Note that this document requests IANA only to maintain a registry of Note that this document requests IANA only to maintain a registry of
existing namespaces for use in this identifier field, and not to existing namespaces for use in this identifier field, and not to
establish any namespaces nor to place any values within namespaces. establish any namespaces nor to place any values within namespaces.
IANA is requested to add the following values to the operator IANA is requested to add the following values to the operator
namespace identifier registry using a numerical identifier (allocated namespace identifier registry using a numerical identifier (allocated
in sequence), a token for the operator namespace and a contact person in sequence), a token for the operator namespace and a contact person
for the registry. for the registry.
+----------+--------------------+------------------------------------+ +----------+--------------------+------------------------------------+
|Identifier| Operator Namespace | Contact Person | |Identifier| Operator Namespace | Contact Person |
| | Token | | | | Token | |
+----------+--------------------+------------------------------------+ +----------+--------------------+------------------------------------+
| 0 | TADIG | Christer Gullstrand | | 0 | TADIG | TD.13 Coordinator |
| | | (Christer.Gullstrand@syniverse.com)| | | | (td13@gsm.org) |
| 1 | REALM | Hannes Tschofenig | | 1 | REALM | IETF O&M Area Directors |
| | | (Hannes.Tschofenig@siemens.com) | | | | (ops-chairs@ietf.org) |
| 2 | E212 | ITU Director | | 2 | E212 | ITU Director |
| | | (tsbdir@itu.int) | | | | (tsbdir@itu.int) |
| 3 | ICC | ITU Director | | 3 | ICC | ITU Director |
| | | (tsbdir@itu.int) | | | | (tsbdir@itu.int) |
+----------+--------------------+------------------------------------+ +----------+--------------------+------------------------------------+
Requests to IANA for a new value for a Namespace ID will be approved Requests to IANA for a new value for a Namespace ID will be approved
by Expert Review. The Designated Expert Reviewer team for these by Expert Review. The Designated Expert Reviewer team for these
requests is the current Operations Area Director and the RADEXT requests is the current Operations Area Director and the RADEXT
working group chairs or the working group chairs of a designated working group chairs or the working group chairs of a designated
skipping to change at page 50, line 34 skipping to change at page 39, line 34
The Expert Reviewer should ensure that a new entry is indeed required The Expert Reviewer should ensure that a new entry is indeed required
or could fit within an existing database, e.g., whether there is a or could fit within an existing database, e.g., whether there is a
real requirement to provide a token for an Namespace ID because one real requirement to provide a token for an Namespace ID because one
is already up and running, or whether the REALM identifier plus the is already up and running, or whether the REALM identifier plus the
name should recommended to the requester. In addition, the Expert name should recommended to the requester. In addition, the Expert
Reviewer should ascertain to some reasonable degree of diligence that Reviewer should ascertain to some reasonable degree of diligence that
a new entry is a correct reference to an Operator Namespace, when a a new entry is a correct reference to an Operator Namespace, when a
new one is registered. new one is registered.
11.2. New Registry: Requested-Info Attribute 8.2. New Registry: Location Profiles
Section 4.2 defines the Location-Information attribute and a Code
field that contains 8 bit integer value. Two values, zero and one,
are defined in this document, namely:
Value (0): Civic location profile described in Section 4.3.1
Value (1): Geospatial location profile described in Section 4.3.2
The remaining values are reserved for future use.
Following the policies outline in [7] the available bits with a
description of their semantic will be assigned after Expert Review
initiated by the O&M Area Directors in consultation with the RADEXT
working group chairs or the working group chairs of a designated
successor working group. Updates can be provided based on expert
approval only. A designated expert will be appointed by the O&M Area
Directors. No mechanism to mark entries as "deprecated" is
envisioned. Based on expert approval it is possible to delete
entries from the registry.
Each registration must include the value and the corresponding
semantic of the defined location profile.
8.3. New Registry: Challenge Capable Attribute
Section 4.6 defines the Challenge-Capable attribute that contains a
bit map. 16 bits are available whereby a single bit, bit (0),
indicating 'Challenge Capable' is defined by this document. Bits
1-15 are reserved for future use.
Following the policies outline in [7] the available bits with a
description of their semantic will be assigned after Expert Review
initiated by the O&M Area Directors in consultation with the RADEXT
working group chairs or the working group chairs of a designated
successor working group. Updates can be provided based on expert
approval only. A designated expert will be appointed by the O&M Area
Directors. No mechanism to mark entries as "deprecated" is
envisioned. Based on expert approval it is possible to delete
entries from the registry.
Each registration must include the bit position and the semantic of
the bit.
8.4. New Registry: Entity Types
Section 4.2 defines the Location-Information attribute that contains
an 8 bit Entity field. Two values are registered by this document,
namely:
Value (0) describes the location of the user's client device
Value (1) describes the location of the RADIUS client
All other values are reserved for future use.
Following the policies outline in [7] the available bits with a
description of their semantic will be assigned after Expert Review
initiated by the O&M Area Directors in consultation with the RADEXT
working group chairs or the working group chairs of a designated
successor working group. Updates can be provided based on expert
approval only. A designated expert will be appointed by the O&M Area
Directors. No mechanism to mark entries as "deprecated" is
envisioned. Based on expert approval it is possible to delete
entries from the registry.
Each registration must include the value and a corresponding
description.
8.5. New Registry: Privacy Flags
Section 4.4 defines the Basic Policy Rules attribute that contains
flags indicating privacy settings. 16 bits are available whereby a
single bit, bit (0), indicating 'retransmission allowed' is defined
by this document. Bits 1-15 are reserved for future use.
Following the policies outline in [7] the available bits with a
description of their semantic will be assigned after Expert Review
initiated by the O&M Area Directors in consultation with the RADEXT
working group chairs or the working group chairs of a designated
successor working group. Updates can be provided based on expert
approval only. A designated expert will be appointed by the O&M Area
Directors. No mechanism to mark entries as "deprecated" is
envisioned. Based on expert approval it is possible to delete
entries from the registry.
Each registration must include the bit position and the semantic of
the bit.
8.6. New Registry: Requested-Info Attribute
This document creates a new IANA registry for the Requested-Info This document creates a new IANA registry for the Requested-Info
attribute. IANA is requested to add the following four values to attribute. IANA is requested to add the following four values to
this registry: this registry:
+----------+----------------------+ +----------+----------------------+
| Value | Capability Token | | Value | Capability Token |
+----------+----------------------+ +----------+----------------------+
| 1 | CIVIC_LOCATION | | 1 | CIVIC_LOCATION |
| 2 | GEO_LOCATION | | 2 | GEO_LOCATION |
| 4 | USERS_LOCATION | | 4 | USERS_LOCATION |
| 8 | NAS_LOCATION | | 8 | NAS_LOCATION |
+----------+----------------------+ +----------+----------------------+
The semantic of these values is defined in Section 5.8. The semantic of these values is defined in Section 4.7.
Following the policies outline in [8] new Capability Tokens with a Following the policies outline in [7] new Capability Tokens with a
description of their semantic for usage with the Requested-Info description of their semantic for usage with the Requested-Info
attribute will be assigned after Expert Review initiated by the O&M attribute will be assigned after Expert Review initiated by the O&M
Area Directors in consultation with the RADEXT working group chairs Area Directors in consultation with the RADEXT working group chairs
or the working group chairs of a designated successor working group. or the working group chairs of a designated successor working group.
Updates can be provided based on expert approval only. A designated Updates can be provided based on expert approval only. A designated
expert will be appointed by the O&M Area Directors. No mechanism to expert will be appointed by the O&M Area Directors. No mechanism to
mark entries as "deprecated" is envisioned. Based on expert approval mark entries as "deprecated" is envisioned. Based on expert approval
it is possible to delete entries from the registry. it is possible to delete entries from the registry.
Each registration must include: Each registration must include:
skipping to change at page 52, line 5 skipping to change at page 43, line 5
Description: Description:
Brief description indicating the meaning of the info element. Brief description indicating the meaning of the info element.
Numerical Value: Numerical Value:
A numerical value that is placed into the Capability attribute A numerical value that is placed into the Capability attribute
representing a bit in the bit-string of the Requested-Info representing a bit in the bit-string of the Requested-Info
attribute. attribute.
12. Acknowledgments 9. Acknowledgments
The authors would like to thank the following people for their help The authors would like to thank the following people for their help
with a previous version of this draft and for their input: with an initial version of this draft and for their input: Chuck
Black, Paul Congdon, Jouni Korhonen, Sami Ala-luukko, Farooq Bari, Ed
Chuck Black Van Horne, Mark Grayson, Jukka Tuomi, Jorge Cuellar, and Christian
Guenther.
Paul Congdon
Jouni Korhonen
Sami Ala-luukko
Farooq Bari
Ed Van Horne
Mark Grayson
Jukka Tuomi
Jorge Cuellar
Christian Guenther
Henning Schulzrinne provided the civic location information content Henning Schulzrinne provided the civic location information content
found in this draft. The geospatial location information format is found in this draft. The geospatial location information format is
based on work done by J. Polk, J. Schnizlein and M. Linsner. The based on work done by James Polk, John Schnizlein and Marc Linsner.
authorization policy format is based on the work done by Jon The authorization policy format is based on the work done by Jon
Peterson. Peterson.
The authors would like to thank Victor Lortz, Jose Puthenkulam, The authors would like to thank Victor Lortz, Jose Puthenkulam,
Bernrad Aboba, Jari Arkko, Parviz Yegani, Serge Manning, Kuntal Bernrad Aboba, Jari Arkko, Parviz Yegani, Serge Manning, Kuntal
Chowdury, Pasi Eronen, Blair Bullock and Eugene Chang for their Chowdury, Pasi Eronen, Blair Bullock and Eugene Chang for their
feedback to an initial version of this draft. We would like to thank feedback to an initial version of this draft. We would like to thank
Jari Arkko for his text contributions. Lionel Morand provided Jari Arkko for his text contributions. Lionel Morand provided
detailed feedback on numerous issues. His comments helped to improve detailed feedback on numerous issues. His comments helped to improve
the quality of this document. Jouni Korhonen and John Loughney the quality of this document. Jouni Korhonen and John Loughney
helped us with the Diameter RADIUS interoperability. Andreas helped us with the Diameter RADIUS interoperability. Andreas
skipping to change at page 54, line 5 skipping to change at page 43, line 48
working group. Therefore, the authors thank Henning Schulzrinne, working group. Therefore, the authors thank Henning Schulzrinne,
James Polk, John Morris, Allison Mankin, Randall Gellens, Andrew James Polk, John Morris, Allison Mankin, Randall Gellens, Andrew
Newton, Ted Hardie, Jon Peterson for their time to discuss a number Newton, Ted Hardie, Jon Peterson for their time to discuss a number
of issues with us. We thank Stephen Hayes for aligning this work of issues with us. We thank Stephen Hayes for aligning this work
with 3GPP activities. with 3GPP activities.
The RADEXT working group chairs, David Nelson and Bernard Aboba, The RADEXT working group chairs, David Nelson and Bernard Aboba,
provided several draft reviews and we would like to thank them for provided several draft reviews and we would like to thank them for
the help and their patience. the help and their patience.
13. References Finally, we would like to thank Bernard Aboba and Dan Romascanu for
the IETF Last Call comments, Derek Atkins for his security area
directorate review and Yoshiko Chong for spotting a bug in the IANA
consideration section.
13.1. Normative References 10. References
10.1. Normative References
[1] Bradner, S., "Key words for use in RFCs to Indicate Requirement [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels", March 1997. Levels", BCP 14, RFC 2119, March 1997.
[2] Rigney, C., Willens, S., Rubens, A., and W. Simpson, "Remote [2] Rigney, C., Willens, S., Rubens, A., and W. Simpson, "Remote
Authentication Dial In User Service (RADIUS)", RFC 2865, Authentication Dial In User Service (RADIUS)", RFC 2865,
June 2000. June 2000.
[3] Rigney, C., "RADIUS Accounting", RFC 2866, June 2000. [3] Chiba, M., Dommety, G., Eklund, M., Mitton, D., and B. Aboba,
"Dynamic Authorization Extensions to Remote Authentication Dial
In User Service (RADIUS)", RFC 3576, July 2003.
[4] Schulzrinne, H., "Dynamic Host Configuration Protocol (DHCPv4 [4] Schulzrinne, H., "Dynamic Host Configuration Protocol (DHCPv4
and DHCPv6) Option for Civic Addresses Configuration and DHCPv6) Option for Civic Addresses Configuration
Information", draft-ietf-geopriv-dhcp-civil-09 (work in Information", RFC 4776, November 2006.
progress), January 2006.
[5] Chiba, M., Dommety, G., Eklund, M., Mitton, D., and B. Aboba,
"Dynamic Authorization Extensions to Remote Authentication Dial
In User Service (RADIUS)", RFC 3576, July 2003.
[6] Polk, J., Schnizlein, J., and M. Linsner, "Dynamic Host [5] Polk, J., Schnizlein, J., and M. Linsner, "Dynamic Host
Configuration Protocol Option for Coordinate-based Location Configuration Protocol Option for Coordinate-based Location
Configuration Information", RFC 3825, July 2004. Configuration Information", RFC 3825, July 2004.
[7] Calhoun, P., Loughney, J., Guttman, E., Zorn, G., and J. Arkko, [6] Calhoun, P., Loughney, J., Guttman, E., Zorn, G., and J. Arkko,
"Diameter Base Protocol", RFC 3588, September 2003. "Diameter Base Protocol", RFC 3588, September 2003.
[8] Aboba, B., "IANA Considerations for RADIUS (Remote [7] Aboba, B., "IANA Considerations for RADIUS (Remote
Authentication Dial In User Service)", RFC 3575, July 2003. Authentication Dial In User Service)", RFC 3575, July 2003.
[9] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA [8] Narten, T. and H. Alvestrand, "Guidelines for Writing an IANA
Considerations Section in RFCs", BCP 26, RFC 2434, October 1998. Considerations Section in RFCs", BCP 26, RFC 2434,
October 1998.
13.2. Informative References 10.2. Informative References
[10] Cuellar, J., Morris, J., Mulligan, D., Peterson, D., and D. [9] Cuellar, J., Morris, J., Mulligan, D., Peterson, D., and D.
Polk, "Geopriv Requirements", RFC 3693, February 2004. Polk, "Geopriv Requirements", RFC 3693, February 2004.
[11] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., [10] Rigney, C., "RADIUS Accounting", RFC 2866, June 2000.
Peterson, J., Sparks, R., Handley, M., and E. Schooler, "SIP:
Session Initiation Protocol", RFC 3261, June 2002.
[12] Polk, J. and B. Rosen, "Session Initiation Protocol Location
Conveyance", draft-ietf-sip-location-conveyance-04 (work in
progress), August 2006.
[13] "TADIG Naming Conventions, Version 4.1", GSM Association [11] "TADIG Naming Conventions, Version 4.1", GSM Association
Official Document TD.13", , June 2006. Official Document TD.13", , June 2006.
[14] "The international identification plan for mobile terminals and [12] "The international identification plan for mobile terminals and
mobile users, ITU-T Recommendation E.212", , May 2004. mobile users, ITU-T Recommendation E.212", , May 2004.
[15] "Designations for interconnections among operators' networks, [13] "Designations for interconnections among operators' networks,
ITU-T Recommendation M.1400", , January 2004. ITU-T Recommendation M.1400", , January 2004.
[16] "Codes for the representation of names of countries and their [14] "Codes for the representation of names of countries and their
subdivisions - Part 1: Country codes, ISO 3166-1", , 1997. subdivisions - Part 1: Country codes, ISO 3166-1", , 1997.
[17] Mills, D., "Network Time Protocol (Version 3) Specification, [15] Mills, D., "Network Time Protocol (Version 3) Specification,
Implementation", RFC 1305, March 1992. Implementation", RFC 1305, March 1992.
[18] Schulzrinne, H., "Common Policy: A Document Format for [16] Schulzrinne, H., Tschofenig, H., Morris, J., Cuellar, J., Polk,
Expressing Privacy Preferences", J., and J. Rosenberg, "Common Policy: A Document Format for
draft-ietf-geopriv-common-policy-11 (work in progress), Expressing Privacy Preferences", RFC 4745, February 2007.
August 2006.
[19] Schulzrinne, H., "A Document Format for Expressing Privacy [17] Schulzrinne, H., "Geolocation Policy: A Document Format for
Preferences for Location Information", Expressing Privacy Preferences for Location Information",
draft-ietf-geopriv-policy-08 (work in progress), February 2006. draft-ietf-geopriv-policy-12 (work in progress), May 2007.
[20] Rosenberg, J., "The Extensible Markup Language (XML) [18] Rosenberg, J., "The Extensible Markup Language (XML)
Configuration Access Protocol (XCAP)", Configuration Access Protocol (XCAP)",
draft-ietf-simple-xcap-11 (work in progress), May 2006. draft-ietf-simple-xcap-12 (work in progress), October 2006.
[21] Peterson, J., "A Presence-based GEOPRIV Location Object [19] Peterson, J., "A Presence-based GEOPRIV Location Object
Format", RFC 4119, December 2005. Format", RFC 4119, December 2005.
[22] Calhoun, P., Zorn, G., Spence, D., and D. Mitton, "Diameter [20] Calhoun, P., Zorn, G., Spence, D., and D. Mitton, "Diameter
Network Access Server Application", RFC 4005, August 2005. Network Access Server Application", RFC 4005, August 2005.
[23] Eronen, P., Hiller, T., and G. Zorn, "Diameter Extensible [21] Eronen, P., Hiller, T., and G. Zorn, "Diameter Extensible
Authentication Protocol (EAP) Application", RFC 4072, Authentication Protocol (EAP) Application", RFC 4072,
August 2005. August 2005.
[24] "Open Geography Markup Language (GML) Implementation [22] Aboba, B. and P. Calhoun, "RADIUS (Remote Authentication Dial
Specification", OGC 02-023r4, In User Service) Support For Extensible Authentication Protocol
http://www.opengis.org/techno/implementation.htm", , (EAP)", RFC 3579, September 2003.
January 2003.
[25] Stanley, D., Walker, J., and B. Aboba, "Extensible [23] Kaufman, C., "Internet Key Exchange (IKEv2) Protocol",
Authentication Protocol (EAP) Method Requirements for Wireless RFC 4306, December 2005.
LANs", RFC 4017, March 2005.
[26] Narten, T. and R. Draves, "Privacy Extensions for Stateless [24] Aboba, B., Beadles, M., Arkko, J., and P. Eronen, "The Network
Access Identifier", RFC 4282, December 2005.
[25] Narten, T. and R. Draves, "Privacy Extensions for Stateless
Address Autoconfiguration in IPv6", RFC 3041, January 2001. Address Autoconfiguration in IPv6", RFC 3041, January 2001.
[27] Simpson, W., "PPP Challenge Handshake Authentication Protocol [26] Simpson, W., "PPP Challenge Handshake Authentication Protocol
(CHAP)", RFC 1994, August 1996. (CHAP)", RFC 1994, August 1996.
[28] Aboba, B., Beadles, M., Arkko, J., and P. Eronen, "The Network [27] Arkko, J. and H. Haverinen, "Extensible Authentication Protocol
Access Identifier", RFC 4282, December 2005.
[29] Arkko, J. and H. Haverinen, "Extensible Authentication Protocol
Method for 3rd Generation Authentication and Key Agreement Method for 3rd Generation Authentication and Key Agreement
(EAP-AKA)", RFC 4187, January 2006. (EAP-AKA)", RFC 4187, January 2006.
[30] Josefsson, S., Palekar, A., Simon, D., and G. Zorn, "Protected [28] Funk, P. and S. Blake-Wilson, "EAP Tunneled TLS Authentication
Protocol Version 0 (EAP-TTLSv0)", draft-funk-eap-ttls-v0-01
(work in progress), April 2007.
[29] Josefsson, S., Palekar, A., Simon, D., and G. Zorn, "Protected
EAP Protocol (PEAP) Version 2", EAP Protocol (PEAP) Version 2",
draft-josefsson-pppext-eap-tls-eap-10 (work in progress), draft-josefsson-pppext-eap-tls-eap-10 (work in progress),
October 2004. October 2004.
[31] Tschofenig, H., "EAP IKEv2 Method", [30] Tschofenig, H., "EAP IKEv2 Method",
draft-tschofenig-eap-ikev2-11 (work in progress), June 2006. draft-tschofenig-eap-ikev2-13 (work in progress), March 2007.
[32] Adrangi, F., Lior, A., Korhonen, J., and J. Loughney, [31] Adrangi, F., Lior, A., Korhonen, J., and J. Loughney,
"Chargeable User Identity", RFC 4372, January 2006. "Chargeable User Identity", RFC 4372, January 2006.
[33] Danley, M., "Threat Analysis of the Geopriv Protocol", [32] "Open Geography Markup Language (GML) Implementation
Specification", OGC 02-023r4,
http://www.opengis.org/techno/implementation.htm", ,
January 2003.
[33] Stanley, D., Walker, J., and B. Aboba, "Extensible
Authentication Protocol (EAP) Method Requirements for Wireless
LANs", RFC 4017, March 2005.
[34] Danley, M., "Threat Analysis of the Geopriv Protocol",
RFC 3694, September 2003. RFC 3694, September 2003.
[34] Aboba, B. and P. Calhoun, "RADIUS (Remote Authentication Dial [35] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A.,
In User Service) Support For Extensible Authentication Protocol Peterson, J., Sparks, R., Handley, M., and E. Schooler, "SIP:
(EAP)", RFC 3579, September 2003. Session Initiation Protocol", RFC 3261, June 2002.
[35] Kaufman, C., "Internet Key Exchange (IKEv2) Protocol", [36] Polk, J. and B. Rosen, "Session Initiation Protocol Location
RFC 4306, December 2005. Conveyance", draft-ietf-sip-location-conveyance-07 (work in
progress), February 2007.
Appendix A. Matching with Geopriv Requirements
This section compares the requirements for a GEOPRIV Using Protocol,
described in [9], against the approach of distributing Location
Objects with RADIUS.
In Appendix A.1 and Appendix A.2 we discuss privacy implications when
RADIUS is not used according to these usage scenario. In
Appendix A.3 the requirements are matched against these two
scenarios.
A.1. Distribution of Location Information at the User's Home Network
This section focuses on location information transport from the local
RADIUS server (acting as the Location Generator) to the home RADIUS
server (acting as the Location Server). To use a more generic
scenario we assume that the visited RADIUS and the home RADIUS server
belong to different administrative domains. The Location Recipient
obtains location information about a particular Target via protocols
specified outside the scope of this document (e.g., SIP, HTTP or an
API).
Please note that the main usage scenario defined in this document
assumes that the Location Server and the Location Recipient are co-
located into a single entity with regard to location based network
access authorization, taxation and billing.
The subsequent figure shows the interacting entities graphically.
visited network | home network
|
| +----------+
| | Rule |
| | Holder |
| | |
| +----+-----+
| |
| rule|interface
| V
+----------+ | +----------+ +----------+
|Location | publication | Location | notification |Location |
|Generator |<------------->| Server |<------------->|Recipient |
| | interface | | interface | |
+----------+ | +----------+ +----------+
|
Local RADIUS RADIUS Home RADIUS SIP/HTTP/API/etc.
Server | Server
|
Figure 19: Location Server at the Home Network
The term 'Rule Holder' in Figure 19 denotes the entity that creates
the authorization rule set.
A.2. Distribution of Location Information at the Visited Network
This section describes a scenario where location information made
available to Location Recipients by some entity in the visited
network.
In order for this scenario to be applicable the following two
assumptions must hold:
o The visited network deploys a Location Server and wants to
distribute Location Objects
o The visited network is able to learn the user's identity. RFC
4282 [24] and RFC 4372 [31] discuss this aspect in more detail.
The visited network provides location information to a Location
Recipient (e.g., via SIP or HTTP). During the network access
authentication procedure the visited network is able to retrieve the
user's authorization policies from the home RADIUS server. This
should ensure that the visited network acts according to the user's
policies.
The subsequent figure shows the interacting entities graphically.
visited network | home network
|
+----------+ |
|Location | |
|Recipient | |
| | |
+----------+ |
^ | +----------+
| | | Rule |
| | | Holder |
notification | | |
interface | +----+-----+
| | |
| | rule|interface
v | V
+----------+ | +----------+
|Location | Rule Transport| Home |
|Generator |<------------->| RADIUS |
|& Server | RADIUS | Server |
+----------+ | +----------+
|
Figure 20: Location Server at the Visited Network
A.3. Requirements matching
Section 7.1 of [9] details the requirements of a "Location Object".
We discuss these requirements in the subsequent list.
Req. 1. (Location Object generalities):
* Regarding requirement 1.1, the Location Object has to be
understood by the RADIUS server as defined in this document.
Due to the encoding of the Location Object it is possible to
convert it to the format used in GMLv3 [32]. This document
uses the civic and geospatial location information format used
in [5] and in [4]. The format of [5] and of [4] can be
convered into a PIDF-LO [19].
* Regarding requirement 1.2, a number of fields in the civic
location information format are optional.
* Regarding requirement 1.3, the inclusion of type of place item
(CAtype 29) used in the DHCP civic format gives a further
classification of the location. This attribute can be seen as
an extension.
* Regarding requirement 1.4, the location information is not
defined in this document.
* Regarding requirement 1.5, the Location Object is useful for
both receiving and sending location information as described in
this document.
* Regarding requirement 1.6, the Location Object contains both
location information and privacy rules. Location information
is described in Section 4.2, in Section 4.3.1 and in
Section 4.3.2. The corresponding privacy rules are detailed in
Section 4.4 and in Section 4.5.
* Regarding requirement 1.7, the Location Object is usable in a
variety of protocols. The format of the object is reused from
other documents as detailed in Section 4.2, Section 4.3.1,
Section 4.3.2 Section 4.4 and in Section 4.5).
* Regarding requirement 1.8, the encoding of the Location Object
has an emphasis on a lightweight encoding format. As such it
is useable on constrained devices.
Req. 2. (Location Object fields):
* Regarding requirement 2.1, the Target Identifier is carried
within the network access authentication protocol (e.g., within
the EAP-Identity Response when EAP is used and/or within the
EAP method itself). As described in Section 7.2 it has a
number of advantages if this identifier is not carried in
clear. This is possible with certain EAP methods whereby the
identity in the EAP-Identity Response only contains information
relevant for routing the response to the user's home network.
The user identity is protected by the authentication and key
exchange protocol.
* Regarding requirement 2.2, the Location Recipient is in the
main scenario the home RADIUS server. For a scenario where the
Location Recipient is obtaining Location Information from the
Location Server via HTTP or SIP the respective mechanisms
defined in these protocols are used to identify the recipient.
The Location Generator cannot, a priori, know the recipients if
they are not defined in this protocol.
* Regarding requirement 2.3, the credentials of the Location
Recipient are known to the RADIUS entities based on the
security mechanisms defined in the RADIUS protocol itself.
Section 7 describes these security mechanisms offered by the
RADIUS protocol. The same is true for requirement 2.4.
* Regarding requirement 2.5, Section 4.2, Section 4.3.1 and
Section 4.3.2 describe the content of the Location Field.
Since the location format itself is not defined in this
document motion and direction vectors as listed in requirement
2.6 are not defined.
* Regarding requirement 2.6, this document provides the
capability for the RADIUS server to indicate what type of
location information it would like to see from the RADIUS
client.
* Regarding requirement 2.7, timing information is provided with
'sighting time' and 'time-to-live' field defined in
Section 4.2.
* Regarding requirement 2.8, a reference to an external (more
detailed rule set) is provided with the Section 4.5 attribute.
* Regarding requirement 2.9, security headers and trailers are
provided as part of the RADIUS protocol or even as part of
IPsec.
* Regarding requirement 2.10, a version number in RADIUS is
provided with the IANA registration of the attributes. New
attributes are assigned a new IANA number.
Req. 3. (Location Data Types):
* Regarding requirement 3.1, this document reuses civic and
geospatial location information as described in Section 4.3.2
and in Section 4.3.1.
* With the support of civic and geospatial location information
support requirement 3.2 is fulfilled.
* Regarding requirement 3.3, the geospatial location information
used by this document only refers to absolute coordinates.
However, the granularity of the location information can be
reduced with the help of the AltRes, LoRes, LaRes fields
described in [5].
* Regarding requirement 3.4, further Location Data Types can be
added via new coordinate reference systems (CRSs) (see Datum
field in [5]) and via extensions to [5] and [4].
Section 7.2 of [9] details the requirements of a "Using Protocol".
These requirements are listed below:
Req. 4.: The using protocol has to obey the privacy and security
instructions coded in the Location Object regarding the
transmission and storage of the LO. This document requires that
RADIUS entities sending or receiving location MUST obey such
instructions.
Req. 5.: The using protocol will typically facilitate that the keys
associated with the credentials are transported to the respective
parties, that is, key establishment is the responsibility of the
using protocol. Section 7 specifies how security mechanisms are
used in RADIUS and how they can be reused to provide security
protection for the Location Object. Additionally, the privacy
considerations (see Section 7.2) are also relevant for this
requirement.
Req. 6. (Single Message Transfer): In particular, for tracking of
small target devices, the design should allow a single message/
packet transmission of location as a complete transaction. The
encoding of the Location Object is specifically tailored towards
the inclusion into a single message that even respects the (Path)
MTU size. The concept of a transaction is not immediately
applicable to RADIUS.
Section 7.3 of [9] details the requirements of a "Rule based Location
Data Transfer". These requirements are listed below:
Req. 7. (LS Rules): With the scenario shown in Figure 19 the
decision of a Location Server to provide a Location Recipient
access to location information is based on Rule Maker-defined
Privacy Rules that are stored at the home network. With regard to
the scenario shown in Figure 20 the Rule Maker-defined Privacy
Rules are sent from the home network to the visited network (see
Section 4.4, Section 4.5 and Section 7.2 for more details).
Req. 8. (LG Rules): For mid-session delivery it is possible to
enforce the user's privacy rules for the transfer of the Location
Object. For the initial transmission of a Location Object the
user would have to use network access authentication methods which
provide user identity confidentiality which would render the
Location Object completely useless for the visited network. For
the scenario shown in Figure 19 the visited network is already in
possession of the users location information prior to the
authentication and authorization of the user. A correlation
between the location and the user identity might, however, still
not be possible for the visited network (as explained in
Section 7.2). The visited network MUST evaluate ruleset provided
by the home RADIUS server as soon as possible.
Req. 9. (Viewer Rules): The Rule Maker might define (via mechanisms
outside the scope of this document) which policy rules are
disclosed to other entities.
Req. 10. (Full Rule language): Geopriv has defined a rule language
capable of expressing a wide range of privacy rules which is
applicable in the area of the distribution of Location Objects. A
basic ruleset is provided with the Basic-Policy-Rules attribute
Section 4.4. A reference to the extended ruleset is carried in
Section 4.5. The format of these rules are described in [16] and
[17].
Req. 11. (Limited Rule language): A limited (or basic) ruleset is
provided by the Policy-Information attribute Section 4.4 (and as
introduced with PIDF-LO [19]).
Section 7.4 of [9] details the requirements of a "Location Object
Privacy and Security". These requirements are listed below:
Req. 12 (Identity Protection): Support for unlinkable pseudonyms is
provided by the usage of a corresponding authentication and key
exchange protocol. Such protocols are available, for example,
with the support of EAP as network access authentication methods.
Some EAP methods support passive user identity confidentiality
whereas others even support active user identity confidentiality.
This issue is further discussed in Section 7. The importance for
user identity confidentiality and identity protection has already
been recognized as an important property (see for example a
document on 'EAP Method Requirements for Wireless LANs' [33]).
Req. 13. (Credential Requirements): As described in Section 7
RADIUS signaling messages can be protected with IPsec. This
allows a number of authentication and key exchange protocols to be
used as part of IKE, IKEv2 or KINK.
Req. 14. (Security Features): Geopriv defines a few security
requirements for the protection of Location Objects such as mutual
end-point authentication, data object integrity, data object
confidentiality and replay protection. As described in Section 7
these requirements are fulfilled with the usage of IPsec if mutual
authentication refers to the RADIUS entities (acting as various
Geopriv entities) which directly communicate with each other.
Req. 15. (Minimal Crypto): A minimum of security mechanisms are
mandated by the usage of RADIUS. Communication security for
Location Objects between RADIUS infrastructure elements is
provided by the RADIUS protocol (including IPsec and its dynamic
key management framework) rather than on relying on object
security via S/SIME (which is not available with RADIUS).
Authors' Addresses Authors' Addresses
Hannes Tschofenig Hannes Tschofenig
Siemens Nokia Siemens Networks
Otto-Hahn-Ring 6 Otto-Hahn-Ring 6
Munich, Bavaria 81739 Munich, Bavaria 81739
Germany Germany
Email: Hannes.Tschofenig@siemens.com Email: Hannes.Tschofenig@nsn.com
URI: http://www.tschofenig.com URI: http://www.tschofenig.com
Farid Adrangi Farid Adrangi
Intel Corporatation Intel Corporatation
2111 N.E. 25th Avenue 2111 N.E. 25th Avenue
Hillsboro OR Hillsboro OR
USA USA
Email: farid.adrangi@intel.com Email: farid.adrangi@intel.com
skipping to change at page 58, line 7 skipping to change at page 56, line 7
Avi Lior Avi Lior
Bridgewater Systems Corporation Bridgewater Systems Corporation
303 Terry Fox Drive 303 Terry Fox Drive
Ottawa, Ontario K2K 3J1 Ottawa, Ontario K2K 3J1
CANADA CANADA
Email: avi@bridgewatersystems.com Email: avi@bridgewatersystems.com
Full Copyright Statement Full Copyright Statement
Copyright (C) The Internet Society (2006). Copyright (C) The IETF Trust (2007).
This document is subject to the rights, licenses and restrictions This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors contained in BCP 78, and except as set forth therein, the authors
retain all their rights. retain all their rights.
This document and the information contained herein are provided on an This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Intellectual Property Intellectual Property
The IETF takes no position regarding the validity or scope of any The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information made any independent effort to identify any such rights. Information
 End of changes. 224 change blocks. 
1116 lines changed or deleted 1125 lines changed or added

This html diff was produced by rfcdiff 1.33. The latest version is available from http://tools.ietf.org/tools/rfcdiff/