Network Working Group F. Adrangi
Internet-Draft V. Lortz
Expires: June 16, 2005 Intel
F. Bari
AT&T Wireless
P. Eronen
Nokia
December 16, 2004
Identity selection hints for Extensible Authentication Protocol (EAP)
draft-adrangi-eap-network-discovery-07
Status of this Memo
This document is an Internet-Draft and is subject to all provisions
of section 3 of RFC 3667. By submitting this Internet-Draft, each
author represents that any 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 become aware will be disclosed, in accordance with
RFC 3668.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as
Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on June 16, 2005.
Copyright Notice
Copyright (C) The Internet Society (2004).
Abstract
The Extensible Authentication Protocol (EAP) is defined in RFC 3748.
This document defines a mechanism that allows an access network to
provide identity selection hints to an EAP peer. The purpose is to
Adrangi, et al. Expires June 16, 2005 [Page 1]
Internet-Draft Identity selection hints for EAP December 2004
assist the EAP peer in selecting an appropriate Network Access
Identifier (NAI). This is especially useful when the access network
does not have a direct roaming relationship with the peer's home
network, so that a mediating network, such as a roaming consortium or
broker, is used.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1 Terminology . . . . . . . . . . . . . . . . . . . . . . . 3
2. Implementation requirements . . . . . . . . . . . . . . . . . 4
2.1 Packet format . . . . . . . . . . . . . . . . . . . . . . 4
3. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
4. Security considerations . . . . . . . . . . . . . . . . . . . 5
5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 6
6. Appendix A (informative) - Delivery Options . . . . . . . . . 6
7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 9
7.1 Normative references . . . . . . . . . . . . . . . . . . . 9
7.2 Informative references . . . . . . . . . . . . . . . . . . 10
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 10
Intellectual Property and Copyright Statements . . . . . . . . . . 12
Adrangi, et al. Expires June 16, 2005 [Page 2]
Internet-Draft Identity selection hints for EAP December 2004
1. Introduction
An EAP peer (hereafter, also referred to as the peer) can have
several sets of credentials, and its home network may have roaming
relationships with several mediating networks. As a result, the peer
may be unclear about the appropriate Network Access Identity (NAI) to
include in an EAP-Response/Identity.
The Extensible Authentication Protocol (EAP) is defined in [RFC3748].
This document defines a mechanism that allows the access network to
provide identity selection hints, including information about its
roaming relationships, to an EAP peer. This information is sent to
the peer in an EAP-Request/Identity message by appending it after the
displayable message and a NUL character.
Exactly how the identity hint information is used by the peer depends
largely on the peer's local policy and configuration, and is outside
the scope of this document.
In many roaming situations, an access network can have several
roaming relationships, either with several home networks, or with
mediating networks such as roaming consortiums and brokers, or both.
One possible application for this mechanism is to help in selecting
what kind of NAI decoration [rfc2486bis] must be applied to allow
proper routing of AAA messages to the home AAA server. If there are
several possible mediating networks, the peer can choose which one to
use. However, exactly how the selection is made is beyond the scope
of this document. See [netsel-problem] for more detailed discussion
about this problem space.
Section 2 describes the required behavior of implementations of this
specification, as well as the packet format for structuring and
presenting identity hint information to an EAP peer. The appendix A
describes the delivery options that can be implemented by an access
network to deliver identity hint information to an EAP peer.
1.1 Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119].
NAI Network Address Identifier [rfc2486bis].
Adrangi, et al. Expires June 16, 2005 [Page 3]
Internet-Draft Identity selection hints for EAP December 2004
Decorated NAI An NAI with additional information for influencing
AAA routing. Please refer to section 2.7 of
[rfc2486bis] for its construction.
NAI Realm Realm portion of an NAI [rfc2486bis].
2. Implementation requirements
An EAP peer implementing this specification MUST be able to receive
an identity hint in an initial EAP-Request/Identity, or in a
subsequent EAP-Request/Identity.
The EAP authenticator MAY send an identity hint to the peer in the
initial EAP-Request/Identity. If the identity hint is not sent
initially (such as when the authenticator does not support this
specification), then if the EAP server receives an
EAP-Response/Identity with an unacceptable NAI Realm, EAP servers
implementing this specification SHOULD reply with an
EAP-Request/Identity containing an identity hint.
If after the EAP server sends an EAP-Request/Identity containing an
identity hint, the peer responds with an EAP-Response/Identity
containing an unacceptable NAI Realm, then the EAP server MAY respond
immediately with an EAP Failure packet, or it MAY first send an
EAP-Notification providing the reason for the failure.
As noted in [RFC3748], Section 3.1, the minimum EAP MTU size is 1020
octets. EAP does not support fragmentation of EAP-Request/Identity
messages, so that the maximum length of the identity hint information
is limited by the link MTU.
2.1 Packet format
The Identity hint information is placed after the displayable string
and a NUL character in the EAP-Request/Identity. The following ABNF
[RFC2234] defines an NAIRealms attribute for presenting the identity
hint information. The attribute's value consists of a set of realm
names separated by a semicolon.
identity-request-data = [ displayable-string ] "%x00" [ Network-Info ]
displayable-string = *CHAR
Network-Info = "NAIRealms=" realm-list
Network-Info =/ 1*OCTET ",NAIRealms=" realm-list
Network-Info =/ "NAIRealms=" realm-list "," 1*OCTET
Network-Info =/ 1*OCTET ",NAIRealms=" realm-list "," 1*OCTET
Adrangi, et al. Expires June 16, 2005 [Page 4]
Internet-Draft Identity selection hints for EAP December 2004
realm-list = realm /
( realm-list ";" realm )
The "OCTET" and "CHAR" rules are defined in [RFC2234] and the "realm"
rule is defined in [rfc2486bis].
A sample hex dump of an EAP-Request/Identity packet is shown below.
01 ; Code: Request
00 ; Identifier: 0
00 43 ; Length: 67 octets
01 ; Type: Identity
48 65 6c 6c 6f 21 00 4e ; "Hello!\0NAIRealms=example.com;mnc014.
41 49 52 65 61 6c 6d 73 ; mcc310.3gppnetwork.org"
3d 69 73 70 2e 65 78 61
6d 70 6c 65 2e 63 6f 6d
3b 6d 6e 63 30 31 34 2e
6d 63 63 33 31 30 2e 33
67 70 70 6e 65 74 77 6f
72 6b 2e 6f 72 67
The Network-Info can contain NAIRealms list in addition to
proprietary information. The proprietary information can be placed
before or after NAIRealms list. To extract NAIRealms list, an
implementation either finds the "NAIRealms=" immediately after the
NUL or seeks forward to find ",NAIRealms" somewhere in the string.
The realms data ends either at first "," or at the end of the string,
whichever comes first.
3. IANA Considerations
This document does not define any new namespaces to be managed by
IANA, and does not require any assignments in existing namespaces.
4. Security considerations
Identity hint information is delivered inside an EAP-Request/Identity
before the authentication conversation begins, and therefore can be
modified by an attacker. The NAIRealms attribute therefore MUST be
treated as a hint by the peer
Unauthenticated hints may result in peers inadvertently revealing
additional identities, compromising privacy. Since the
EAP-Response/Identity is sent in the clear, this vulnerability
already exists. This vulnerability can be addressed via
method-specific identity exchanges.
Similarly, in a situation where the peer has multiple identities to
Adrangi, et al. Expires June 16, 2005 [Page 5]
Internet-Draft Identity selection hints for EAP December 2004
choose from, an attacker can use a forged hint to convince the peer
to choose an identity bound to a weak EAP method. Requiring the use
of strong EAP methods can protect against this. A similar issue
already exists with respect to unprotected link layer advertisements
such as 802.11 SSIDs.
Where the identity hint is used to select a mediating network, with
existing EAP methods there may not be a way for the home AAA server
to verify that the mediating network selected by the peer was
actually used.
5. Acknowledgements
The authors would specially like to thank Jari Arkko and Bernard
Aboba for their help in scoping the problem, for reviewing the draft
work in progress and for suggesting improvements to it.
The authors would also like to acknowledge and thank Adrian Buckley,
Blair Bullock, Jose Puthenkulam, Johanna Wild, Joe Salowey, Marco
Spini, Simone Ruffino, Mark Grayson, Mark Watson, and Avi Lior for
their support, feedback and guidance during the various stages of
this work.
6. Appendix A (informative) - Delivery Options
Although the delivery options are described in the context of IEEE
802.11 access networks, they are applicable to other access networks
that use EAP [RFC3748] for authentication and use the NAI format
[rfc2486bis] for identifying users. Also, the options assume that
the AAA protocol in use is RADIUS [RFC2865]. Diameter [RFC3588]
could also be used instead of RADIUS without introducing significant
architectural differences.
The main difference amongst the options is which entity in the access
network creates the EAP-Request/Identity. For example, the role of
EAP server may be played by the EAP authenticator (where an initial
EAP-Request/Identity is sent with an identity hint), or a RADIUS
proxy/server (where the NAI Realm is used for forwarding).
When an Identity hint is sent by a RADIUS proxy/server, a RADIUS
State (24) attribute can be used to help the RADIUS proxy/server
determine if an identity hint had previously been sent by it to the
EAP peer.
The RADIUS proxy/server acts only on the RADIUS UserName(1) attribute
and does not have to parse the EAP-Message attribute.
Option 1: Initial EAP-Request/Identity from access point
Adrangi, et al. Expires June 16, 2005 [Page 6]
Internet-Draft Identity selection hints for EAP December 2004
In typical IEEE 802.11 wireless LANs, the initial
EAP-Request/Identity is sent by the access point (i.e., EAP
authenticator). In the simplest case, the identity hint information
is simply included in this request, as shown below.
EAP Access Point local RADIUS home RADIUS
Peer proxy/server server
| 1. EAP | | |
| Request/Identity | | |
| (NAIRealms) | | |
|<------------------| | |
| 2. EAP | | |
| Response/Identity| | |
|------------------>| | |
| | 3. Access-Request | |
| | (EAP | |
| | Response/Identity)| |
| |------------------->| |
| | | 4.Access-Request |
| | | (EAP |
| | | Response/Identity) |
| | |------------------->|
| | | |
|<-------------------EAP conversation ----------------------->|
Current access points do not support this mechanism, so other options
may be preferable. This option can also require configuring the
identity hint information in a potentially large number of access
points, which may be problematic if the information changes often.
Option 2: Initial EAP-Request/Identity from local RADIUS proxy/server
This is similar to Option 1, but the initial EAP-Request/Identity is
created by the local RADIUS proxy/server instead of the access point.
Once a peer associates with an access network AP using IEEE 802.11
procedures, the AP sends an EAP-Start message [RFC3579] within a
RADIUS Access-Request. The access network RADIUS server can then
send the EAP-Request/Identity containing the identity hint
information.
Adrangi, et al. Expires June 16, 2005 [Page 7]
Internet-Draft Identity selection hints for EAP December 2004
EAP Access Point local RADIUS home RADIUS
Peer proxy/server server
| | 1. Access-Request | |
| | (EAP-Start) | |
| |------------------->| |
| | 2.Access-Challenge | |
| | (EAP | |
| | Request/Identity | |
| | with NAIRealms) | |
| |<-------------------| |
| 3. EAP | | |
| Request/Identity | | |
| (NAIRealms) | | |
|<------------------| | |
| 4. EAP | | |
| Response/Identity | | |
|------------------>| | |
| | 5. Access-Request | |
| | (EAP | |
| | Response/Identity) | |
| |------------------->| |
| | | 6. Access-Request |
| | | (EAP |
| | | Response/Identity) |
| | |------------------->|
| | | |
|<------------------- EAP conversation ---------------------->|
This option can work with current access points if they support the
EAP-Start message.
Option 3: Subsequent EAP-Request/Identity from local RADIUS
proxy/server
In the third option, the access point sends the initial
EAP-Request/Identity without any hint information. The peer then
responds with an EAP-Response/Identity, which is forwarded to the
local RADIUS proxy/server. If the RADIUS proxy/server cannot route
the message based on the identity provided by the peer, it sends a
second EAP-Request/Identity containing the identity hint information.
Adrangi, et al. Expires June 16, 2005 [Page 8]
Internet-Draft Identity selection hints for EAP December 2004
EAP Access Point local RADIUS home RADIUS
Peer Proxy/Server server
| | | |
| 1. EAP | | |
| Request/Identity | | |
| (w/o NAIRealms) | | |
|<------------------| | |
| 2. EAP | | |
| Response/Identity | | |
|------------------>| | |
| | 3. Access-Request | |
| | (EAP | |
| | Response/Identity) | |
| |------------------->| |
| | 4.Access-Challenge | |
| | (EAP | |
| | Request/Identity | |
| | with NAIRealms) | |
| |<-------------------| |
| 5. EAP | | |
| Request/Identity | | |
| (NAIRealms) | | |
|<------------------| | |
| 6. EAP | | |
| Response/Identity | | |
|------------------>| | |
| | 7. Access-Request | |
| | (EAP | |
| | Response/Identity) | |
| |------------------->| |
| | | 8. Access-Request |
| | | (EAP |
| | | Response/Identity) |
| | |------------------->|
| | | |
|<-------------------- EAP conversation --------------------->|
This option does not require changes to existing NASes, so it may be
preferable in many environments.
7. References
7.1 Normative references
[rfc2486bis]
Aboba, B., Beadles, M., Arkko, J. and P. Eronen, "The
Network Access Identifier",
Adrangi, et al. Expires June 16, 2005 [Page 9]
Internet-Draft Identity selection hints for EAP December 2004
draft-arkko-roamops-rfc2486bis-02 (work in progress), July
2004.
[RFC3748] Aboba, B., Blunk, L., Vollbrecht, J., Carlson, J. and H.
Levkowetz, "Extensible Authentication Protocol (EAP)", RFC
3748, June 2004.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2234] Crocker, D. and P. Overell, "Augmented BNF for Syntax
Specifications: ABNF", RFC 2234, November 1997.
7.2 Informative references
[RFC3579] Aboba, B. and P. Calhoun, "RADIUS (Remote Authentication
Dial In User Service) Support For Extensible
Authentication Protocol (EAP)", RFC 3579, September 2003.
[netsel-problem]
Arkko, J. and B. Aboba, "Network Discovery and Selection
Problem", draft-ietf-eap-netsel-problem-01 (work in
progress), July 2004.
[RFC3588] Calhoun, P., Loughney, J., Guttman, E., Zorn, G. and J.
Arkko, "Diameter Base Protocol", RFC 3588, September 2003.
[RFC2865] Rigney, C., Willens, S., Rubens, A. and W. Simpson,
"Remote Authentication Dial In User Service (RADIUS)", RFC
2865, June 2000.
Authors' Addresses
Farid Adrangi
Intel Corporation
2111 N.E. 25th Avenue
Hillsboro, OR 97124
USA
Phone: +1 503-712-1791
EMail: farid.adrangi@intel.com
Adrangi, et al. Expires June 16, 2005 [Page 10]
Internet-Draft Identity selection hints for EAP December 2004
Victor Lortz
Intel Corporation
2111 N.E. 25th Avenue
Hillsboro, OR 97124
USA
Phone: +1 503-264-3253
EMail: victor.lortz@intel.com
Farooq Bari
AT&T Wireless
7277 164th Avenue N.E.
Redmond, WA 98052
USA
Phone: +1 425-580-5526
EMail: farooq.bari@attws.com
Pasi Eronen
Nokia Research Center
P.O. Box 407
FIN-00045 Nokia Group
Finland
EMail: pasi.eronen@nokia.com
Adrangi, et al. Expires June 16, 2005 [Page 11]
Internet-Draft Identity selection hints for EAP December 2004
Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
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
made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at
ietf-ipr@ietf.org.
Disclaimer of Validity
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Copyright Statement
Copyright (C) The Internet Society (2004). This document is subject
to the rights, licenses and restrictions contained in BCP 78, and
except as set forth therein, the authors retain all their rights.
Acknowledgment
Funding for the RFC Editor function is currently provided by the
Internet Society.
Adrangi, et al. Expires June 16, 2005 [Page 12]