<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.21 (Ruby 2.6.10) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>


<rfc ipr="trust200902" docName="draft-tomas-openroaming-08" category="info" submissionType="independent" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="WBA OpenRoaming">WBA OpenRoaming Wireless Federation</title>

    <author initials="B." surname="Tomas" fullname="Bruno Tomas">
      <organization>Wireless Broadband Alliance, Inc.</organization>
      <address>
        <postal>
          <street>5000 Executive Parkway, Suite 302</street>
          <city>San Ramon</city>
          <code>94583</code>
          <country>US</country>
        </postal>
        <email>bruno@wballiance.com</email>
      </address>
    </author>
    <author initials="M." surname="Grayson" fullname="Mark Grayson">
      <organization>Cisco Systems</organization>
      <address>
        <postal>
          <street>10 New Square Park</street>
          <city>Feltham</city>
          <code>TW14 8HA</code>
          <country>UK</country>
        </postal>
        <email>mgrayson@cisco.com</email>
      </address>
    </author>
    <author initials="N." surname="Canpolat" fullname="Necati Canpolat">
      <organization>Intel Corporation</organization>
      <address>
        <postal>
          <street>2111 NE. 25th Ave</street>
          <city>Hillsboro</city>
          <code>97124</code>
          <country>US</country>
        </postal>
        <email>necati.canpolat@intel.com</email>
      </address>
    </author>
    <author initials="B. A." surname="Cockrell" fullname="Betty A. Cockrell">
      <organization>Independent</organization>
      <address>
        <postal>
          <city>San Antonio</city>
          <country>US</country>
        </postal>
        <email>bcbeti@outlook.com</email>
      </address>
    </author>
    <author initials="S." surname="Gundavelli" fullname="Sri Gundavelli">
      <organization>Cisco Systems</organization>
      <address>
        <postal>
          <street>170 West Tasman Drive</street>
          <city>San Jose</city>
          <code>95134</code>
          <country>US</country>
        </postal>
        <email>sgundave@cisco.com</email>
      </address>
    </author>
    <author initials="S." surname="Adamski" fullname="Seb Adamski">
      <organization>IronWiFi</organization>
      <address>
        <postal>
          <street>100 E Pine St, Ste 110</street>
          <city>Orlando</city>
          <code>32801</code>
          <country>US</country>
        </postal>
        <email>seb@ironwifi.com</email>
      </address>
    </author>

    <date year="2026" month="June" day="12"/>

    <area>general</area>
    <workgroup>Independent Submission</workgroup>
    <keyword>Internet-Draft</keyword> <keyword>OpenRoaming</keyword> <keyword>Federation</keyword>

    <abstract>


<?line 198?>

<t>This document describes the Wireless Broadband Alliance's OpenRoaming system.
The OpenRoaming architecture enables a seamless onboarding experience for
devices connecting to access networks that are part of the federation of access
networks and identity providers. The primary objective of this document is to
describe the protocols that form the foundation for this architecture, enabling
providers to correctly  configure their equipment to support interoperable
OpenRoaming signalling exchanges. In addition, the topic of OpenRoaming has been
raised in different IETF working groups, and therefore a secondary objective is
to assist those discussions by describing the federation organization and
framework.</t>



    </abstract>



  </front>

  <middle>


<?line 211?>

<section anchor="intro"><name>Introduction</name>

<t>WBA OpenRoaming is a roaming federation service of Access Network Providers
(ANPs) and Identity Providers (IDPs), enabling an automatic and secure Wi-Fi
experience globally. WBA OpenRoaming creates the framework to seamlessly
connect billions of users and things to millions of Wi-Fi networks.</t>

<figure title="OpenRoaming Federation" anchor="figfedarch"><artwork><![CDATA[
ANP-1 --\                    _----_                     /-- IDP-1
         \     Access      _( Open )_      Identity    /
ANP-2  ---<==  Network ---(  Roaming )---  Providers <==-- IDP-2
         /     Providers   (_      _)                  \
ANP-3 --/                    '----'                     \-- IDP-3

]]></artwork></figure>

<t>WBA OpenRoaming recognizes the benefits that the likes of eduroam <xref target="RFC7593"/>
provides to the education and research community. WBA OpenRoaming defines a
global federation that is targeted at serving all communities, while supporting
both settlement-free use cases where "free" Wi-Fi is being offered to end-users
in order to support some alternative value proposition, as well as traditional
settled "paid" for Wi-Fi offered by some cellular providers.</t>

<t>OpenRoaming is designed to deliver end-to-end security between a Network Access
Server (NAS) deployed by an OpenRoaming Access Network Provider and an EAP Server
<xref target="RFC3748"/> deployed by an OpenRoaming Identity Provider. The security of the
solution is based on mTLS using certificates issued under Wireless Broadband
Alliance's Public Key Infrastructure <xref target="RFC5280"/>.</t>

<section anchor="Requirements"><name>Requirements Language</name>
<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL",
"SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT
RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be
interpreted as described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/>
when, and only when, they appear in all capitals, as shown here.</t>

</section>
<section anchor="Terminology"><name>Terminology</name>

<t>Access Network Query Protocol (ANQP):</t>

<ul empty="true"><li>
  <t>An IEEE 802.11 defined protocol that allows for access network information
retrieval in a pre-association state. ANQP has been further extended by the
Wi-Fi Alliance (WFA) as part of its Passpoint program <xref target="PASSPOINT"/>.</t>
</li></ul>

<t>Access Network Provider (ANP):</t>

<ul empty="true"><li>
  <t>An entity that has joined the federation and serves OpenRoaming end-users by
configuring the OpenRoaming RCOI(s) on its Wi-Fi equipment. Entities do not have
to join the WBA in order to oeprate as an OpenRoaming ANP.</t>
</li></ul>

<t>Broker:</t>

<ul empty="true"><li>
  <t>An entity that is a WBA member which has joined the federation and performs
certain specific roles to help scale the operation of the federation. The
separate roles of a broker can include:</t>
</li></ul>

<ul empty="true"><li>
  <ul empty="true"><li>
    <t><list style="numbers" type="1">
      <t>Assigning WBA identities (WBAIDs) to ANPs and IDPs.</t>
      <t>Operating an issuing intermediate certification authority under the WBA's
PKI and issuing certificates to ANPs and IDPs.</t>
      <t>Operating a registration authority to a third party operated issuing
intermediate certification authority under WBA's PKI to enable certificates to be
issued to ANPs, hub-providers and IDPs.</t>
    </list></t>
  </li></ul>
</li></ul>

<t>Closed Access Group (CAG):</t>

<ul empty="true"><li>
  <t>The definition of the 12 most significant bits of an OUI-36 RCOI to indicate
OpenRoaming policy controls that can be enforced by ANPs and IDPs.</t>
</li></ul>

<t>Identity Provider (IDP):</t>

<ul empty="true"><li>
  <t>An entity that has joined the federation and
includes the OpenRoaming RCOI(s) in the Passpoint profile of its end-user
devices and authenticates end-user devices on OpenRoaming ANP networks. Entities
do not have to join the WBA in order to oeprate as an OpenRoaming IDP.</t>
</li></ul>

<t>Level of Assurance (LoA):</t>

<ul empty="true"><li>
  <t>An ISO/IEC 29115 term <xref target="ISO29115"/> that is used to define equivalent levels for
handling of end-user enrollment, credential management and authentication
amongst different IDPs.</t>
</li></ul>

<t>OpenRoaming-Settled:</t>

<ul empty="true"><li>
  <t>The "base RCOI" of BA-A2-D0 that is used to indicate that the ANP expects to
receive payment for providing OpenRoaming service to end-users.</t>
</li></ul>

<t>OpenRoaming-Settlement-Free:</t>

<ul empty="true"><li>
  <t>The "base RCOI" of 5A-03-BA that is used to indicate that the ANP provides the
OpenRoaming service to end-users at no cost to the IDP.</t>
</li></ul>

<t>Passpoint Profile:</t>

<ul empty="true"><li>
  <t>Passpoint is a Wi-Fi Alliance (WFA) certification program that defines the use
a Passpoint profile, that includes the user's credentials and the access network
identifiers, that enables Wi-Fi devices to automatically discover and
authenticate to Wi-Fi hotspots that provide Internet access <xref target="PASSPOINT"/>.</t>
</li></ul>

<t>PLMN Id:</t>

<ul empty="true"><li>
  <t>A unique identifier for a mobile network (cellular) operator. The identifier
consists of a MCC (Mobile Country Code) and a MNC (Mobile Network Code). ITU-T
Recommendation <xref target="E212"/> defines both MCC and MNC. The ITU allocates MCC values
to national regulators who are then responsible for allocating MNC values to
individual mobile network operators.  <xref target="PASSPOINT"/> defines how the PLMN Id
can be sent in ANQP messages.</t>
</li></ul>

<t>Roaming Consortium Identifier (RCOI):</t>

<ul empty="true"><li>
  <t>An RCOI identifies the groups of identity providers that are supported by the
network. It is a 3-octet, or a 5-octet value carried in the 802.11 beacon
information element (IE). It is also sent in the ANQP messages. Based on the
access technologies, the specific link-layer protocols will be used for carrying
the RCOI. RCOI is also part of the Passpoint profile.</t>
</li></ul>

<ul empty="true"><li>
  <t>NOTE: OpenRoaming only uses 5-octet RCOIs.</t>
</li></ul>

<t>Subscriber Identity Module (SIM):</t>

<ul empty="true"><li>
  <t>The SIM is traditionally a smart card distributed by a mobile operator.</t>
</li></ul>

<t>WBA Identity (WBAID):</t>

<ul empty="true"><li>
  <t>A hierarchical namespace that is used to uniquely identify every OpenRoaming
entity (ANP, IDP, broker or hub-provider).</t>
</li></ul>

<t>Wireless Roaming Intermediary eXchange (WRIX):</t>

<ul empty="true"><li>
  <t>A framework, aimed at facilitating interconnectivity between operators and the
Wi-Fi roaming hub services.</t>
</li></ul>

</section>
</section>
<section anchor="wireless-broadband-alliance"><name>Wireless Broadband Alliance</name>

<t>The Wireless Broadband Alliance (WBA) defines the Wireless Roaming Intermediary
eXchange (WRIX) framework, aimed at facilitating interconnectivity between Wi-Fi
operators and the Wi-Fi roaming hub services, as well as the Carrier Wi-Fi
Services program that provides guidelines to improve customer experience on
Carrier Wi-Fi networks. Both of these programs leverage the Wi-Fi Alliance
specified Passpoint functionality <xref target="PASSPOINT"/> to enable automatic and secure
connectivity to Wi-Fi networks, allowing devices to be provisioned with network
access credentials with minimal user interaction.</t>

<t>WBA programs have traditionally focussed on "offloading" cell phone data from
cellular networks onto Wi-Fi networks. Deployments of such systems have seen
uneven adoption across geographies, with cellular operators frequently limiting
their engagement to premier locations that have deployed Wi-Fi and experience
a significant footfall of operator's customers.</t>

<t>Whereas conventional Carrier Wi-Fi has focused on premier locations, the last
decade has seen a continued increase in the requirements of private Wi-Fi
networks to be able to serve visitors, contractors and guest users. Moreover, in
most of these scenarios, the Wi-Fi network is primarily being used to support
some alternative value proposition; an improved retail experience in a shopping
mall, a more efficient meeting in a carpeted office, a superior stay in a
hospitality venue, or a better fan experience in a sporting arena.
Traditionally, this segment has made wide-scale use of captive portals and
unencrypted Wi-Fi links to onboard end-users onto their networks <xref target="RFC8952"/>.
However, increasing concerns around sending Internet traffic over open,
untrusted networks, together with the decreasing costs for cellular data, mean
that end-users are less motivated to search out and attach to such "free" Wi-Fi
networks, and as a consequence, captive portal conversion rates continue to
decrease.</t>

<t>As a consequence, in 2020 WBA launched its OpenRoaming federation, designed to
provide a better on-boarding experience to end-users, that is seamless, scalable
and secure.</t>

</section>
<section anchor="orarch"><name>OpenRoaming Architecture</name>

<t><xref target="figwifiarch"/> contrasts a conventional carrier Wi-Fi roaming system with
OpenRoaming. As illustrated, conventional Wi-Fi roaming has typically been based
on:</t>

<t><list style="numbers" type="1">
  <t>IPSec <xref target="RFC6071"/> tunnels established between access networks, hub-providers
and identity providers used to protect exchanged signalling.</t>
  <t>Static routing of RADIUS signalling <xref target="RFC2865"/> based on realm routing tables
populated according to agreements between access networks and hub-providers.</t>
  <t>Passpoint primarily used with SIM based identifiers, where individual
PLMN Ids are configured on the access networks WLAN equipment enabling them to
be sent in ANQP messages, and cellular providers enable Passpoint based SIM
authentication in end-user devices.</t>
  <t>EAP-AKA <xref target="RFC4187"/> based Passpoint authentication exchanged between the
Supplicant in the end-user device and the EAP Server in the cellular provider's
network.</t>
  <t>A primary focus on carrier based identities where the end-user has a billing
relationship with the carrier.</t>
</list></t>

<t>In contrast, OpenRoaming is based on:</t>

<t><list style="numbers" type="1">
  <t>RadSec signalling <xref target="RFC6614"/> secured using mTLS with certificates issued
under WBA's private certification authority.</t>
  <t>Dynamic routing of RADIUS based on DNS-based discovery of signalling peers,
as specified in <xref target="RFC7585"/>.</t>
  <t>Passpoint based network selection based on 36-bit Roaming Consortium
Organization Identifiers (RCOIs), where WBA defines the use of the 12 most
significant bits of the 36-bit RCOI to embed closed access group policies.</t>
  <t>Passpoint authentication that can use any suitable EAP method.</t>
  <t>Encompassing new identity providers who do not necessarily have a billing
relationship with their end-users.</t>
</list></t>

<t>Example EAP methods used with Passpoint include EAP-TLS, EAP-SIM, EAP-AKA,
EAP-AKA' and EAP-TTLS with MS-CHAP-V2 that are included in Table 4 of the
Passpoint specification <xref target="PASSPOINT"/>. In addition to these 5 EAP methods, Wi-Fi
devices are available that can be configured to use different EAP type with
Passpoint, including Passpoint with Protected EAP (PEAP) <xref target="PEAP"/>, EAP-TEAP
<xref target="RFC7170"/> and EAP-FAST <xref target="RFC4851"/> outer methods, together with alternative
inner methods to MS-CHAP-V2 used inside EAP-TTLS, including EAP-TLS.
Because OpenRoaming ANPs have no direct relationship with OpenRoaming IDPs that
decide the credential type and EAP method to use when authenticating end-user
devices, OpenRoaming ANPs SHOULD ensure that all EAP Methods compatible with
Passpoint can be used to authenticate end-user devices.</t>

<figure title="Contrasting Conventional Carrier Wi-Fi and OpenRoaming Architectures" anchor="figwifiarch"><artwork><![CDATA[
+---------+        +--------+        +--------+        +--------+
| Visited |        | Wi-Fi  |        | Wi-Fi  |        |Cellular|
|  Wi-Fi  |        |  Hub   |        |  Hub   |        |Provider|
| Network |<------>|Provider|<------>|Provider|<------>|Network |
|         | RADIUS |        | RADIUS |        | RADIUS |        |
|   NAS   |        | RADIUS |        | RADIUS |        | RADIUS |
|         |<------>| proxy  |<------>| proxy  |<------>| Server |
|Passpoint| IPSec  +--------+ IPSec  +--------+ IPSec  +--------+
|PLMNId(s)|
+---------+
    /|\
     |
    \|/
+---------+         A) Conventional Carrier Wi-Fi
|Passpoint|
| device  |
|  with   |
| PLMN-Id |
| profile |
+---------+

+---------+                   +---+                    +--------+
| Visited |<----------------->|DNS|<------------------>|Identity|
|  Wi-Fi  |   DNS based peer  +---+  Configure NAPTR,  |Provider|
| Network |      discovery            SRV and A/AAAA   |Network |
|         |                              records       |        |
|   NAS   |                                            | RADIUS |
|         |<------------------------------------------>| Server |
|Passpoint|        RadSec/TLS secured using mTLS       +--------+
| RCOI(s) |               and WBA PKI
+---------+
    /|\
     |
    \|/
+---------+              B) OpenRoaming
|Passpoint|
| device  |
|  with   |
| RCOI(s) |
| profile |
+---------+

]]></artwork></figure>

</section>
<section anchor="wbaid"><name>Identifying OpenRoaming Entities</name>

<t>All OpenRoaming providers (access, identity and hub) and OpenRoaming brokers
are allocated a WBA Identity (WBAID). The WBAID is defined to be transported in
the RADIUS Operator-Name attribute (#126) <xref target="RFC5580"/>. WBA has been allocated
the Operator Namespace identifier 0x34 "4" to identify an Operator-Name
attribute carrying a WBAID.</t>

<t>The WBAID is a hierarchical namespace that comprises at its top level the
identity allocated by WBA to a WBA Member and is of the form shown in
<xref target="figwbaid"/> where the optional 2 upper case characters represent an ISO-3166
Alpha-2 country code <xref target="ISO3166"/> e.g., "WBAMEMBER:US".</t>

<figure title="ABNF definition of Primary WBAID Structure" anchor="figwbaid"><artwork><![CDATA[
WBAID         = member-string [ ":" country-code ]

member-string = 1*( member-char )

member-char   = UPPERALPHA / DIGIT / SPECIAL

country-code  = 2UPPERALPHA

UPPERALPHA    = %x41-5A  ; "A"-"Z"
DIGIT         = %x30-39  ; "0"-"9"

; SPECIAL: permitted special characters
; excludes ":", ".", "_", "#", pound (%xA3), "*", '"'

SPECIAL       = %x21 / %x24-26 / %x28-29 / %x2B-2D /
                %x2F / %x3C-40 / %x5B-5E / %x7B-7E

]]></artwork></figure>

<t>When operating as an OpenRoaming broker, the WBA Member is able to allocate
subordinate identities to OpenRoaming providers who are not WBA members by
pre-pending a subordinate identity , plus "." (%x2e) to the Member's WBAID,
e.g., a broker assigned the WBAID "WBAMEMBER:US" by the WBA is able to assign
the WBAID "OPENROAMINGPROVIDER.WBAMEMBER:US" to a third-party ANP/IDP who has
agreed terms with the broker and joined the federation. In this way, any
receiving entity of a WBAID can identify the WBA Member who is acting as an
OpenRoaming broker to the provider by assigning it an identity.</t>

</section>
<section anchor="sss"><name>Scaling Secured Signalling</name>

<t>As described in <xref target="legal"/>, the OpenRoaming legal framework does not assume any
direct relationship between ANPs and IDPs. In order to scale the secured
signalling between providers, the federation makes use of a Public Key
Infrastructure (PKI) using a private Certificate Authority specifically designed
to secure the operations of the roaming federation. WBA and its members have
published the WBA Certificate Policy <xref target="WBAPKICP"/> that defines the policies
which govern the operations of the PKI components by all individuals and
entities within the infrastructure. The OID for Wireless Broadband Alliance is:</t>

<ul empty="true"><li>
  <t>{ iso(1) identified-organization(3) dod(6) internet(1) private(4) enterprise(1)
The Wireless Broadband Alliance(14122) }</t>
</li></ul>

<t>The Wireless Broadband Alliance organizes its OID arcs for the Certificates
Policy Documents using the object identifier 1.3.6.1.4.1.14122.1.1. At the time
of writing, the current certificate policy is 1.3.6.1.4.1.14122.1.1.7.</t>

<t>This Certificate Policy is based on a 4-level hierarchy, as illustrated in
<xref target="figpki"/>.</t>

<figure title="OpenRoaming PKI Hierarchy" anchor="figpki"><artwork><![CDATA[
+---------+-------------------------+---------------------------+
| Level   | Description             |  Comment                  |
+---------+-------------------------+---------------------------+
| Level 1 | OpenRoaming Root        | Operation managed by WBA. |
|         | Certificate Authority   |                           |
+---------+-------------------------+---------------------------+
| Level 2 | OpenRoaming Policy      | Operation managed by WBA. |
|         | Intermediate Certificate| Instantiates WBA policy   |
|         | Authority               | OID.                      |
+---------+-------------------------+---------------------------+
| Level 3 | OpenRoaming Issuing     | Operated by an OpenRoaming|
|         | Intermediate Certificate| broker.                   |
|         | Authority               |                           |
+---------+-------------------------+---------------------------+
| Level 3 | OpenRoaming Registration| Optional and when used,   |
|         | Authority               | operated by an OpenRoaming|
|         |                         | broker.                   |
+---------+-------------------------+---------------------------+
| Level 4 | OpenRoaming Entity      | A WBA member or           |
|         |                         | non-member. WBA's         |
|         |                         | Certificate Policy        |
|         |                         | requires the Entity's     |
|         |                         | WBAID is included in the  |
|         |                         | Subject UID field in the  |
|         |                         | certificate.              |
+---------+-------------------------+---------------------------+

]]></artwork></figure>

<t>Certificates issued under the WBA PKI are used by Entities to perform mutual
authentication with other Entities and to secure RadSec signalling <xref target="RFC6614"/>
that carries EAP-based Passpoint authentication. This is typically between a
RadSec client in the OpenRoaming ANP's network and an RadSec Server in the
OpenRoaming IDP's network, although a provider can decide to outsource the
operation of the RadSec endpoint to a third party provider.</t>

<t>OpenRoaming is a distributed federation that lacks a centralized RADIUS element
for identifying and troubleshooting signalling issues. Instead, the WBA operates
cloud-based systems capable of verifying the correct configuration of DNS and
TLS endpoints for OpenRoaming IDPs that have registered their realms with the
WBA. This baseline testing by the WBA ensures that ANPs and IDPs can establish a
TLS connection, such as when an end-user from an IDP roams into the coverage
area of Wi-Fi networks operated by an ANP.</t>

<t>To provide a scalable system that enables access and identity providers to
collaboratively troubleshoot and resolve issues, the WBA Certificate Practice
Statement <xref target="WBAPKICPS"/> REQUIRES the Subject Alternative Name (SAN) attribute in
issued end-entity certificates includes a contact email address responsible for
handling issues raised by third-party providers. The OpenRoaming legal framework
requires ANPs and IDPs to make reasonable efforts to support troubleshooting
procedures. This includes monitoring the email address listed in the SAN
attribute of the certificate and responding to any issues raised by legitimate
third parties.</t>

</section>
<section anchor="dpd"><name>IDP Discovery</name>

<section anchor="dynamic-discovery"><name>Dynamic Discovery</name>

<t>OpenRoaming defines the use of dynamic discovery <xref target="RFC7585"/> by which an ANP
discovers the IP address of the IDP's RadSec server. Whereas <xref target="RFC7585"/> defines
the use of separate service tags for identifying RADIUS Authentication
("aaa+auth") and RADIUS Accounting ("aaa+acct") servers, OpenRoaming uses the
"aaa+auth" tag to identify the IP address of a RadSec server that supports both
RADIUS authentication and accounting.</t>

<t><xref target="RFC7585"/> additionally defines the use of DNS to enable the dynamic discovery
of a RADIUS endpoint for supporting dynamic authorization services, i.e., for
RADIUS Change of Authorization (CoA) and Disconnect Message (DM) support.
OpenRoaming does not use dynamic discovery for dynamic authorization, instead
defining the use of "reverse CoA" <xref target="I-D.draft-ietf-radext-reverse-coa"/> that
allows an IDP to send CoA packets in "reverse" down a RADIUS/TLS connection that
was previously established by an ANP originated signaling exchange, as defined
in <xref target="COA"/>.</t>

</section>
<section anchor="discovery-of-eap-akaaka-servers"><name>Discovery of EAP-AKA/AKA' Servers</name>

<t>Passpoint defines the use of EAP-AKA' based authentication <xref target="RFC5448"/> which
uses the 3GPP 23.003 <xref target="TS23003"/> defined realm of
wlan.mnc&lt;mnc&gt;.mcc&lt;mcc&gt;.3gppnetwork.org, where &lt;mcc&gt; represent an E.212
Mobile Country Code and &lt;mnc&gt; represents the E.212 Mobile Network Code
allocated to the IDP. GSMA is responsible for operating the 3gppnetwork.org
domain and GSMA IR.67 <xref target="GSMAIR67"/> limits access to the DNS systems supporting
such records to those systems connected to the inter-PLMN IP backbone (known as
"GRX/IPX"). As OpenRoaming ANPs do not connect to this inter-PLMN backbone,
then conventional realm based lookup cannot be used over the Internet to
discover the RadSec server supporting EAP-AKA' authentication.</t>

<t>GSMA IR.67 does allow systems to be discoverable from the public Internet,
specifically calling out the use of the pub.3gppnetwork.org sub-domain name for
such procedures. In order for ANPs to dynamically discover the RadSec server
supporting EAP-AKA' authentication, GSMA has defined the use of the
wlan.mnc&lt;mnc&gt;.mcc&lt;mcc&gt;.pub.3gppnetwork.org by OpenRoaming systems. This
means that whenever a RadSec client receives a user-name containing an NAI
formatted as user@wlan.mnc&lt;mnc&gt;.mcc&lt;mcc&gt;.3gppnetwork.org, the dynamic peer
detection functionality MUST insert ".pub" into the realm and perform DNS based
dynamic discovery using the wlan.mnc&lt;mnc&gt;.mcc&lt;mcc&gt;.pub.3gppnetwork.org
domain name. The RADIUS user-name attribute MUST NOT be similarly modified.</t>

<t>IR.67 defines the procedure by which a cellular operator can request the
delegation of their mnc&lt;mnc&gt;.mcc&lt;mcc&gt;.pub.3gppnetwork.org sub-domain. GSMA
PRD IR.67 also allows an MNO to delegate the entire
mnc&lt;MNC&gt;.mcc&lt;MCC&gt;.pub.3gppnetwork.org sub-domain which could have already
occurred, e.g., to enable use of the
epdg.epc.mnc&lt;MNC&gt;.mcc&lt;MCC&gt;.pub.3gppnetwork.org domain used with 3GPP's Wi-Fi
calling service. Using this approach, a cellular operator operating as an
OpenRoaming IDP can authenticate their end-users on third party ANP Wi-Fi
networks.</t>

</section>
<section anchor="proving-a-discovered-radsec-server-is-authoritative-for-a-realm"><name>Proving a Discovered RadSec Server is Authoritative for a Realm</name>

<t>The OpenRoaming preferred approach to dynamically discover the RadSec server
IP address serving a particular realm or set of realms is to use DNS records
that are protected with DNSSEC <xref target="RFC9364"/>. However, GSMA has not enabled DNSSEC
on its 3gppnetwork.org domain, meaning that DNSSEC cannot be applied on the
publicly resolvable domains under pub.3gppnetwork.org. Because of this
situation, OpenRoaming does not currently mandate operation of DNSSEC.</t>

<t>If the DNS records for a realm are not protected with DNSSEC, because the realm
has been provided directly by the OpenRoaming end-user, the IDP SHOULD ensure
that the discovered RadSec server(s) supporting its realm(s) is/are configured
with a WBA-PKI server certificate that includes the realm(s) used in the
dynamic peer detection in the certificate SubjectAltName.</t>

<t>Where the DNS records are protected with DNSSEC, the IDP SHOULD ensure that the
discovered RadSec server(s) supporting its realm(s) is/are configured with a
WBA-PKI server certificate that includes the derived name(s) from the secured
DNS NAPTR/SRV query in the certificate SubjectAltName.</t>

<t>Where the OpenRoaming IDP has offloaded the operation of RadSec termination to a
third party hub-provider that is responsible for supporting a number of
independent realms, the hub-provider SHOULD ensure that the discovered RadSec
server(s) supporting the independent realms from its partner IDPs is/are
configured with a WBA-PKI server certificate that includes the derived name(s)
from the DNS NAPTR/SRV query in the certificate SubjectAltName.</t>

</section>
<section anchor="co-existence-with-other-federations"><name>Co-existence with Other Federations</name>

<t>Other federations which want to interface to the OpenRoaming federation may use
dynamic discovery with distinct NAPTR application service tags to facilitate
integration. For example, an eduroam service provider can use the use the
"x-eduroam" application service tag, specified in <xref target="RFC7593"/>, to discover the
home institution's RadSec peer for authentication, and OpenRoaming ANPs can use
the "aaa+auth" tag to discover a separate RadSec peer that can be defined for
handling all inter-domain authentications.</t>

<t>Where a separate inter-federation RadSec peer is not used, the other federation
AAA operating as an OpenRoaming IDP needs to determine which certificate chain
to return in its ServerHello message. An OpenRoaming ANP operating with TLS 1.3
SHOULD use the "certificate_authorities" extension <xref target="RFC8446"/> in its
ClientHello message to indicate that the ANP supports the WBA PKI Certification
Authority trust anchor. Similarly, an OpenRoaming ANP operating using TLS 1.2
SHOULD use the "trusted_ca_keys" extension <xref target="RFC6066"/> in its ClientHello
message to indicate the DistinguishedName of the WBA PKI Certification Authority
whose root keys the ANP possesses. The federation AAA operating as an
OpenRoaming IDP MAY use information in the ClientHello extension to guide its
certificate selection.</t>

</section>
</section>
<section anchor="conn-man"><name>Connection Management for Dynamically Discovered RadSec Peers</name>

<t>The procedures for connection management for dynamically discovered peers
depends on whether the ANP supports reverse CoA functionality, as defined
in <xref target="COA"/>.</t>

<section anchor="anps-not-supporting-reverse-coa"><name>ANPs not supporting reverse CoA</name>

<t>An OpenRoaming ANP MAY operate with a short TCP idle timeout, sufficient to
complete the RADIUS Access-Request exchange and the initial RADIUS
Accounting-Request exchange with Acct-Status-Type set to "Start". Subsequent
RADIUS Accounting-Request messages to the IDP may require TLS resumption, for
example, if no other inbound roamers from the IDP are active on the ANP's
network.</t>

<ul empty="true"><li>
  <t>NOTE: When performing TLS resumption, the ANP MUST consider the server IP
address stale if its corresponding DNS record has expired and perform a new
DNS query to resolve the current IP address.</t>
</li></ul>

<t>Operation using short TCP-idle timeouts avoids the need for the operation of an
additional RADIUS application watchdog. In such cases, ANPs are NOT REQUIRED to
support Status-Server extension as a RADIUS application-level watchdog.</t>

</section>
<section anchor="anps-supporting-reverse-coa"><name>ANPs supporting reverse CoA</name>

<t>An OpenRoaming ANP supporting the reverse CoA functionality defined in <xref target="COA"/>
SHOULD manage connections such that the RadSec connection to the dynamically
discovered peer is considered as "temporarily static" while active RADIUS
sessions exist that may require the sending of future CoA packets.</t>

<t>While the connection is "temporarily static", the ANP MUST monitor the RadSec
connection liveness. The ANP SHOULD use the Status-Server extension, defined in
<xref target="RFC5997"/> for monitoring the liveness of a RadSec connection. IDPs and hubs
supporting OpenRoaming settled-service MUST respond to Status-Server requests.</t>

<ul empty="true"><li>
  <t>NOTE 1: OpenRoaming recognizes that despite <xref target="RFC5997"/> recommending RADIUS
clients SHOULD NOT generate RADIUS Access-Request packets solely to see if a
server is alive, some OpenRoaming ANPs do use RADIUS Access-Request for such
purposes. In such cases, the Access-Request MUST be sufficient for the IDP to
reject the request without performing an Access-Challenge.</t>
</li></ul>

<t>The OpenRoaming ANP supporting reverse CoA MUST NOT configure any TCP-idle
timeout shorter than the shortest inter-RADIUS message duration, (e.g., the
accounting interim period or connection liveliness checking repetition period).
Reconnection procedures SHOULD follow section 3.8.1 of
<xref target="I-D.ietf-radext-radiusdtls-bis"/>. This section REQUIRES the ANP implement an
algorithm for handling the timing of such reconnection attempts that includes an
exponential back-off.</t>

<ul empty="true"><li>
  <t>NOTE 2: When performing TLS-reconnection, the ANP MUST consider the server IP as
stale when its corresponding DNS record has expired and perform a new DNS query
to resolve the current IP address.</t>
</li></ul>

<ul empty="true"><li>
  <t>NOTE 3: This does not prevent an ANP performing a new DNS query, e.g., if a
reconnection attempt fails in case the server has had its IP address
configuration changed unexpectedly.</t>
</li></ul>

</section>
<section anchor="load-balancing-radsec-connections"><name>Load Balancing RadSec Connections</name>

<t>An ANP MAY perform load balancing on dynamically discovered RadSec connections,
according to the ANPs load balancing policies. Load balancing can trigger the
opening of a new TLS connection to a RadSec server even if an existing TLS
session is present. ANPs that support reverse CoA MUST use the same TLS session
for sending RADIUS Access-Request and RADIUS Accounting-Request messages that
correspond to the same individual user session.</t>

</section>
<section anchor="connection-management-for-idp-radsec-servers"><name>Connection Management for IDP RadSec Servers</name>

<t>Since TCP-idle timeout and reverse CoA support are ANP policies, all IDPs and
hubs SHOULD enable support for Status-Server extension, as specified in
<xref target="RFC5997"/>.</t>

<t>Dynamically established connections between ANPs and IDPs with frequent
authentication exchanges may never trigger idle timeouts, potentially hindering
IDPs from updating RadSec server IP address configurations. IDPs can operate
their DNS systems and RadSec servers TCP configuration to facilitate RadSec
server IP address re-configuration. For example, a DNS TTL of 86400 seconds
coupled with a maximum TCP connection lifetime of 86400 seconds, ensures that
connections between ANPs and IDPs experiencing frequent authentications are
re-established using an updated DNS record at least once every 24 hours.
In such cases, if the session was closed by the RadSec server,  the ANP
SHOULD NOT consider the closure as normal. If the ANP supports reverse CoA, the
ANP SHOULD follow section 3.8.1 of <xref target="I-D.ietf-radext-radiusdtls-bis"/> that
permits the triggering of an immediate reconnection to the RadSec server by the
ANP.</t>

</section>
</section>
<section anchor="PASSPOINT-SEC"><name>OpenRoaming Passpoint Profile</name>

<section anchor="openroaming-policy-controls"><name>OpenRoaming Policy Controls</name>

<t>In order to avoid possible fragmentation of roaming federations, OpenRoaming
recognizes that there is a need to permit OpenRoaming to be integrated into a
variety of different use-cases and value propositions. These use-cases include
scenarios where providers are able to enforce policy controls of which end-users
are authorized to access the service. The realization of authorization policy
controls in the OpenRoaming federation is a balance between the requirements for
fine grain policy enforcement versus the potential impact of policy enforcement
(access rejection) on the end-user experience.</t>

<t>Such a level of control is realized using Closed Access Group (CAG) based
policies. A Closed Access Group identifies a group of OpenRoaming users who are
permitted to access one or more OpenRoaming access networks configured with a
particular CAG policy. These Closed Access Group policies are encoded using one
or more Roaming Consortium Organization Identifiers (RCOIs), first defined in
Passpoint Release 1.0, and well supported across the smartphone device
ecosystem.</t>

<ul empty="true"><li>
  <t>NOTE: encoding CAG policies in OpenRoaming using one or more RCOIs is aimed at
delivering an equivalent functionality to the CAG policies encoded in 3GPP using
one or more CAG-IDs.</t>
</li></ul>

</section>
<section anchor="CAG"><name>OpenRoaming Closed Access Group Policies</name>

<t>OpenRoaming defines the use of multiple RCOIs to facilitate the implementation
of Closed Access Group policies across the federation. The currently defined
RCOIs are:</t>

<t><list style="symbols">
  <t>OpenRoaming-Settled:  BA-A2-D0-xx-x</t>
  <t>OpenRoaming-Settlement-Free:  5A-03-BA-xx-x</t>
</list></t>

<t><xref target="figrcoi"/> shows how the 24-bit length OpenRoaming RCOIs are further extended
into 36-bit length OUI-36s with additional context dependent identifiers used to
encode specific Closed Access Group policies. Following Passpoint Release 1.0
specification, only when there is a bitwise match of all 36 bits of the
configured RCOI in the WLAN equipment and the Passpoint profile configured in
the end-user device will an EAP authentication be triggered.</t>

<t>The encoding of Closed Access Group policies is defined so that the
"no-restrictions" policy is encoded using the 12-bit value "00-0", i.e.,
54-03-BA-00-0 represents a policy that accepts all OpenRoaming settlement-free
end-users onto a particular ANP installation.</t>

<figure title="Extension of Octets 4 and 5 for OpenRoaming Context Dependent RCOI Field " anchor="figrcoi"><artwork><![CDATA[
+---------------------------------------+-------------------+
|               OUI-36 Octet 4          |  OUI-36 Octet 5   |
+---------------------------------------+-------------------+
| B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 | B7 | B6 | B5 | B4 |
+----+---------+----+-------------------+-------------------+
| LoA|   QoS   |PID |     ID-Type       |On-b|  Reserved -  |
|    |         |    |                   |oard|   set to 0   |
+----+---------+----+-------------------+-------------------+

]]></artwork></figure>

<section anchor="level-of-assurance-policies"><name>Level of Assurance Policies</name>

<t>The format of the Level of Assurance (LoA) field is as shown in <xref target="figloa"/>.</t>

<figure title="OpenRoaming CAG LoA Field " anchor="figloa"><artwork><![CDATA[
+-----------------------------------------------------------+
|  LoA Field  |           Description                       |
+-----------------------------------------------------------+
|     B7      |                                             |
+-----------------------------------------------------------+
|     0       |   Baseline Identity Proofing                |
+-----------------------------------------------------------+
|     1       |   Enhanced Identity Proofing                |
+-----------------------------------------------------------+

]]></artwork></figure>

<t>The baseline identity proofing requirement on IDPs ensures that all OpenRoaming
identities are managed with at least a medium level of assurance (LoA level 2)
for end-user enrollment, credential management and authentication, as specified
in ISO/IEC 29115 <xref target="ISO29115"/>.</t>

<t>The LoA field is used to support ANPs which operate in regulatory regimes that
require enhanced identity proofing to be used in the provision of credentials on
OpenRoaming devices, equivalent to LoA level 3 in ISO/IEC29115 <xref target="ISO29115"/>. In
such a scenario, the ANP can set the LoA bit field to 1 in all configured RCOIs
to ensure that only identities provisioned using enhanced LoA 3 procedures can
access via the ANP's network.</t>

<t>Any IDP that manages its identities according to ISO/IEC 29115 LoA level 2 MUST
NOT configure any RCOI in their end-users' Passpoint profile with the LoA field
set to "1". Conversely, an IDP that manages its identities according to ISO/IEC
29115 LoA level 3 MAY configure multiple RCOIs in their end-users' Passpoint
profile, including RCOIs with the LoA field set to "0" and RCOIs with the LoA
field set to "1".</t>

</section>
<section anchor="quality-of-service-policies"><name>Quality of Service Policies</name>

<section anchor="ANR"><name>Access Network Requirements</name>

<t>One of the challenges faced by users of Wi-Fi hotspots is when the Wi-Fi network
is configured sub-optimally and results in a poor user experience. Often the
only remedy open to a user it to disable the Wi-Fi interface on their smartphone
and continue to use cellular data. This is especially the case where the Wi-Fi
hotspot has been automatically selected with no user intervention. As a
consequence, OpenRoaming defines specific service tiers across the federation
and uses the QoS field to differentiate between different tiers. The format of
the QoS field is shown in <xref target="figqos"/>.</t>

<figure title="OpenRoaming CAG QoS Field " anchor="figqos"><artwork><![CDATA[
+-----------------------------------------------------------+
|            QoS Field              |      Description      |
+-----------------------------------------------------------+
|        B6       |        B5       |                       |
+-----------------------------------------------------------+
|        0        |        0        |        Bronze         |
+-----------------------------------------------------------+
|        0        |        1        |        Silver         |
+-----------------------------------------------------------+
|        1        |        0        |       Reserved        |
+-----------------------------------------------------------+
|        1        |        1        |       Reserved        |
+-----------------------------------------------------------+
]]></artwork></figure>

<t>The "Bronze" and "Silver" values of QoS field are used to identify specific
minimum quality of service policy aspects.</t>

<t>The bronze service tier corresponds to the following:</t>

<t><list style="numbers" type="1">
  <t>The availability of OpenRoaming service when used to access the Internet
measured during scheduled operations across the ANP's network exceeds 90% over
any one month period.</t>
  <t>The ANP shall ensure that the maximum download speed that end-Users can
access the Internet shall be at least 50 megabits per second.</t>
  <t>During the busy hour, the aggregate bandwidth used to receive Internet
service on the ANP's network is sufficient to enable each and every
authenticated and authorized OpenRoaming end-user to simultaneously receive a
sustained 256 kilobits per second connection.</t>
</list></t>

<t>The silver service tier corresponds to the following:</t>

<t><list style="numbers" type="1">
  <t>The availability of OpenRoaming service when used to access the Internet
measured during scheduled operations across the ANP's network exceeds 95% over
any one month period.</t>
  <t>The ANP shall ensure that the maximum download speed that end-users can
access the Internet shall be at least 100 megabits per second.</t>
  <t>During the busy hour, the aggregate bandwidth used to receive Internet
service on the ANP's network is be sufficient to enable each and every
authenticated and authorized end-user to receive a sustained 512 kilobits per
second connection.</t>
  <t>At least 10% of authenticated and authorized users are able to stream video
content at a downlink rate of at least 5 megabits per second (when measured over
a one-minute interval) over all of the ANP's OpenRoaming enabled Wi-Fi networks.</t>
  <t>The authenticated and authorized end-users are able to stream video from one
or more third party content distribution networks with an end-to-end latency of
less than 150ms from all of the ANP's OpenRoaming enabled Wi-Fi networks.</t>
</list></t>

<t>The QoS field can be used by those IDPs that are only interested in providing
their end-users with a higher quality service level when automatically
authenticated onto an OpenRoaming network. For example, an IDP configures the
QoS field as bronze in a Passpoint profile that uses the "5A-03-BA" settlement
free RCOI and configures the QoS field as silver in a Passpoint profile that
uses the "BA-A2-D0" OpenRoaming-settled paid service.</t>

<t>ANPs that only support the bronze service tier MUST set the QoS Field to "00" in
all RCOIs configured on their WLAN equipment. ANPs that support the silver
service tier MAY configure multiple RCOIs on their WLAN equipment that include
values where the QoS field is set to "01" and values where the QoS field is set
to "00".</t>

<t>Exceptionally, ANPs that operate OpenRoaming installations on moving platforms
are permitted to deviate from the normal OpenRoaming service level requirements
listed above. This is because such installations can necessitate use of
cellular-based backhaul and/or backhaul via Non-Terrestrial Networks (NTN) which
may not be able to meet the OpenRoaming minimum "bronze" service level
requirements. If an ANP wants to benefit from such deviations, it MUST signal
using the WLAN-Venue-Info attribute <xref target="RFC7268"/> that it is operating in a venue
category identified using a Venue Group value of "10", which is defined in Section
8.4.1.34 of <xref target="IEEE80211"/> as being used for vehicular installations. In such
cases, the OpenRoaming ANP MAY signal one or more WBA-Custom-SLA vendor specific
attributes <xref target="custom"/> to indicate one or more (availability, per-user sustained
bandwidth) tuples to the IDP.</t>

<t>OpenRoaming also defines the ability of the ANP to signal additional real-time
metrics associated with the Wi-Fi connection to an end-user, using the
enhanced syntax for the RADIUS Connect-Info attributes as defined in
<xref target="connect-info"/>. This information can be used by an IDP to derive a quality
metric for the performance of the ANP's OpenRoaming Wi-Fi network.</t>

</section>
<section anchor="identity-provider-requirements"><name>Identity Provider Requirements</name>

<t>Irrespective of the service-levels supported by their users, the IDP shall
ensure that the availability of their authentication service measured during
scheduled operations shall exceed 99% over any one month period.</t>

</section>
<section anchor="rationale-for-busy-hour-sustained-throughput-values"><name>Rationale for Busy Hour Sustained Throughput Values</name>

<t>The ANP requirements for sustained busy hour throughput requirements defined in
<xref target="ANR"/> are based on equating a notional per month consumption to a sustained
busy hour throughput. The following calculation represents the mapping of
sustained throughput to monthly consumption.</t>

<t><list style="symbols">
  <t>Busy hour sustained throughput = 256 kilobits per second</t>
  <t>Busy hour consumption = 256 x 1024 x 3600 / 8 = 118 megabytes per hour</t>
  <t>Daily consumption, assuming 7% consumed in busy hour = 118 / 0.07 = 1.69 gigabytes</t>
  <t>Monthly consumption, assuming 22 busy days per month = 1.69 x 22 = 37.1 gigabytes/month</t>
</list></t>

<t>Comparing to a cellular usage, we need to use smartphone consumption figures
that precludes Wi-Fi as well as broadband specific fixed wireless access
subscriptions.</t>

<t>Using an example 10 gigabytes/month consumption per cellular subscription, it is
evident that OpenRoaming bronze is dimensioned to accommodate 3.7 times the
example cellular traffic, or 78% of total traffic when cellular and Wi-Fi are
combined. Similarly, OpenRoaming silver is dimensioned to carry 88% of total
traffic when cellular and Wi-Fi are combined.</t>

</section>
</section>
<section anchor="privacy-policies"><name>Privacy Policies</name>

<t>The baseline privacy policy of OpenRoaming <xref target="ORPRIVACY"/> ensures the identities
of end-users remain anonymous when using the service. The WBA WRIX specification
specifies that where supplicants use EAP methods that support user-name privacy,
i.e., which are compatible with the "@realm" (or "anonymous@realm") (outer)
EAP-Identifier, then the supplicant SHOULD use the anonymized outer EAP
identifier. Supplicants supporting other EAP methods SHOULD support EAP method
specific techniques for masking the end-user's permanent identifier, for example
pseudonym support in EAP-AKA/AKA' <xref target="RFC4187"/> and/or enhanced IMSI privacy
protection <xref target="WBAEIPP"/>. OpenRoaming IDPs SHOULD support and enable the
corresponding server-side functionality to ensure end-user privacy is protected.</t>

<t>The WBA WRIX specification also recognizes that the privacy of end-users can be
unintentionally weakened by the use of correlation identifiers signalled using
the Chargeable-User-Identity attribute (#89) <xref target="RFC4372"/> and/or the Class
attribute (#25) <xref target="RFC2865"/>  in the RADIUS Access-Accept packet. The WBA WRIX
Specification recommends that the default IDP policy SHOULD ensure that, when
used, such correlation identifiers are unique for each combination of
end-user/ANP and that the keys and/or initialization vectors used in creating
such correlation identifiers SHOULD be refreshed at least every 48 hours, but
not more frequently than every 2 hours.</t>

<t>This 2 hour limit is designed to assist the ANP in performing autonomous
troubleshooting of connectivity issues from authentic end-users/devices that are
repeatedly re-initiating connectivity to the ANP's network and/or to assist the
ANP in identifying a new session originated by an authentic user/device that has
previously been identified by the ANP as having violated the OpenRoaming end-user
terms and conditions <xref target="ORTERMS"/>. When using typical public Wi-Fi session
durations, it is estimated that, with this 2 hour restriction, the ANP will be
able to correlate a RADIUS Access-Request/Access-Accept exchange that
immediately follows a RADIUS Accounting-Request stop message in over 50% of the
sessions.</t>

<t>In contrast to this default policy, there can be scenarios where the ANP desires
to derive value from its OpenRoaming settlement-free service by analysing
aggregate end-user behaviour. Whereas the use of aggregated end-user information
does not violate the OpenRoaming privacy policy, the derivation of such can
benefit from the ANP being able to uniquely identify end-users. In order to
support such scenarios, the OpenRoaming closed access group policies include the
PID field.</t>

<t>The PID field can be used to support scenarios where the end-user has consented
with their IDP that an immutable end-user identifier can be signalled to the
ANP in the RADIUS Access-Accept. The format of the PID field is illustrated in
<xref target="figpid"/>. The PID field can be configured to "1" in the RCOIs used by those
ANPs that want to be be able to account for unique OpenRoaming end-users.</t>

<t>The OpenRoaming IDP terms <xref target="ORTERMS"/> ensure subscribers MUST explicitly give
their permission before an immutable end-user identity is shared with a third
party ANP. When such permission has not been granted, an IDP MUST NOT set the
PID field to "1" in any of the RCOIs in its end-user Passpoint profiles. When
such permission has been granted, an IDP MAY configure multiple RCOIs in their
end-users' Passpoint profile, including RCOIs with the PID field set to "1".</t>

<figure title="OpenRoaming CAG PID Field " anchor="figpid"><artwork><![CDATA[
+-----------------------------------------------------------+
|  PID Field  |                 Description                 |
+-----------------------------------------------------------+
|     B4      |                                             |
+-----------------------------------------------------------+
|     0       |   Baseline ID Policy applies, i.e., users   |
|             |   remain anonymous whilst using the service.|
+-----------------------------------------------------------+
|     1       |   An immutable end-user ID will be returned |
|             |   by the IDP in the Access-Accept packet.   |
+-----------------------------------------------------------+

]]></artwork></figure>

</section>
<section anchor="id-type-policies"><name>ID-Type Policies</name>

<t>The ID-Type field can be used to realize policies which are based on the
business sector associated with the identity used by the IDP. The format of the
ID-Type field is illustrated in <xref target="figidtype"/>.</t>

<t>All IDPs configure at least one RCOI in their end-user's Passpoint profile with
ID-Type set to "0000" (Any identity type is permitted). An IDP MAY configure
additional RCOIs in their end-users' Passpoint profile with an ID-Type
representing the sector type of IDP.</t>

<t>An ANP what wants to serve all end-users, irrespective of sector,  configures
RCOIs in the WLAN equipment with ID-Type set to "0000". Alternatively, an ANP
which operates a sector specific business that only desires to serve a subset of
OpenRoaming end-users MAY set the ID-Type to their desired sector in all
configured RCOIs.</t>

<figure title="OpenRoaming CAG ID-Type Field " anchor="figidtype"><artwork><![CDATA[
+-----------------------------------------------------------+
|       ID-Type Field       |           Description         |
+-----------------------------------------------------------+
|  B3  |  B2  |  B1  |  B0  |                               |
+-----------------------------------------------------------+
|  0   |  0   |  0   |  0   | Any identity type is permitted|
+-----------------------------------------------------------+
|  0   |  0   |  0   |  1   | A service provider identity   |
+-----------------------------------------------------------+
|  0   |  0   |  1   |  0   | A cloud provider identity     |
+-----------------------------------------------------------+
|  0   |  0   |  1   |  1   | A generic enterprise identity |
+-----------------------------------------------------------+
|  0   |  1   |  0   |  0   | A government identity, e.g.,  |
|      |      |      |      | including city                |
+-----------------------------------------------------------+
|  0   |  1   |  0   |  1   | An automotive identity        |
+-----------------------------------------------------------+
|  0   |  1   |  1   |  0   | A hospitality identity        |
+-----------------------------------------------------------+
|  0   |  1   |  1   |  1   | An aviation industry identity |
+-----------------------------------------------------------+
|  1   |  0   |  0   |  0   | An education or research      |
|      |      |      |      | identity                      |
+-----------------------------------------------------------+
|  1   |  0   |  0   |  1   | A cable industry identity     |
+-----------------------------------------------------------+
|  1   |  0   |  1   |  0   | A manufacturer identity       |
|      |      |      |      | (note 1)                      |
+-----------------------------------------------------------+
|  1   |  0   |  1   |  1   | A retail identity             |
+-----------------------------------------------------------+
|        other values       | Reserved                      |
+-----------------------------------------------------------+
| NOTE 1: A manufacturer identity closed access group policy|
| applies to IoT credentials corresponding to manufacturer  |
| installed identities as well as IoT credentials           |
| corresponding to owner installed identities.              |
+-----------------------------------------------------------+

]]></artwork></figure>

</section>
<section anchor="OBCP"><name>On-boarding Credential Policies</name>

<t>The format of the on-boarding credential policy (On-board) field is as shown
in <xref target="figonboard"/>.</t>

<figure title="OpenRoaming CAG On-board Field " anchor="figonboard"><artwork><![CDATA[
+-----------------------------------------------------------+
| On-board Field  |               Description               |
+-----------------------------------------------------------+
|  B7 Octet 5     |                                         |
+-----------------------------------------------------------+
|     0           |   A long-lived identity                 |
+-----------------------------------------------------------+
|     1           |   A short-lived identity                |
+-----------------------------------------------------------+

]]></artwork></figure>

<t>The On-board field is used to identify closed access group policy aspects
related to whether the identity/profile is long-lived, or whether the
identity/profile is short-lived. Short-lived profiles are intended to only be
used to provide connectivity such that the procedure for configuring a
long-lived identity/profile can be performed.</t>

<t>Sessions authorized with short-lived credentials MUST have a session-timeout
value of less than 300 seconds.</t>

</section>
</section>
<section anchor="prioritizing-policies"><name>Prioritizing Policies</name>

<t>The  definition of OpenRoaming closed access group policies assumes the
configuration of multiple RCOIs in ANP WLAN equipment and IDP end-user devices.</t>

<t>When a device has multiple Passpoint profiles matching the ANP's Closed Access
Group policy, an OpenRoaming ANP may want to prefer OpenRoaming subscribers use
a particular IDP's profile when attaching to its access network. Such a
preference can be because the OpenRoaming ANP has a preferential relationship
with certain OpenRoaming IDPs.</t>

<t>The OpenRoaming ANP is able to use the Home SP preference functionality defined
in Passpoint <xref target="PASSPOINT"/> to prioritize the use of a particular profile by a
Passpoint enabled device. In such a scenario, the ANP configures the Domain Name
list to include the FQDN(s) associated with the profile(s) to be prioritized.</t>

</section>
</section>
<section anchor="RADIUS"><name>OpenRoaming RADIUS Profile</name>

<t>The OpenRoaming RADIUS profile is based on the WBA WRIX Specification which in
turn are derived from <xref target="RFC3580"/> and <xref target="RFC3579"/>. All ANPs MUST support RADIUS
Accounting for all OpenRoaming sessions, irrespective of which RCOIs are
supported, i.e., for both settled and settlement free service. All IDPs MUST
respond to any RADIUS Access-Request and Accounting-Request packet received.</t>

<t>Additionally, OpenRoaming defines the use of the following RADIUS attributes.</t>

<section anchor="operator-name"><name>Operator-Name</name>

<t>As described in <xref target="wbaid"/>, OpenRoaming uses the Operator-Name (#126)
<xref target="RFC5580"/> attribute to signal the WBAID of the OpenRoaming ANP. All ANPs MUST
support the Operator-Name attribute and use it to signal the WBAID of the
OpenRoaming ANP, using the WBA allocated Operator Namespace identifier, as
specified in <xref target="wbaid"/>.</t>

<t>Exceptionally, if the RADIUS client does not support the WBA allocated
namespace identifier, the WBAID MAY be encoded in the realm namespace, by using
the base64 encoded <xref target="RFC4648"/> WBAID as a subdomain to the realm
"wballiance.com". For example,</t>

<ul empty="true"><li>
  <t>ANP1.INTERMEDIARY2:PT</t>
</li></ul>

<t>is encoded as</t>

<ul empty="true"><li>
  <t>QU5QMS5JTlRFUk1FRElBUlkyOlBU.wballiance.com</t>
</li></ul>

</section>
<section anchor="chargeable-user-identity"><name>Chargeable-User-Identity</name>

<t>All OpenRoaming ANPs MUST support the Chargeable-User-Identity attribute (#89)
<xref target="RFC4372"/> and indicate such by including a CUI attribute in all RADIUS
Access-Request packets. An ANP that has configured the OpenRoaming-Context PID
Field set to "1" MAY treat a RADIUS Access-Accept received without a CUI
attribute as an Access-Reject. An ANP that has configured the
OpenRoaming-Context PID Field set to "0" MUST NOT treat any RADIUS Access-Accept
received without a CUI attribute as an Access-Reject.</t>

<t>When an end-user has explicitly given their permission to share an immutable
end-user identifier with third party ANPs, the CUI returned by the IDP MUST be
invariant over subsequent end-user authentication exchanges between the IDP and
the ANP.</t>

</section>
<section anchor="location-datalocation-information"><name>Location-Data/Location-Information</name>

<t>All OpenRoaming ANPs MUST support signalling of location information using
<xref target="RFC5580"/>. As a minimum, all OpenRoaming IDPs need to be able to determine the
country in which the OpenRoaming ANP operates. The OpenRoaming legal framework
described in <xref target="legal"/> serves as an "out-of-band agreement" as specified in
clause 3.1 of <xref target="RFC5580"/>. Hence, all OpenRoaming ANPs MUST include the
Location-Data attribute (#128) in the RADIUS Access-Request packet, where the
location profile is the civic location profile that includes the country code
where the ANP is located <xref target="RFC5580"/>.</t>

<t>When the OpenRoaming ANP supports the OpenRoaming-Settled RCOI ("BA-A2-D0"),
the RADIUS Access-Request packet MUST include the Location-Data attribute (#128)
where the location profile is the civic location profile containing Civic
Address Type information that is sufficient to identify the financial regulatory
regime that defines the taxable rates associated with consumption of the ANP's
service.</t>

<t>OpenRoaming also defines the optional use the geospatial location profile as
specified in <xref target="RFC5580"/>. ANPs MAY signal coordinate-based geographic location
of the NAS or end-user device.</t>

<t>The OpenRoaming Privacy Policy <xref target="ORPRIVACY"/> restricts the use of all location
information signalled to an IDP for either:</t>

<t><list style="numbers" type="1">
  <t>Making service authorization decisions based on the location of the ANP's
wireless network; or</t>
  <t>Compliance with applicable law, or law enforcement requests.</t>
</list></t>

</section>
<section anchor="session-timeout"><name>Session-Timeout</name>

<t>An OpenRoaming ANP receiving a RADIUS Access Accept message including a
Session-Timeout attribute MUST operate according to <xref target="RFC3580"/>.</t>

<t>An IDP authenticating using a credential associated with a Passpoint profile
with an RCOI where the On-board value is set to 1, as defined in <xref target="OBCP"/>,
MUST set the session-timeout value to less than 300 seconds in the RADIUS
Access-Accept message.</t>

</section>
<section anchor="acct-session-id"><name>Acct-Session-Id</name>

<t>All OpenRoaming enabled ANPs MUST support attribute Acct-Session-Id <xref target="RFC2866"/>.
If an OpenRoaming IDP receives a RADIUS Access-Request message without an
Acct-Session-Id attribute, it SHOULD reject the Access-Request.</t>

<t>When supported, the Acct-Session-Id attribute SHOULD be temporally unique within
an ANP's access network.</t>

<t>An OpenRoaming IDP that receives a RADIUS Accounting-Request message without
either an Acct-Session-Id or an Acct-Multi-Session-Id corresponding to an
authenticated RADIUS session SHOULD create a log of the message non-compliance,
including the WBAID of the ANP.</t>

</section>
<section anchor="acct-multi-session-id"><name>Acct-Multi-Session-Id</name>

<t>All OpenRoaming enabled ANPs configured to generate multiple related accounting
sessions for a single EAP-Supplicant roaming between Wi-Fi Access points MUST
support attribute Acct-Multi-Session-Id <xref target="RFC2866"/>.</t>

<t>The Acct-Multi-Session-Id attribute SHOULD be temporally unique within an ANP's
access network.</t>

<t>An OpenRoaming IDP that receives a RADIUS Accounting-Request message without
either an Acct-Session-Id or an Acct-Multi-Session-Id corresponding to an
authenticated RADIUS session SHOULD create a log of the message non-compliance,
including the WBAID of the ANP.</t>

</section>
<section anchor="event-timestamp"><name>Event-Timestamp</name>

<t>All OpenRoaming ANPs MUST include the Event-Timestamp attribute <xref target="RFC2869"/>
in all RADIUS Accounting-Request messages.</t>

</section>
<section anchor="connect-info"><name>Connect-Info</name>

<t>An OpenRoaming ANP MAY include the RADIUS Connect-Info (#77) attribute in RADIUS
messages sent to an IDP, as specified in <xref target="RFC2869"/>. When included, the ANP
SHOULD use the syntax defined in <xref target="I-D.draft-grayson-connectinfo"/> to signal
Wi-Fi network connection metrics to an OpenRoaming IDP. An IDP authenticating an
OpenRoaming end-user MAY use the information signalled in the Connect-Info
attribute when making authorization decisions.</t>

<t>The ANP MAY use the enhanced Connect-Info syntax to signal real-time information,
including:</t>

<t><list style="symbols">
  <t>transmit and receive bit rates,</t>
  <t>received signal strength indicator (RSSI),</t>
  <t>frame loss rate,</t>
  <t>frame retry rate, and</t>
  <t>the Wi-Fi global operating class(es) associated with the connection, as
defined in Annex E of <xref target="IEEE80211"/>.</t>
</list></t>

<t>When supported by the ANP, these quality metrics SHOULD be included in both
RADIUS Access-Request and RADIUS Accounting-Request messages. The OpenRoaming
legal framework (see <xref target="legal"/>) ensures that IDPs that do not separately agree
to terms with an ANP governing use of Wi-Fi network connection metrics MUST
solely process signaled performance data for the purposes of making service
authorization decisions and network troubleshooting, and are prohibited from
disclosing such data to any third party except as necessary for direct network
troubleshooting with the originating ANP.</t>

<t>When included in the RADIUS Access-Request and initial RADIUS Accounting-Request
message, because the raw samples used to calculate the metrics will be
restricted by the number of IEEE 802.11 frames over which the calculation are
based, the transmit bit rates, receive bit rates and RSSI level MAY correspond
to the instantaneous value of the specific parameter.</t>

<t>In other cases, i.e., where the Connect-Info attribute is signaled in RADIUS
Accounting-Request messages with Acct-Status-Type set to Interim-Update or Stop,
the ANP SHOULD use multiple measurements when calculating the reported value:</t>

<t><list style="symbols">
  <t>the reported transmit and receive bit rates SHOULD represent the maximum
values experienced since the last time the connect-info was signaled, i.e.
the "ALGO" term SHOULD be set to "MAX".</t>
  <t>the received signal strength indicator (RSSI) SHOULD represent the average
RSSI value, where the average value calculated MAY be either a linear average or
an exponential weighted average, i.e. the "ALGO" term SHOULD be set to "AVG".</t>
  <t>frame loss rate and frame retry rate SHOULD represent the accumulated ratio,
i.e. the "ALGO" term SHOULD be set to "ACC".</t>
</list></t>

</section>
<section anchor="enhanced-reply-message"><name>Enhanced Reply-Message</name>
<t>Reply-Message was originally defined in <xref target="RFC3579"/> as being forbidden from
being included in any RADIUS message containing an EAP-Message attribute. This
was to prevent earlier systems from attempting to interwork the Reply-Message
text into an EAP Notification packet.</t>

<t>In contrast to using Reply-Message to signal a displayable text string to
authenticating users, WBA's WRIX framework defines the re-use of the attribute
in WRIX-based Passpoint networks to signal additional information from the IDP
to the ANP, specifically regarding why a connection has been rejected. The
message received MUST NOT be shown to end-users.</t>

<t>The enhanced reply-message is encoded using UTF-8 characters. The WBA defines
additional information is appended after the NUL ASCII character (0x00). The
ABNF syntax of the Reply-Message is shown in <xref target="figreply"/>.</t>

<figure title="WBA Enhanced Reply-Message Syntax" anchor="figreply"><artwork><![CDATA[
Reply-message      = [ displayable-string ] %x00 [ wba-info ]
displayable-string = *CHAR
wba-info           =  "Reject-Reason=" cause-code

cause-code =  "10" ; failed user authentication
cause-code =/ "11" ; invalid user identity
cause-code =/ "12" ; expired client certificate
cause-code =/ "20" ; generic AAA failure
cause-code =/ "21" ; backend failure
cause-code =/ "22" ; protocol timeout
cause-code =/ "30" ; failure due to badly formatted request
cause-code =/ "31" ; rejected - missing charging model
cause-code =/ "32" ; rejected - missing geospatial location
cause-code =/ "40" ; failure due to subscription - permanent
cause-code =/ "41" ; authorization rejected - no service
                   ; subscription
cause-code =/ "42" ; authorization rejected - roaming not
                   ; allowed in this network
cause-code =/ "43" ; authorization rejected - offered charging
                   ; model not acceptable
cause-code =/ "44" ; authorization rejected - roaming to this
                   ; location not allowed
cause-code =/ "45" ; authorization rejected - offered service
                   ; level not acceptable                 
cause-code =/ "50" ; failure due to subscription - temporary
cause-code =/ "51" ; authorization rejected - offered charging
                   ; model not acceptable at this time
cause-code =/ "52" ; authorization rejected - roaming to this
                   ; location not allowed at this time
cause-code =/ "53" ; authorization rejected - concurrency
                   ; limits exceeded
cause-code =/ "54" ; authorization rejected - insufficient
                   ; credit

]]></artwork></figure>

</section>
<section anchor="wba-identity-provider"><name>WBA-Identity-Provider</name>

<t>The Operator-Name attribute allows the WBAID of the ANP to be signalled to the
IDP. In the reverse direction, the IDP MUST use the WBA-Identity-Provider vendor
specific attribute <xref target="WBAVSA"/> to signal the WBAID of the IDP back to the ANP.
In this case the first character of the Identity-Provider attribute identifies
the WBAID namespace and is equal to "4" (0x34).</t>

</section>
<section anchor="wba-offered-service"><name>WBA-Offered-Service</name>

<t>The ANP MAY use the WBA-Offered-Service vendor specific attribute to signal the
highest OpenRoaming service tier supported on its network <xref target="WBAVSA"/>.</t>

<t>If a RADIUS Access-Request is received without either a WBA-Offered-Service or
WBA-Custom-SLA attribute, the IDP SHOULD assume that the authorization request
is associated with the OpenRoaming Bronze service.</t>

</section>
<section anchor="wlan-venue-info"><name>WLAN-Venue-Info</name>

<t>The ANP MAY use the WLAN-Venue-Info attribute <xref target="RFC7268"/> to signal the
category of venue hosting the WLAN.</t>

</section>
<section anchor="custom"><name>WBA-Custom-SLA</name>

<t>When the ANP uses the WLAN-Venue-Info attribute to signal that the venue
hosting the WLAN is a vehicular installation, the  ANP SHOULD use the
WBA-Custom-SLA vendor specific attribute <xref target="WBAVSA"/> to indicate one or more
(availability, per-user sustained bandwidth) tuples to the IDP.</t>

</section>
<section anchor="filter-id"><name>Filter-Id</name>

<t>If the IDP accepts the offered service corresponding to the WBA-Offered-Service
attribute, then it MUST copy the contents of the text string received in the
WBA-Offered-Service attribute and include the same text string in a RADIUS
Filter-Id attribute returned in the Access-Accept message.</t>

<t>If the IDP accepts the offered service corresponding to the
WBA-Custom-SLA attribute, then the IDP shall include the text string
"OpenRoaming Custom" in the RADIUS Filter-Id attribute returned in the RADIUS
Access-Accept message.</t>

</section>
<section anchor="operator-nas-identifier"><name>Operator-NAS-Identifier</name>

<t>An OpenRoaming ANP supporting the Reverse CoA functionality defined in <xref target="COA"/>,
MAY use the Operator-NAS-Identifier (#241.8) as specified in <xref target="RFC8559"/>. When
received by the IDP, the Operator-NAS-Identifier attribute MUST be stored along
with any end-user session identification attributes.  When sending a CoA packet
for an end-user session, the IDP MUST include verbatim any
Operator-NAS-Identifier it has recorded for that session.</t>

</section>
<section anchor="COA"><name>Reverse Change of Authorization</name>

<t>The connection management procedures described in <xref target="conn-man"/> ensure that an
ANP supporting Reverse CoA is reachable from an IDP whenever an IDP's
OpenRoaming user is active on an ANP's OpenRoaming wireless network. This
reachability allows the IDP, or its authorized hub, to send a Change of
Authorization (CoA) request packet to the ANP in "reverse" over the existing
TLS connection, and for the ANP to send responses towards the message
originator.</t>

<t><list style="symbols">
  <t>ANPs and hubs supporting OpenRoaming settled SHOULD support the Reverse CoA in
RADIUS/TLS defined in <xref target="I-D.draft-ietf-radext-reverse-coa"/>.</t>
  <t>IDPs supporting OpenRoaming settled operation MAY support the Reverse CoA in
RADIUS/TLS defined in <xref target="I-D.draft-ietf-radext-reverse-coa"/>, where the CoA
refers to either the CoA-Request or Disconnect-Request messages as defined in
<xref target="RFC5176"/>.</t>
</list></t>

<t>There is no explicit negotiation of support for Reverse CoA between OpenRoaming
ANPs, hubs and IDPs.</t>

<t>An IDP supporting Reverse CoA SHOULD interpret the lack of response to a
CoA-Request or Disconnect-Request as being due to the silent discard of the
packet by an un-supporting ANP, or an intermediate hub. The CoA originator
SHOULD associate the reverse CoA capability with each ANP, as identified by the
Operator-Name attribute (#126). The CoA originator that has identified an
un-supporting ANP SHOULD cease sending further Reverse CoA requests to that ANP.</t>

<t>IDPs and hubs supporting Reverse CoA MUST be able to forward the CoA packet to
the correct next hop based on the TLS session used to support the user-session.
When load balancing is employed, the routing of reverse CoA packets MUST account
for the possibility that multiple CoA servers can be associated with the same
Operator-Name attribute:</t>

<t><list style="symbols">
  <t>The IDP and hub MUST maintain session affinity or "stickiness" to the specific
TLS session corresponding to the user session, so that CoA packets are routed to
the same server instance that established the original session.</t>
  <t>The routing logic SHOULD use additional session identification attributes,
such as Charegable-User-Id, Acct-Session-Id, Operator-Name, Called-Station-Id
and/or Operator-NAS-Identifier, to disambiguate among multiple possible next
hops when load balancing is in effect.</t>
  <t>If multiple TLS sessions exist for the same WBAID due to load balancing, the
IDP SHOULD select the appropriate next hop based on the user session context to
avoid routing CoA packets to an incorrect CoA server.</t>
  <t>The CoA packet is sent to the next proxy/CoA Server according to the routing
logic. This process continues with any subsequent proxies until the packet
reaches the ANP's CoA server.</t>
</list></t>

<t>IDPs MUST include the Operator-Name attribute in all CoA-Request and
Disconnect-Request packets, as described in <xref target="RFC8559"/>. The value of the
Operator-Name attribute MUST be the value that was recorded earlier for that
user session.</t>

<t>If a proxy/CoA Server receives a CoA packet with an unknown Operator-Name,
the server MUST operate as per <xref target="RFC8559"/> and return a NAK packet that contains
an Error-Cause Attribute having value 502 ("Request Not Routable").</t>

<t>The ANP MAY use the Operator-NAS-Identifier as specified in <xref target="RFC8559"/>. When
received by the IDP, the Operator-NAS-Identifier attribute MUST be stored along
with any user session identification attributes. When sending a CoA packet for a
user session, the IDP MUST include verbatim any Operator-NAS-Identifier it has
recorded for that session.</t>

</section>
<section anchor="additional-attributes-related-to-openroaming-settled"><name>Additional Attributes Related to OpenRoaming Settled</name>

<t>OpenRoaming settled defines the use of additional RADIUS attributes.</t>

<section anchor="wba-financial-clearing-provider"><name>WBA-Financial-Clearing-Provider</name>

<t>All OpenRoaming ANPs and IDPs that support the OpenRoaming settled service
MUST use the WBA-Financial-Clearing-Provider vendor specific attribute to signal
the  identity of the provider of financial clearing services <xref target="WBAVSA"/>.</t>

</section>
<section anchor="wba-data-clearing-provider"><name>WBA-Data-Clearing-Provider</name>

<t>All OpenRoaming ANPs and IDPs that support the OpenRoaming settled service MAY
use the WBA-Data-Clearing-Provider vendor specific attribute to signal the
identity of the provider of data clearing services <xref target="WBAVSA"/>.</t>

</section>
<section anchor="wba-linear-volume-rate"><name>WBA-Linear-Volume-Rate</name>

<t>In cellular roaming, inter-operator tariff information is exchanged in the
roaming agreements between operators. In OpenRoaming, as there is no direct
agreement between ANPs and IDPs, the tariff information is exchanged in
RADIUS messages. All OpenRoaming ANPs that support the OpenRoaming settled
service MUST use the WBA-Linear-Volume-Rate vendor specific attribute to signal
the charging model being offered by the ANP <xref target="WBAVSA"/>. An IDP that authorizes
an offered charging model MUST include the agreed WBA-Linear-Volume-Rate in the
Access-Accept packet.</t>

</section>
<section anchor="openroaming-session-mediation"><name>OpenRoaming Session Mediation</name>

<t>OpenRoaming-Settled necessarily requires end-entities, which may include ANPs,
IDPs and/or their respective hub-providers, to be able to perform session
mediation between RADIUS Access-Request/Access-Accept and RADIUS
Accounting-Request messages. This can be performed using RADIUS attributes
Acct-Session-Id (#44) and Acct-Multi-Session-Id (#50) together with
Operator-Name (#126).</t>

<t>To allow for possible non-uniqueness of Acct-Session-Id and/or
Acct-Multi-Session-Id attributes between different Network Access Servers (NAS)
within the same ANP, it is recommended to additionally use the attribute
NAS-Identifier (#32) or NAS-IP-Address (#4) or NAS-IPv6-Address (#95) or
Called-Station-Id (#30) in the matching process.</t>

</section>
</section>
</section>
<section anchor="Security"><name>Security Considerations</name>

<section anchor="network-selection-and-triggering-authentication"><name>Network Selection and Triggering Authentication</name>

<t>OpenRoaming defines the use of Passpoint with Roaming Consortium Organization
Identifiers. A bit-wise match between an RCOI configured in the Passpoint
profile of an end-user's device and the RCOI signalled by WLAN equipment will
trigger a Passpoint defined EAP-based authentication exchange. The security
associated with the Passpoint RCOI information element is identical to other
PLMN Id and Realm information elements, allowing an unauthorized system to
configure the OpenRoaming RCOI with the aim of triggering a Passpoint
authentication. Because such an unauthorized system will not have been issued
with a certificate from WBA's PKI, the unauthorized system is unable to
communicate with any other OpenRoaming provider. In such a scenario, after
successive multiple failed authentications, the device's supplicant SHOULD add
the Access Point's BSSID to a deny list to avoid future triggering of an
authentication exchange with the unauthorized system.</t>

</section>
<section anchor="anp-radsec-connectivity"><name>ANP RadSec Connectivity</name>

<t>The ANP's RadSec client connects to the IDP's RadSec server over the public
Internet. Recommended best practice for firewall deployment on public Internet
facing interfaces SHOULD be followed. Firewall rules SHOULD permit outbound
RadSec traffic (TCP destination port 2083) and allow return traffic for the same
TCP connections while denying any TCP socket initiation from outside of the
ANP's network.</t>

</section>
<section anchor="dynamic-discovery-of-radsec-peers"><name>Dynamic Discovery of RadSec Peers</name>

<t>Whereas the dynamic discovery mechanisms specified in <xref target="RFC7585"/> permit the IDP
to use their DNS SRV record to indicate a non-standard TCP port to be used in a
RadSec connection, IDPs SHOULD recognize that ANP systems may only be configured
to permit outbound connections on the standardized RadSec port of 2083.</t>

<t>OpenRoaming recommends the use of DNSSEC to ensure a dynamically discovered
RadSec server is authoritative for a particular realm or set of realms. Where
this is not possible, e.g., when using dynamic resolution with the
pub.3gppnetwork.org sub-domain, the OpenRoaming certificate policy <xref target="WBAPKICP"/>
permits the  configuration of supported realm(s) in the SubjectAltName of the
certificate(s) issued to the IDP.</t>

<t>An ANP MAY decide to continue with the RadSec establishment, even if a server
cannot prove it is authoritative for a realm. As the ANP's RadSec client uses a
dedicated trust store corresponding to the WBA's private Certificate Authority,
if DNS is hijacked by a third-party non-federation member who has not been
issued a certificate under WBA's PKI, the subsequent TLS establishment will
fail.</t>

<t>In order to prevent denial of service/brute force attacks, IDPs SHOULD implement
intrusion prevention functionality that monitors systems to identify TLS mutual
authentication failures. Monitoring SHOULD identify source IP addresses that
are causing repeated TLS authentication failures and use firewall functionality
to temporarily block packets from those source IP addresses</t>

</section>
<section anchor="end-user-traffic"><name>End-User Traffic</name>

<t>The OpenRoaming federation ensures RADIUS traffic is secured between ANP and IDP
and ensures Wi-Fi traffic is protected between the end-user device and the WLAN
equipment of the ANP. The ANP is therefore able to observe IP traffic to/from
end-users who have performed a successful authentication with their IDP. The
OpenRoaming legal framework (see <xref target="legal"/>) ensures that the ANP has agreed to
the OpenRoaming Privacy Policy <xref target="ORPRIVACY"/> to correctly handle the personally
identifiable information collected as part of providing the ANP service.</t>

<t>The Open-Roaming end-user terms and conditions <xref target="ORTERMS"/> ensure that end-users
are aware that the federation does not provide a secure end-to-end service. The
end-user MUST NOT rely on the encryption delivered by OpenRoaming for providing
security of services accessed using the ANP's Wi-Fi network.</t>

</section>
<section anchor="anp-inspection-of-end-user-traffic"><name>ANP Inspection of End-User Traffic</name>

<t>All OpenRoaming ANPs MUST implement layer 2 traffic inspection and filtering,
as specified in clause 5.1 of the <xref target="PASSPOINT"/> specification. ANPs MUST
prohibit the delivery of any packet received from an OpenRoaming device
directly to another OpenRoaming end-user device.</t>

<t>All ANPs MUST use traffic inspection and filtering to help protect OpenRoaming
users from malicious activity on the Internet as well as possible malicious
activity by other authenticated OpenRoaming users. ANP traffic filtering
function SHOULD NOT block ports associated with Wi-Fi calling, including UDP
ports 500 and 4500 used by Internet Key Exchange (IKE), Internet Security
Association and Key Management Protocol (ISAKMP) and IPSec <xref target="RFC7296"/>.
Recommended best practice for firewall deployment on public Internet facing
interfaces SHOULD be followed, including configuring the traffic inspection and
filtering using information derived from reliable sources of threat
intelligence.</t>

</section>
<section anchor="end-user-location"><name>End-User Location</name>

<t>The OpenRoaming legal framework (see <xref target="legal"/>) ensures that the IDP has agreed
to the OpenRoaming Privacy Policy <xref target="ORPRIVACY"/> to correctly handle the
location-based personally identifiable information collected as part of
providing the IDP service. Unless the IDP has agreed a separate privacy policy
with the end-user, the IDP MUST only use location information signalled by an
ANP for either:</t>

<t><list style="numbers" type="1">
  <t>Making service authorization decisions based on the location of the ANP's
wireless network; or</t>
  <t>Compliance with applicable law, or law enforcement requests.</t>
</list></t>

</section>
</section>
<section anchor="future-enhancements"><name>Future Enhancements</name>

<t>WBA announced the launch of its OpenRoaming Federation in June 2020. Since then,
WBA members have continued to enhance the technical framework to address new
market requirements. WBA encourages those parties interested in adapting
OpenRoaming to address new opportunities and use-cases to join the Alliance and
help drive the definition of OpenRoaming forward.</t>

</section>
<section anchor="IANA"><name>IANA Considerations</name>

<t>This document has no IANA actions.</t>

</section>


  </middle>

  <back>


<references title='References' anchor="sec-combined-references">

    <references title='Normative References' anchor="sec-normative-references">



<reference anchor="RFC2119">
  <front>
    <title>Key words for use in RFCs to Indicate Requirement Levels</title>
    <author fullname="S. Bradner" initials="S." surname="Bradner"/>
    <date month="March" year="1997"/>
    <abstract>
      <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="2119"/>
  <seriesInfo name="DOI" value="10.17487/RFC2119"/>
</reference>
<reference anchor="RFC8174">
  <front>
    <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
    <author fullname="B. Leiba" initials="B." surname="Leiba"/>
    <date month="May" year="2017"/>
    <abstract>
      <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="8174"/>
  <seriesInfo name="DOI" value="10.17487/RFC8174"/>
</reference>



    </references>

    <references title='Informative References' anchor="sec-informative-references">



<reference anchor="RFC2865">
  <front>
    <title>Remote Authentication Dial In User Service (RADIUS)</title>
    <author fullname="C. Rigney" initials="C." surname="Rigney"/>
    <author fullname="S. Willens" initials="S." surname="Willens"/>
    <author fullname="A. Rubens" initials="A." surname="Rubens"/>
    <author fullname="W. Simpson" initials="W." surname="Simpson"/>
    <date month="June" year="2000"/>
    <abstract>
      <t>This document describes a protocol for carrying authentication, authorization, and configuration information between a Network Access Server which desires to authenticate its links and a shared Authentication Server. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="2865"/>
  <seriesInfo name="DOI" value="10.17487/RFC2865"/>
</reference>
<reference anchor="RFC2866">
  <front>
    <title>RADIUS Accounting</title>
    <author fullname="C. Rigney" initials="C." surname="Rigney"/>
    <date month="June" year="2000"/>
    <abstract>
      <t>This document describes a protocol for carrying accounting information between a Network Access Server and a shared Accounting Server. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="2866"/>
  <seriesInfo name="DOI" value="10.17487/RFC2866"/>
</reference>
<reference anchor="RFC2869">
  <front>
    <title>RADIUS Extensions</title>
    <author fullname="C. Rigney" initials="C." surname="Rigney"/>
    <author fullname="W. Willats" initials="W." surname="Willats"/>
    <author fullname="P. Calhoun" initials="P." surname="Calhoun"/>
    <date month="June" year="2000"/>
    <abstract>
      <t>This document describes additional attributes for carrying authentication, authorization and accounting information between a Network Access Server (NAS) and a shared Accounting Server using the Remote Authentication Dial In User Service (RADIUS) protocol described in RFC 2865 and RFC 2866. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="2869"/>
  <seriesInfo name="DOI" value="10.17487/RFC2869"/>
</reference>
<reference anchor="RFC3579">
  <front>
    <title>RADIUS (Remote Authentication Dial In User Service) Support For Extensible Authentication Protocol (EAP)</title>
    <author fullname="B. Aboba" initials="B." surname="Aboba"/>
    <author fullname="P. Calhoun" initials="P." surname="Calhoun"/>
    <date month="September" year="2003"/>
    <abstract>
      <t>This document defines Remote Authentication Dial In User Service (RADIUS) support for the Extensible Authentication Protocol (EAP), an authentication framework which supports multiple authentication mechanisms. In the proposed scheme, the Network Access Server (NAS) forwards EAP packets to and from the RADIUS server, encapsulated within EAP-Message attributes. This has the advantage of allowing the NAS to support any EAP authentication method, without the need for method- specific code, which resides on the RADIUS server. While EAP was originally developed for use with PPP, it is now also in use with IEEE 802. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="3579"/>
  <seriesInfo name="DOI" value="10.17487/RFC3579"/>
</reference>
<reference anchor="RFC3580">
  <front>
    <title>IEEE 802.1X Remote Authentication Dial In User Service (RADIUS) Usage Guidelines</title>
    <author fullname="P. Congdon" initials="P." surname="Congdon"/>
    <author fullname="B. Aboba" initials="B." surname="Aboba"/>
    <author fullname="A. Smith" initials="A." surname="Smith"/>
    <author fullname="G. Zorn" initials="G." surname="Zorn"/>
    <author fullname="J. Roese" initials="J." surname="Roese"/>
    <date month="September" year="2003"/>
    <abstract>
      <t>This document provides suggestions on Remote Authentication Dial In User Service (RADIUS) usage by IEEE 802.1X Authenticators. The material in this document is also included within a non-normative Appendix within the IEEE 802.1X specification, and is being presented as an IETF RFC for informational purposes. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="3580"/>
  <seriesInfo name="DOI" value="10.17487/RFC3580"/>
</reference>
<reference anchor="RFC3748">
  <front>
    <title>Extensible Authentication Protocol (EAP)</title>
    <author fullname="B. Aboba" initials="B." surname="Aboba"/>
    <author fullname="L. Blunk" initials="L." surname="Blunk"/>
    <author fullname="J. Vollbrecht" initials="J." surname="Vollbrecht"/>
    <author fullname="J. Carlson" initials="J." surname="Carlson"/>
    <author fullname="H. Levkowetz" initials="H." role="editor" surname="Levkowetz"/>
    <date month="June" year="2004"/>
    <abstract>
      <t>This document defines the Extensible Authentication Protocol (EAP), an authentication framework which supports multiple authentication methods. EAP typically runs directly over data link layers such as Point-to-Point Protocol (PPP) or IEEE 802, without requiring IP. EAP provides its own support for duplicate elimination and retransmission, but is reliant on lower layer ordering guarantees. Fragmentation is not supported within EAP itself; however, individual EAP methods may support this. This document obsoletes RFC 2284. A summary of the changes between this document and RFC 2284 is available in Appendix A. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="3748"/>
  <seriesInfo name="DOI" value="10.17487/RFC3748"/>
</reference>
<reference anchor="RFC4187">
  <front>
    <title>Extensible Authentication Protocol Method for 3rd Generation Authentication and Key Agreement (EAP-AKA)</title>
    <author fullname="J. Arkko" initials="J." surname="Arkko"/>
    <author fullname="H. Haverinen" initials="H." surname="Haverinen"/>
    <date month="January" year="2006"/>
    <abstract>
      <t>This document specifies an Extensible Authentication Protocol (EAP) mechanism for authentication and session key distribution that uses the Authentication and Key Agreement (AKA) mechanism. AKA is used in the 3rd generation mobile networks Universal Mobile Telecommunications System (UMTS) and CDMA2000. AKA is based on symmetric keys, and typically runs in a Subscriber Identity Module, which is a UMTS Subscriber Identity Module, USIM, or a (Removable) User Identity Module, (R)UIM, similar to a smart card.</t>
      <t>EAP-AKA includes optional identity privacy support, optional result indications, and an optional fast re-authentication procedure. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4187"/>
  <seriesInfo name="DOI" value="10.17487/RFC4187"/>
</reference>
<reference anchor="RFC4372">
  <front>
    <title>Chargeable User Identity</title>
    <author fullname="F. Adrangi" initials="F." surname="Adrangi"/>
    <author fullname="A. Lior" initials="A." surname="Lior"/>
    <author fullname="J. Korhonen" initials="J." surname="Korhonen"/>
    <author fullname="J. Loughney" initials="J." surname="Loughney"/>
    <date month="January" year="2006"/>
    <abstract>
      <t>This document describes a new Remote Authentication Dial-In User Service (RADIUS) attribute, Chargeable-User-Identity. This attribute can be used by a home network to identify a user for the purpose of roaming transactions that occur outside of the home network. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4372"/>
  <seriesInfo name="DOI" value="10.17487/RFC4372"/>
</reference>
<reference anchor="RFC4648">
  <front>
    <title>The Base16, Base32, and Base64 Data Encodings</title>
    <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
    <date month="October" year="2006"/>
    <abstract>
      <t>This document describes the commonly used base 64, base 32, and base 16 encoding schemes. It also discusses the use of line-feeds in encoded data, use of padding in encoded data, use of non-alphabet characters in encoded data, use of different encoding alphabets, and canonical encodings. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4648"/>
  <seriesInfo name="DOI" value="10.17487/RFC4648"/>
</reference>
<reference anchor="RFC4851">
  <front>
    <title>The Flexible Authentication via Secure Tunneling Extensible Authentication Protocol Method (EAP-FAST)</title>
    <author fullname="N. Cam-Winget" initials="N." surname="Cam-Winget"/>
    <author fullname="D. McGrew" initials="D." surname="McGrew"/>
    <author fullname="J. Salowey" initials="J." surname="Salowey"/>
    <author fullname="H. Zhou" initials="H." surname="Zhou"/>
    <date month="May" year="2007"/>
    <abstract>
      <t>This document defines the Extensible Authentication Protocol (EAP) based Flexible Authentication via Secure Tunneling (EAP-FAST) protocol. EAP-FAST is an EAP method that enables secure communication between a peer and a server by using the Transport Layer Security (TLS) to establish a mutually authenticated tunnel. Within the tunnel, Type-Length-Value (TLV) objects are used to convey authentication related data between the peer and the EAP server. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4851"/>
  <seriesInfo name="DOI" value="10.17487/RFC4851"/>
</reference>
<reference anchor="RFC5176">
  <front>
    <title>Dynamic Authorization Extensions to Remote Authentication Dial In User Service (RADIUS)</title>
    <author fullname="M. Chiba" initials="M." surname="Chiba"/>
    <author fullname="G. Dommety" initials="G." surname="Dommety"/>
    <author fullname="M. Eklund" initials="M." surname="Eklund"/>
    <author fullname="D. Mitton" initials="D." surname="Mitton"/>
    <author fullname="B. Aboba" initials="B." surname="Aboba"/>
    <date month="January" year="2008"/>
    <abstract>
      <t>This document describes a currently deployed extension to the Remote Authentication Dial In User Service (RADIUS) protocol, allowing dynamic changes to a user session, as implemented by network access server products. This includes support for disconnecting users and changing authorizations applicable to a user session. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5176"/>
  <seriesInfo name="DOI" value="10.17487/RFC5176"/>
</reference>
<reference anchor="RFC5448">
  <front>
    <title>Improved Extensible Authentication Protocol Method for 3rd Generation Authentication and Key Agreement (EAP-AKA')</title>
    <author fullname="J. Arkko" initials="J." surname="Arkko"/>
    <author fullname="V. Lehtovirta" initials="V." surname="Lehtovirta"/>
    <author fullname="P. Eronen" initials="P." surname="Eronen"/>
    <date month="May" year="2009"/>
    <abstract>
      <t>This specification defines a new EAP method, EAP-AKA', which is a small revision of the EAP-AKA (Extensible Authentication Protocol Method for 3rd Generation Authentication and Key Agreement) method. The change is a new key derivation function that binds the keys derived within the method to the name of the access network. The new key derivation mechanism has been defined in the 3rd Generation Partnership Project (3GPP). This specification allows its use in EAP in an interoperable manner. In addition, EAP-AKA' employs SHA-256 instead of SHA-1.</t>
      <t>This specification also updates RFC 4187, EAP-AKA, to prevent bidding down attacks from EAP-AKA'. This memo provides information for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5448"/>
  <seriesInfo name="DOI" value="10.17487/RFC5448"/>
</reference>
<reference anchor="RFC5280">
  <front>
    <title>Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile</title>
    <author fullname="D. Cooper" initials="D." surname="Cooper"/>
    <author fullname="S. Santesson" initials="S." surname="Santesson"/>
    <author fullname="S. Farrell" initials="S." surname="Farrell"/>
    <author fullname="S. Boeyen" initials="S." surname="Boeyen"/>
    <author fullname="R. Housley" initials="R." surname="Housley"/>
    <author fullname="W. Polk" initials="W." surname="Polk"/>
    <date month="May" year="2008"/>
    <abstract>
      <t>This memo profiles the X.509 v3 certificate and X.509 v2 certificate revocation list (CRL) for use in the Internet. An overview of this approach and model is provided as an introduction. The X.509 v3 certificate format is described in detail, with additional information regarding the format and semantics of Internet name forms. Standard certificate extensions are described and two Internet-specific extensions are defined. A set of required certificate extensions is specified. The X.509 v2 CRL format is described in detail along with standard and Internet-specific extensions. An algorithm for X.509 certification path validation is described. An ASN.1 module and examples are provided in the appendices. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5280"/>
  <seriesInfo name="DOI" value="10.17487/RFC5280"/>
</reference>
<reference anchor="RFC5580">
  <front>
    <title>Carrying Location Objects in RADIUS and Diameter</title>
    <author fullname="H. Tschofenig" initials="H." role="editor" surname="Tschofenig"/>
    <author fullname="F. Adrangi" initials="F." surname="Adrangi"/>
    <author fullname="M. Jones" initials="M." surname="Jones"/>
    <author fullname="A. Lior" initials="A." surname="Lior"/>
    <author fullname="B. Aboba" initials="B." surname="Aboba"/>
    <date month="August" year="2009"/>
    <abstract>
      <t>This document describes procedures for conveying access-network ownership and location information based on civic and geospatial location formats in Remote Authentication Dial-In User Service (RADIUS) and Diameter.</t>
      <t>The distribution of location information is a privacy-sensitive task. Dealing with mechanisms to preserve the user's privacy is important and is addressed in this document. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5580"/>
  <seriesInfo name="DOI" value="10.17487/RFC5580"/>
</reference>
<reference anchor="RFC5997">
  <front>
    <title>Use of Status-Server Packets in the Remote Authentication Dial In User Service (RADIUS) Protocol</title>
    <author fullname="A. DeKok" initials="A." surname="DeKok"/>
    <date month="August" year="2010"/>
    <abstract>
      <t>This document describes a deployed extension to the Remote Authentication Dial In User Service (RADIUS) protocol, enabling clients to query the status of a RADIUS server. This extension utilizes the Status-Server (12) Code, which was reserved for experimental use in RFC 2865. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5997"/>
  <seriesInfo name="DOI" value="10.17487/RFC5997"/>
</reference>
<reference anchor="RFC6066">
  <front>
    <title>Transport Layer Security (TLS) Extensions: Extension Definitions</title>
    <author fullname="D. Eastlake 3rd" initials="D." surname="Eastlake 3rd"/>
    <date month="January" year="2011"/>
    <abstract>
      <t>This document provides specifications for existing TLS extensions. It is a companion document for RFC 5246, "The Transport Layer Security (TLS) Protocol Version 1.2". The extensions specified are server_name, max_fragment_length, client_certificate_url, trusted_ca_keys, truncated_hmac, and status_request. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6066"/>
  <seriesInfo name="DOI" value="10.17487/RFC6066"/>
</reference>
<reference anchor="RFC6071">
  <front>
    <title>IP Security (IPsec) and Internet Key Exchange (IKE) Document Roadmap</title>
    <author fullname="S. Frankel" initials="S." surname="Frankel"/>
    <author fullname="S. Krishnan" initials="S." surname="Krishnan"/>
    <date month="February" year="2011"/>
    <abstract>
      <t>Over the past few years, the number of RFCs that define and use IPsec and Internet Key Exchange (IKE) has greatly proliferated. This is complicated by the fact that these RFCs originate from numerous IETF working groups: the original IPsec WG, its various spin-offs, and other WGs that use IPsec and/or IKE to protect their protocols' traffic.</t>
      <t>This document is a snapshot of IPsec- and IKE-related RFCs. It includes a brief description of each RFC, along with background information explaining the motivation and context of IPsec's outgrowths and extensions. It obsoletes RFC 2411, the previous "IP Security Document Roadmap."</t>
      <t>The obsoleted IPsec roadmap (RFC 2411) briefly described the interrelationship of the various classes of base IPsec documents. The major focus of RFC 2411 was to specify the recommended contents of documents specifying additional encryption and authentication algorithms. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6071"/>
  <seriesInfo name="DOI" value="10.17487/RFC6071"/>
</reference>
<reference anchor="RFC6614">
  <front>
    <title>Transport Layer Security (TLS) Encryption for RADIUS</title>
    <author fullname="S. Winter" initials="S." surname="Winter"/>
    <author fullname="M. McCauley" initials="M." surname="McCauley"/>
    <author fullname="S. Venaas" initials="S." surname="Venaas"/>
    <author fullname="K. Wierenga" initials="K." surname="Wierenga"/>
    <date month="May" year="2012"/>
    <abstract>
      <t>This document specifies a transport profile for RADIUS using Transport Layer Security (TLS) over TCP as the transport protocol. This enables dynamic trust relationships between RADIUS servers. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6614"/>
  <seriesInfo name="DOI" value="10.17487/RFC6614"/>
</reference>
<reference anchor="RFC7268">
  <front>
    <title>RADIUS Attributes for IEEE 802 Networks</title>
    <author fullname="B. Aboba" initials="B." surname="Aboba"/>
    <author fullname="J. Malinen" initials="J." surname="Malinen"/>
    <author fullname="P. Congdon" initials="P." surname="Congdon"/>
    <author fullname="J. Salowey" initials="J." surname="Salowey"/>
    <author fullname="M. Jones" initials="M." surname="Jones"/>
    <date month="July" year="2014"/>
    <abstract>
      <t>RFC 3580 provides guidelines for the use of the Remote Authentication Dial-In User Service (RADIUS) within IEEE 802 local area networks (LANs). This document defines additional attributes for use within IEEE 802 networks and clarifies the usage of the EAP-Key-Name Attribute and the Called-Station-Id Attribute. This document updates RFCs 3580 and 4072.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7268"/>
  <seriesInfo name="DOI" value="10.17487/RFC7268"/>
</reference>
<reference anchor="RFC7296">
  <front>
    <title>Internet Key Exchange Protocol Version 2 (IKEv2)</title>
    <author fullname="C. Kaufman" initials="C." surname="Kaufman"/>
    <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
    <author fullname="Y. Nir" initials="Y." surname="Nir"/>
    <author fullname="P. Eronen" initials="P." surname="Eronen"/>
    <author fullname="T. Kivinen" initials="T." surname="Kivinen"/>
    <date month="October" year="2014"/>
    <abstract>
      <t>This document describes version 2 of the Internet Key Exchange (IKE) protocol. IKE is a component of IPsec used for performing mutual authentication and establishing and maintaining Security Associations (SAs). This document obsoletes RFC 5996, and includes all of the errata for it. It advances IKEv2 to be an Internet Standard.</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="79"/>
  <seriesInfo name="RFC" value="7296"/>
  <seriesInfo name="DOI" value="10.17487/RFC7296"/>
</reference>
<reference anchor="RFC7585">
  <front>
    <title>Dynamic Peer Discovery for RADIUS/TLS and RADIUS/DTLS Based on the Network Access Identifier (NAI)</title>
    <author fullname="S. Winter" initials="S." surname="Winter"/>
    <author fullname="M. McCauley" initials="M." surname="McCauley"/>
    <date month="October" year="2015"/>
    <abstract>
      <t>This document specifies a means to find authoritative RADIUS servers for a given realm. It is used in conjunction with either RADIUS over Transport Layer Security (RADIUS/TLS) or RADIUS over Datagram Transport Layer Security (RADIUS/DTLS).</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7585"/>
  <seriesInfo name="DOI" value="10.17487/RFC7585"/>
</reference>
<reference anchor="RFC7593">
  <front>
    <title>The eduroam Architecture for Network Roaming</title>
    <author fullname="K. Wierenga" initials="K." surname="Wierenga"/>
    <author fullname="S. Winter" initials="S." surname="Winter"/>
    <author fullname="T. Wolniewicz" initials="T." surname="Wolniewicz"/>
    <date month="September" year="2015"/>
    <abstract>
      <t>This document describes the architecture of the eduroam service for federated (wireless) network access in academia. The combination of IEEE 802.1X, the Extensible Authentication Protocol (EAP), and RADIUS that is used in eduroam provides a secure, scalable, and deployable service for roaming network access. The successful deployment of eduroam over the last decade in the educational sector may serve as an example for other sectors, hence this document. In particular, the initial architectural choices and selection of standards are described, along with the changes that were prompted by operational experience.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7593"/>
  <seriesInfo name="DOI" value="10.17487/RFC7593"/>
</reference>
<reference anchor="RFC7170">
  <front>
    <title>Tunnel Extensible Authentication Protocol (TEAP) Version 1</title>
    <author fullname="H. Zhou" initials="H." surname="Zhou"/>
    <author fullname="N. Cam-Winget" initials="N." surname="Cam-Winget"/>
    <author fullname="J. Salowey" initials="J." surname="Salowey"/>
    <author fullname="S. Hanna" initials="S." surname="Hanna"/>
    <date month="May" year="2014"/>
    <abstract>
      <t>This document defines the Tunnel Extensible Authentication Protocol (TEAP) version 1. TEAP is a tunnel-based EAP method that enables secure communication between a peer and a server by using the Transport Layer Security (TLS) protocol to establish a mutually authenticated tunnel. Within the tunnel, TLV objects are used to convey authentication-related data between the EAP peer and the EAP server.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7170"/>
  <seriesInfo name="DOI" value="10.17487/RFC7170"/>
</reference>
<reference anchor="RFC8446">
  <front>
    <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
    <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
    <date month="August" year="2018"/>
    <abstract>
      <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
      <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8446"/>
  <seriesInfo name="DOI" value="10.17487/RFC8446"/>
</reference>
<reference anchor="RFC8559">
  <front>
    <title>Dynamic Authorization Proxying in the Remote Authentication Dial-In User Service (RADIUS) Protocol</title>
    <author fullname="A. DeKok" initials="A." surname="DeKok"/>
    <author fullname="J. Korhonen" initials="J." surname="Korhonen"/>
    <date month="April" year="2019"/>
    <abstract>
      <t>RFC 5176 defines Change-of-Authorization (CoA) and Disconnect Message (DM) behavior for RADIUS. RFC 5176 also suggests that proxying these messages is possible, but it does not provide guidance as to how that is done. This specification updates RFC 5176 to correct that omission for scenarios where networks use realm-based proxying as defined in RFC 7542. This specification also updates RFC 5580 to allow the Operator-Name attribute in CoA-Request and Disconnect-Request packets.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8559"/>
  <seriesInfo name="DOI" value="10.17487/RFC8559"/>
</reference>
<reference anchor="RFC8952">
  <front>
    <title>Captive Portal Architecture</title>
    <author fullname="K. Larose" initials="K." surname="Larose"/>
    <author fullname="D. Dolson" initials="D." surname="Dolson"/>
    <author fullname="H. Liu" initials="H." surname="Liu"/>
    <date month="November" year="2020"/>
    <abstract>
      <t>This document describes a captive portal architecture. Network provisioning protocols such as DHCP or Router Advertisements (RAs), an optional signaling protocol, and an HTTP API are used to provide the solution.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8952"/>
  <seriesInfo name="DOI" value="10.17487/RFC8952"/>
</reference>
<reference anchor="RFC9364">
  <front>
    <title>DNS Security Extensions (DNSSEC)</title>
    <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
    <date month="February" year="2023"/>
    <abstract>
      <t>This document describes the DNS Security Extensions (commonly called "DNSSEC") that are specified in RFCs 4033, 4034, and 4035, as well as a handful of others. One purpose is to introduce all of the RFCs in one place so that the reader can understand the many aspects of DNSSEC. This document does not update any of those RFCs. A second purpose is to state that using DNSSEC for origin authentication of DNS data is the best current practice. A third purpose is to provide a single reference for other documents that want to refer to DNSSEC.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="237"/>
  <seriesInfo name="RFC" value="9364"/>
  <seriesInfo name="DOI" value="10.17487/RFC9364"/>
</reference>

<reference anchor="I-D.ietf-radext-radiusdtls-bis">
   <front>
      <title>RadSec: RADIUS over Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)</title>
      <author fullname="Jan-Frederik Rieckers" initials="J." surname="Rieckers">
         <organization>Deutsches Forschungsnetz | German National Research and Education Network</organization>
      </author>
      <author fullname="Margaret Cullen" initials="M." surname="Cullen">
         <organization>Painless Security</organization>
      </author>
      <author fullname="Stefan Winter" initials="S." surname="Winter">
         <organization>Fondation Restena | Restena Foundation</organization>
      </author>
      <date day="5" month="May" year="2026"/>
      <abstract>
	 <t>   This document defines transport profiles for running RADIUS over
   Transport Layer Security (TLS) and Datagram Transport Layer Security
   (DTLS), allowing the secure and reliable transport of RADIUS
   messages.  RADIUS/TLS and RADIUS/DTLS are collectively referred to as
   RadSec.

   This document obsoletes RFC6614 and RFC7360, which specified
   experimental versions of RADIUS over TLS and DTLS.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-radext-radiusdtls-bis-16"/>
   
</reference>

<reference anchor="I-D.draft-ietf-radext-reverse-coa">
   <front>
      <title>Reverse Change-of-Authorization (CoA) in RADIUS/(D)TLS</title>
      <author fullname="Alan DeKok" initials="A." surname="DeKok">
         <organization>InkBridge</organization>
      </author>
      <author fullname="Vadim Cargatser" initials="V." surname="Cargatser">
         <organization>Cisco</organization>
      </author>
      <date day="27" month="August" year="2025"/>
      <abstract>
	 <t>   This document defines a &quot;reverse Change-of-Authorization (CoA)&quot; path
   for RADIUS packets.  A TLS connection is normally used to forward
   request packets from a client to a server and to send responses from
   the server to the client.  This specification allows a server to send
   CoA request packets to the client in &quot;reverse&quot; down that connection,
   and for the client to send responses to the server.  Without this
   capability, it is in general impossible for a server to send CoA
   packets to a Network Access Server (NAS) that is located behind a
   firewall or NAT.  This reverse CoA functionality extends the
   available transport methods for CoA packets, but it does not change
   anything else about how CoA packets are handled.

   This document updates RFC8559.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-ietf-radext-reverse-coa-08"/>
   
</reference>

<reference anchor="I-D.draft-grayson-connectinfo">
   <front>
      <title>A syntax for the RADIUS Connect-Info attribute used in Wi-Fi networks</title>
      <author fullname="Mark Grayson" initials="M." surname="Grayson">
         <organization>Cisco Systems</organization>
      </author>
      <author fullname="Joshua Redmore" initials="J." surname="Redmore">
         <organization>CableLabs</organization>
      </author>
      <date day="19" month="May" year="2026"/>
      <abstract>
	 <t>   This document describes a syntax for the Connect-Info attribute used
   with the RADIUS protocol, enabling RADIUS clients to provide RADIUS
   servers information pertaining to a user&#x27;s connection with an IEEE
   802.11 wireless network.

	 </t>
      </abstract>
   </front>
   <seriesInfo name="Internet-Draft" value="draft-grayson-connectinfo-09"/>
   
</reference>

<reference anchor="TS23003" target="https://www.3gpp.org/ftp/Specs/archive/23_series/23.003/23003-i10.zip">
  <front>
    <title>3GPP 23.003: Numbering, addressing and identification v18.1.0</title>
    <author initials="" surname="3GPP">
      <organization></organization>
    </author>
    <date year="2023" month="March" day="28"/>
  </front>
</reference>
<reference anchor="GSMAIR67" target="https://www.gsma.com/newsroom/wp-content/uploads//IR.67-v21.0.pdf">
  <front>
    <title>GSMA IR.67: DNS Guidelines for Service Providers and GRX and IPX Providers</title>
    <author initials="" surname="GSMA">
      <organization></organization>
    </author>
    <date year="2022" month="November" day="25"/>
  </front>
</reference>
<reference anchor="PASSPOINT" target="https://www.wi-fi.org/discover-wi-fi/passpoint">
  <front>
    <title>Wi-Fi Alliance Passpoint</title>
    <author initials="" surname="Wi-Fi Alliance">
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="ISO3166" target="https://www.iso.org/standard/72483.html">
  <front>
    <title>Codes for the representation of names of countries and their subdivisions</title>
    <author initials="" surname="ISO 3166-2:2020">
      <organization></organization>
    </author>
    <date year="2020" month="August"/>
  </front>
</reference>
<reference anchor="ISO29115" >
  <front>
    <title>Information technology - Security techniques: Entity authentication assurance framework</title>
    <author initials="" surname="ISO/IEC 29115">
      <organization></organization>
    </author>
    <date year="2013" month="April"/>
  </front>
</reference>
<reference anchor="ORPRIVACY" target="https://wballiance.com/openroaming/privacy-policy/">
  <front>
    <title>OpenRoaming End-User Privacy Policy</title>
    <author initials="" surname="Wireless Broadband Alliance">
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="ORTERMS" target="https://wballiance.com/openroaming/toc/">
  <front>
    <title>OpenRoaming End User Terms and Conditions</title>
    <author initials="" surname="Wireless Broadband Alliance">
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="PEAP" target="https://winprotocoldocs-bhdugrdyduf5h2e4.b02.azurefd.net/MS-PEAP/%5bMS-PEAP%5d.pdf">
  <front>
    <title>Protected Extensible Authentication Protocol (PEAP)</title>
    <author initials="" surname="Microsoft Corporation">
      <organization></organization>
    </author>
    <date year="2024" month="April"/>
  </front>
</reference>
<reference anchor="WBAVSA" target="https://github.com/wireless-broadband-alliance/RADIUS-VSA">
  <front>
    <title>Vendor Specific Attributes</title>
    <author initials="" surname="Wireless Broadband Alliance">
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="IEEE80211" target="https://standards.ieee.org/ieee/802.11/5536/">
  <front>
    <title>Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications</title>
    <author initials="" surname="IEEE">
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="WBAEIPP" target="https://wballiancec.wpenginepowered.com/wp-content/uploads/2021/02/IMSI_Privacy_Protection_for_Wi-Fi_Technical_Specification_v1.1.0_Revision_FINAL.pdf">
  <front>
    <title>WBA Enhanced IMSI Privacy Protection</title>
    <author initials="" surname="Wireless Broadband Alliance">
      <organization></organization>
    </author>
    <date year="2022" month="August"/>
  </front>
</reference>
<reference anchor="E212" target="https://www.itu.int/itu-t/recommendations/rec.aspx?rec=E.212">
  <front>
    <title>The international identification plan for public networks and subscriptions</title>
    <author initials="" surname="ITU-T Study Group 2">
      <organization></organization>
    </author>
    <date year="2024" month="June"/>
  </front>
</reference>
<reference anchor="WBAPKICP" target="https://wballiance.com/openroaming/pki-repository/">
  <front>
    <title>WBA PKI Certificate Policy v4.0.0</title>
    <author initials="" surname="Wireless Broadband Alliance">
      <organization></organization>
    </author>
    <date year="2024" month="April"/>
  </front>
</reference>
<reference anchor="WBAPKICPS" target="https://wballiance.com/openroaming/pki-repository/">
  <front>
    <title>WBA PKI Certificate Practise Statement v1.0.0</title>
    <author initials="" surname="Wireless Broadband Alliance">
      <organization></organization>
    </author>
    <date year="2025" month="September"/>
  </front>
</reference>


    </references>

</references>


<?line 1760?>

<section anchor="sig"><name>Example OpenRoaming Signalling Flow</name>

<t>An example signalling flow for OpenRoaming is illustrated in <xref target="figsigflow"/>.</t>

<t><list style="numbers" type="1">
  <t>In step 1, the WLAN is configured with Passpoint information and includes
configured RCOIs in its beacon.</t>
  <t>The beacon can only contain 3 RCOIs and so if none of the RCOIs match a
profile provisioned in the device, the device queries for the list of RCOIs
supported.</t>
  <t>If the list includes an RCOI that matches a configured profile in the device,
then device sends an EAPOL Start message to the authenticator.</t>
  <t>The authenticator in the AP/WLC requests the EAP-Identity of the device.</t>
  <t>The device responds with its EAP-Identity, which is a user@realm Network
Access Identifier (NAI)</t>
  <t>The NAS in the WLC/AP embeds the NAI in the user-name attribute in a RADIUS
Access-Request packet and forwards to the configured RadSec client.</t>
  <t>The RadSec client recovers the realm from the NAI/user-name attribute and
performs a DNS-based dynamic peer discovery.</t>
  <t>The RadSec client established an mTLS authenticated TLS session with the
discovered peer using certificates issued by the WBA PKI.</t>
  <t>Once TLS is established, the RadSec client forwards the Access-Request to the
RadSec server.</t>
  <t>If the EAP Server is not co-located with the RadSec server, the RadSec
server proxies the Access-Request to the EAP-Server.</t>
  <t>The EAP-Server continues the EAP dialogue with the EAP Supplicant in the
end-user device using a Passpoint defined EAP method.</t>
  <t>Following successful authentication, the EAP-Server responds with a RADIUS
Access-Accept packet containing the EAP-SUCCESS message and the keying material
generated through the EAP method to secure the Wi-Fi session.</t>
  <t>The Access-Accept packet is forwarded back to the RadSec client.</t>
  <t>The RadSec client forwards the Access-Accept packet to the NAS in the AP/WLC.</t>
  <t>The AP/WLC recovers the keying material from the Access-Accept packet and
forwards the EAP-SUCCESS message to the device.</t>
  <t>The keying material is used to secure the Wi-Fi interface between the
end-user device and AP/WLC.</t>
  <t>The AP/WLC generates a RADIUS Accounting-Request packet with
Acct-Status-Type Start which is forwarded to the RadSec client.</t>
  <t>The RadSec client forwards the Accounting-Request packet over the
TLS tunnel to the RadSec server.</t>
  <t>The RadSec server can forward the Accounting-Request packet to the
EAP-Server.</t>
</list></t>

<ul empty="true"><li>
  <t>20-22. After the Wi-Fi session terminates, an Accounting-Request message with Acct-Status-Type Stop is proxied towards the RadSec Server.</t>
</li></ul>

<figure title="Example OpenRoaming Signalling Flow" anchor="figsigflow"><artwork><![CDATA[
+------+    +------+    +------+    +------+    +------+    +------+
|      |    |Wi-Fi |    |RadSec|    |      |    |RadSec|    |  EAP |
|Device|    |AP/WLC|    |Client|    | DNS  |    |Server|    |Server|
+------+    +------+    +------+    +------+    +------+    +------+
   | 1) Beacon |           |           |           |           |
   |<----------|           |           |           |           |
   | 2) ANQP   |           |           |           |           |
   | Query     |           |           |           |           |
   |<--------->|           |           |           |           |
   | 3) EAPOL  |           |           |           |           |
   | Start     |           |           |           |           |
   |---------->|           |           |           |           |
   | 4) EAP-ID |           |           |           |           |
   | Request   |           |           |           |           |
   |<----------|           |           |           |           |
   | 5) EAP-ID | 6) RADIUS |           |           |           |
   | Response  | Access-   | 7) DNS    |           |           |
   |---------->| Request   | Query     |           |           |
   |           |---------->| NAPTR,SRV,|           |           |
   |           |           | A/AAAA    |           |           |
   |           |           | Records   |           |           |
   |           |           |<--------->|           |           |
   |           |           | 8) mTLS   |           |           |
   |           |           |<--------------------->|           |
   |           |           | 9) RadSec |           |           |
   |           |           | Access-Request        |           |
   |           |           |---------------------->|           |
   |           |           |           |           | 10) RADIUS|
   |           |           |           |           | Access-   |
   |           |           |           |           | Request   |
   |           |           |           |           |---------->|
   |           |         11) EAP Dialogue          |           |
   |<--------------------------------------------------------->|
   |           |           |           |           | 12) RADIUS|
   |           |           |           |           | Access-   |
   |           | 14) RADIUS|           |           | Accept    |
   |           | Access-   |           |           | (EAP-     |
   |           | Accept    | 13) RadSec Access-    | SUCCESS)  |
   |           | (EAP-     | Accept (EAP-SUCCESS)  |<----------|
   | 15) EAP-  | SUCCESS)  |<----------------------|           |
   | SUCCESS   |<----------|           |           |           |
   |<----------|           |           |           |           |
 +---------------+         |           |           |           |
 | 16) Secured   |         |           |           |           |
 |  OpenRoaming  17) RADIUS|           |           |           |
 |    Service    Accounting|           |           |           |
 |               Request   |           |           | 19) RADIUS|
 |               (Start)   | 18) RadSec Accounting | Accounting|
 |               |-------->| -Request (Start)      | Request   |
 |               |         |---------------------->| (Start)   |
 |               |         |           |           |---------->|
 +---------------+         |           |           |           |
   |           | 20) RADIUS|           |           |           |
   |           | Accounting|           |           |           |
   |           | Request   |           |           | 22) RADIUS|
   |           | (Stop)    | 21) RadSec Accounting | Accounting|
   |           |---------->| -Request (Stop)       | Request   |
   |           |           |---------------------->| (Stop)    |
   |           |           |           |           |---------->|
+------+    +------+    +------+    +------+    +------+    +------+
|Device|    |Wi-Fi |    |RadSec|    | DNS  |    |RadSec|    |  EAP |
|      |    |AP/WLC|    |Client|    |      |    |Server|    |Server|
+------+    +------+    +------+    +------+    +------+    +------+
]]></artwork></figure>

</section>
<section anchor="rcoi"><name>Example OpenRoaming RCOI Usage</name>

<t>This Annex illustrates the use of OpenRoaming RCOIs to enforce different
policies in the OpenRoaming federation, ensuring that when there is a policy
mismatch between the end-user device and access network, that the end-user
device will avoid triggering an authentication exchange that would subsequently
have to be rejected because of policy enforcement decisions.</t>

<section anchor="openroaming-rcoi-based-policy-for-supporting-qos-tiers"><name>OpenRoaming RCOI Based Policy for Supporting QoS Tiers</name>

<t><xref target="figqosrcoi"/> illustrates the use of OpenRoaming RCOIs for supporting the
standard (bronze) and silver QoS tiers across the federation. The figure shows
two different devices:</t>

<t><list style="symbols">
  <t>Device 1 has been provisioned by its IDP to require the basic bronze QoS
policy.</t>
  <t>Device 2 has been provisioned by its IDP to require the silver tier of QoS
handling.</t>
</list></t>

<t>The figure also shows illustrates the RCOI configuration of two ANP Access
Networks:</t>

<t><list style="symbols">
  <t>ANP#1 is configured to support the silver tier of QoS handling corresponding
to the silver RCOI. Because the network requirements associated with the silver
tier are a superset of the bronze QoS tier, the ANP also configures the bronze
RCOI on its Wi-Fi access network.</t>
  <t>ANP#2 is only configured to support the standard (bronze) QoS tier and as such
only configures the RCOI corresponding to the bronze QoS tier on its Wi-Fi
access network.</t>
</list></t>

<t>The figure shows how normal Passpoint RCOI matching rules can be used to ensure
that devices only trigger authentication with ANP access networks which support
the required QoS tier according to the device's policy.</t>

<figure title="Use of OpenRoaming RCOIs to realize QoS policies" anchor="figqosrcoi"><artwork><![CDATA[
+----------------------+      +----------------------+
|OpenRoaming Device #1 |      |OpenRoaming Device #2 |
| Bronze Service Level |      | Silver Service Level |
| +------------------+ |      | +------------------+ |
| |Passpoint Profile | |      | |Passpoint Profile | |
| |   Bronze RCOI    | |      | |   Silver RCOI    | |
| +------------------+ |      | +------------------+ |
|     /|\        /|\   |      |           /|\        |
+------|----------|----+      +------------|---------+
       |          |                        | RCOI
       |          |                        | Match
       |     +-----------------------------+
  RCOI |     |    |
 Match |     |    |
       |     |    +------------------------+
       |     |                             | RCOI
       |     |                             | Match
      \|/   \|/                           \|/
+----------------------+       +----------------------+
|  OpenRoaming ANP#1   |       |  OpenRoaming ANP#2   |
|      Silver QoS      |       |      Bronze QoS      |
|   +--------------+   |       |   +--------------+   |
|   |     WLAN     |   |       |   |     WLAN     |   |
|   | Bronze RCOI  |   |       |   | Bronze RCOI  |   |
|   | Silver RCOI  |   |       |   |              |   |
|   +--------------+   |       |   +--------------+   |
+----------------------+       +----------------------+

]]></artwork></figure>

</section>
<section anchor="openroaming-rcoi-based-policy-for-supporting-identity-type-policies"><name>OpenRoaming RCOI Based Policy for Supporting Identity Type Policies</name>

<t><xref target="figidtypercoi"/> illustrates the use of OpenRoaming RCOIs for supporting
different identity type policies across the federation. The figure shows two
different devices:</t>

<t><list style="symbols">
  <t>Device#1 has been provisioned by an IDP corresponding to a service provider.
It provisions the device's Passpoint profile with the RCOI policy identifying
the service provider ID-type policy as well as the "any ID-type"  RCOI policy.</t>
  <t>Device 2 has been provisioned by a IDP corresponding to a hospitality
provider. It provisions the device's Passpoint profile with the RCOI policy
identifying the hospitality ID-type policy as well as the "any ID-type" RCOI
policy.</t>
</list></t>

<t>The figure also shows the RCOI configuration of three different ANP Access
Networks:</t>

<t><list style="symbols">
  <t>ANP#1 only supports access using service provider type-IDs and so has
configured the service provider ID-type policy RCOI.</t>
  <t>ANP#2 supports access from all identity types and so has configured the any
ID-type policy RCOI.</t>
  <t>ANP#3 only supports access using hospitality type IDs and so has configured
the hospitality ID-type policy RCOI.</t>
</list></t>

<t>The figure shows how normal Passpoint RCOI matching rules can be used to ensure
that devices only trigger authentication with ANP access networks which support
the required identity types according to the ANP's policy.</t>

<figure title="Use of OpenRoaming RCOIs to realize ID-Type policies" anchor="figidtypercoi"><artwork><![CDATA[
+----------------------------+   +-----------------------------+
|   OpenRoaming Device #1    |   |    OpenRoaming Device #2    |
|  IDP is Service Provider   |   | IDP is Hospitality Provider |
|+------------++------------+|   |+------------++------------+ |
|| Passpoint  || Passpoint  ||   || Passpoint  || Passpoint  | |
||  Profile   ||  Profile   ||   ||  Profile   ||  Profile   | |
||     SP     ||Any ID-Type ||   ||Any ID-Type || Hospitality| |
||ID-Type RCOI||    RCOI    ||   ||   RCOI     ||ID-Type RCOI| |
|+------------++------------+|   |+------------++------------+ |
|      /|\          /|\      |   |       /|\        /|\        |
+-------|------------|-------+   +-------------------|---------+
        |            |                    |          |
        | RCOI       | RCOI               | RCOI     | RCOI
        | Match      | Match              | Match    | Match                                   
        |            |                    |          |
        |            +-----+        +-----+          |
        |                  |        |                |
       \|/                \|/      \|/              \|/
+------------------+  +------------------+  +------------------+                                  
|OpenRoaming ANP#1 |  |OpenRoaming ANP#2 |  |OpenRoaming ANP#3 |                              
|  Only accepts    |  |    Accepts all   |  |   Only accepts   |
| Service Provider |  |     ID-Types     |  |    Hospitality   |
|     ID-Types     |  |                  |  |     ID-Types     |
| +--------------+ |  | +--------------+ |  | +--------------+ |
| |     WLAN     | |  | |     WLAN     | |  | |     WLAN     | |
| |  SP ID-Type  | |  | | Any ID-Type  | |  | |  Hospitality | |
| |     RCOI     | |  | |     RCOI     | |  | | ID-Type RCOI | |
| +--------------+ |  | +--------------+ |  | +--------------+ |
+------------------+  +------------------+  +------------------+

]]></artwork></figure>

</section>
<section anchor="openroaming-rcoi-based-policy-for-supporting-different-identity-proofing-policies"><name>OpenRoaming RCOI Based Policy for Supporting Different Identity Proofing Policies</name>

<t><xref target="figidproofrcoi"/> illustrates the use of OpenRoaming RCOIs for supporting
different identity proofing policies across the federation. The figure shows two
different devices:</t>

<t><list style="symbols">
  <t>Device 1 has been provisioned by an IDP that uses enhanced identity proofing
controls that meet the enhanced OpenRoaming requirements, equivalent to LoA 3 in
<xref target="ISO29115"/>. Because the enhanced identity proofing requirements are a superset
of the requirements of the baseline identity proofing policy, the IDP also
configures the use of the RCOI with baseline identity proofing.</t>
  <t>Device 2 has been provisioned by an IDP that uses identity proofing with
controls that meet the baseline OpenRoaming requirements.</t>
</list></t>

<t>The figure also shows the RCOI configuration of two ANP Access Networks:</t>

<t><list style="symbols">
  <t>ANP#1 is operated in a geography where regulations require support of enhanced
identity proofing.</t>
  <t>ANP#2 is operated in a geography where regulations permit support of
authentications with identities managed using the OpenRoaming baseline identity
proofing requirements.</t>
</list></t>

<t>The figure shows how normal Passpoint RCOI matching rules can be used to ensure
that devices only trigger authentication with ANP access networks which support
the required identity proofing according to the ANP's policy.</t>

<figure title="Use of OpenRoaming RCOIs to realize identity proofing policies" anchor="figidproofrcoi"><artwork><![CDATA[

+----------------------------+   +----------------------------+
|    OpenRoaming Device #1   |   |    OpenRoaming Device #2   |
|     IDP uses enhanced      |   |     IDP uses baseline      |
|     identity proofing      |   |     identity proofing      |
|+------------++------------+|   |       +------------+       |
|| Passpoint  ||  Passpoint ||   |       |  Passpoint |       |
||  Profile   ||   Profile  ||   |       |   Profile  |       |
||Enhanced LoA||Baseline LoA||   |       |Baseline LoA|       |
||    RCOI    ||    RCOI    ||   |       |    RCOI    |       |
|+------------++------------+|   |       +------------+       |
|      /|\          /|\      |   |             /|\            |
+-------|------------|-------+   +--------------|-------------+   
        | RCOI       | RCOI                     | RCOI
        | Match      | Match                    | Match
        |            +--------------------+     +-----+
        |                                 |           |
       \|/                               \|/         \|/
   +------------------------+       +------------------------+
   |   OpenRoaming ANP#1    |       |   OpenRoaming ANP#2    |
   | Operates in a country  |       | Operates in a country  |
   |  where the regulator   |       |  where the regulator   |
   |   requires enhanced    |       |   permits baseline     |
   |   identity proofing    |       |   identity proofing    |
   |    +--------------+    |       |    +--------------+    |
   |    |     WLAN     |    |       |    |     WLAN     |    |
   |    | Enhanced LoA |    |       |    | Baseline LoA |    |
   |    |     RCOI     |    |       |    |     RCOI     |    |
   |    +--------------+    |       |    +--------------+    |
   +------------------------+       +------------------------+


]]></artwork></figure>

</section>
</section>
<section anchor="legal"><name>OpenRoaming Legal Framework</name>

<section anchor="seamless-experience"><name>Seamless Experience</name>

<t>In order for OpenRoaming to avoid the need for end-users to be presented with
and accept legal terms and conditions covering their use of the Wi-Fi hotspot
service, there needs to be a legal framework in place.</t>

</section>
<section anchor="openroaming-organization"><name>OpenRoaming Organization</name>

<t>The federation is based on a legal framework that comprises a set of policies,
templated agreements and immutable terms as agreed to by the WBA and its
membership. The framework defines a hierarchy of roles, responsibilities and
relationships that are designed to enable the federation to scale to millions of
Wi-Fi access networks.</t>

<t><xref target="figorg"/> shows the relationships between WBA, OpenRoaming Brokers, who are
members of the WBA that have agreed terms with WBA to perform the OpenRoaming
broker role and the OpenRoaming providers. OpenRoaming brokers agree terms with
OpenRoaming Providers that can act as Access Network Providers (ANPs) and/or
Identity Providers (IDPs). OpenRoaming providers do not have to be members of
the WBA to provide OpenRoaming services. Finally, OpenRoaming IDPs agree terms
with OpenRoaming end-users who then benefit from seamless authentication onto
the Wi-Fi networks deployed by the different OpenRoaming ANPs.</t>

<figure title="Organization of the OpenRoaming Federation" anchor="figorg"><artwork><![CDATA[
                            +----------+
                            | Wireless |
                            | Broadband|
                            | Alliance |
                            +----------+
                              /|\  /|\
                               |    |
                          Agrees terms with
                               |    |
          +-----------+        |    |        +-----------+
          |OpenRoaming|<-------+    +------->|OpenRoaming|
          |Broker     |                      |Broker     |
          +-----------+                      +-----------+
             /|\  /|\                           /|\  /|\
              |    |                             |    |
         Agrees terms with                  Agrees terms with
              |    |                             |    |
        +-----+    +-----+                 +-----+    +-----+
        |                |                 |                |
       \|/              \|/               \|/              \|/
+-----------+     +-----------+     +-----------+     +-----------+
|OpenRoaming|     |OpenRoaming|     |OpenRoaming|     |OpenRoaming|
|Access     |     |Identity   |     |Identity   |     |Access     |
|Network    |     |Provider   |     |Provider   |     |Network    |
|Provider   |     |           |     |           |     |Provider   |
+-----------+     +-----------+     +-----------+     +-----------+
                   /|\  /|\            /|\  /|\
                    |    |              |    |
               Agrees terms with   Agrees terms with
                    |    |              |    |
      +-------------+    |              |    +------------+
      |                  |              |                 |
     \|/                \|/            \|/               \|/
+-----------+     +-----------+     +-----------+     +-----------+
|OpenRoaming|     |OpenRoaming|     |OpenRoaming|     |OpenRoaming|
|End-User   |     |End-User   |     |End-User   |     |End-User   |
+-----------+     +-----------+     +-----------+     +-----------+

]]></artwork></figure>

</section>
<section anchor="openroaming-legal-terms"><name>OpenRoaming Legal Terms</name>

<t>In OpenRoaming there is no direct agreement between individual ANPs and
individual IDPs or between end-users and ANPs. As a consequence, OpenRoaming
brokers agree to use certain federation-specific terms in their agreements with
OpenRoaming providers.</t>

<t>This arrangement ensures that all ANPs agree to abide by the OpenRoaming
privacy policy <xref target="ORPRIVACY"/> and all end-users agree to abide by the OpenRoaming
end-user Terms and Conditions <xref target="ORTERMS"/>.</t>

</section>
<section anchor="anp-performance-data"><name>ANP Performance Data</name>

<t>ANPs MAY voluntarily share performance data with IDPs related to the performance
of ANP's wireless network used by the IDP's OpenRoaming end-users. IDPs that do
not separately agree to terms with ANP governing use of performance data MUST
solely process collected performance data for the purposes of provision of the
service, including making service authorization decisions and network
troubleshooting. These IDPs MUST NOT disclose such performance data to any third
party except as necessary for direct network troubleshooting with the
originating ANP.</t>

</section>
<section anchor="service-abuse"><name>Service Abuse</name>

<t>If an ANP detects service abuse by an end-user in contravention of the end-user
Terms and Conditions, the ANP SHOULD record logs relevant to the abuse and use
the email address embedded in the Subject Alternative Name (SAN) attribute in
IDP's issued end-entity certificate to contact the abuser's IDP, indicating the
nature of the abuse together with any relevant logs. The immutable terms of
OpenRoaming REQUIRE IDPs to make reasonable efforts to address the service abuse
experienced by the ANP, which may include the withdrawal of the OpenRoaming
service from the identified abusive end-user.</t>

</section>
<section anchor="openroaming-troubleshooting"><name>OpenRoaming Troubleshooting</name>

<t>The immutable terms included in the OpenRoaming templated agreements require
OpenRoaming providers to make reasonable efforts to support troubleshooting
procedures, including monitoring email addresses shared for troubleshooting
purposes.</t>

<t>OpenRoaming defines the following severity levels:</t>

<t><list style="symbols">
  <t>Severity 1: OpenRoaming service is not available,</t>
  <t>Severity 2: OpenRoaming service is severely impacted,</t>
  <t>Severity 3: OpenRoaming service is partially degraded, and</t>
  <t>Severity 4: Informational.</t>
</list></t>

<t>Prior to escalating any issue with a third party, the initiating provider should
conduct an initial assessment, logging any troubleshooting steps and recording
all logs relevant to the issue. The initiating provider should designate a
contact for handling troubleshooting and share such with the third-party
provider contact identified via the respective WBA PKI certificate, together
with details of the issue, including its severity.</t>

<section anchor="issue-response"><name>Issue Response</name>

<t>The third-party shall respond to all escalations raised by initiating providers.
The recommended maximum timeframes for the initial email response for issue
response associated with the OpenRoaming Settled Service are as follows:</t>

<t><list style="symbols">
  <t>Severity 1: Email response within 2 days.</t>
  <t>Severity 2: Email response within 4 days.</t>
  <t>Severity 3: Email response within 8 days.</t>
  <t>Severity 4: Email response within 28 days.</t>
</list></t>

<t>This does not preclude a provider unilaterally agreeing to shorter timeframes
for responding to initial issues. The initiating provider and the third-party
shall use reasonable efforts to try and identify any issues and remediate any
problems. Both providers should record affected systems and attempted
resolutions.</t>

</section>
<section anchor="issue-escalation"><name>Issue Escalation</name>

<t>If the issue cannot be resolved to the acceptance of both providers within an
acceptable timeframe, the provider may escalate the issue to WBA.</t>

<t>The recommended maximum timeframes before escalations associated with
OpenRoaming Settled Service are escalated to WBA as follows:</t>

<t><list style="symbols">
  <t>Severity 1: Escalate after 4 working-days of issue non-resolution.</t>
  <t>Severity 2: Escalate after 8 working-days of issue non-resolution.</t>
  <t>Severity 3: Escalate after 28 working-days of issue non-resolution.</t>
  <t>Severity 4: Escalation is not applicable.</t>
</list></t>

<t>This does not preclude both access network and identity providers bilaterally
agreeing to shorter timeframes for handling issue escalation.</t>

<t>Escalation includes sharing all logs and correspondence regarding the issue and
attempts at resolution.</t>

</section>
</section>
<section anchor="breach-of-contract"><name>Breach of Contract</name>

<t>Where it can be determined that an End-Entity is in breach of their contract
terms as defined in the OpenRoaming legal framework, WBA reserves the right to
cancel the End-Entity's OpenRoaming enrolment and revoke any WBA issued
certificates.</t>

</section>
</section>
<section numbered="false" anchor="Changelog"><name>Changelog</name>
<t><list style="symbols">
  <t>01 - added details of WBA-Custom-SLA for OpenRoaming ANP networks that signal
using <xref target="RFC7268"/> that they operate on a vehicular platform. Added
clarifications regarding use of direct and indirect names in certificate
validation.</t>
  <t>02 - added details of OpenRoaming protection of end-user privacy, including
WRIX recommendations on use of correlation identifiers in RADIUS Access-Accept
packet that may unintentionally weaken end-user privacy.</t>
  <t>03 - updated DNSsec reference. Added section on interworking with other
federations.</t>
  <t>04 - updated PKI Policy OID to reflect new certificate chain. Added IDP
availability requirements. Added session-timeout requirements. Added new
onboarding capabilities for short lived credentials. Added text concerning
OpenRoaming Privacy Policy and restrictions on location usage.</t>
  <t>05 - added new section on use of Reply-Message, added new text on
troubleshooting, clarified RADIUS accounting handling, clarified CUI usage in
Access-Accept, clarified use of EAP types.</t>
  <t>06 - corrected ePDG FQDN. Added missing enhanced Reply-Message for
cause-code = 45. Added new text regarding recommended best practice for firewall
deployment on public Internet facing interfaces should be followed for ANP
RADSEC connections and for protecting end-users.</t>
  <t>07 - added details of service abuse handling. Added further details of RADIUS
attributes. Added rationale for busy hour sustained throughput values.
Introduced requirements on minimum speeds for OpenRoaming bronze and silver
tiers. Corrected WBAID ABNF by adding in permitted special characters.</t>
  <t>08 - added clarification on the use of "aaa+auth" to identify a RadSec
server that supports both RADIUS authentication and accounting. Added
requirements for reverse CoA and associated RadSec connection management.
Added support for enhanced RADIUS connect-info for connection instrumentation and
authorization.</t>
</list></t>

</section>
<section numbered="false" anchor="Acknowledgements"><name>Acknowledgements</name>

<t>The authors would like to thank all the members of the WBA's OpenRoaming
Workgroup who help define the OpenRoaming specifications.</t>

</section>


  </back>

<!-- ##markdown-source:
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
/NYnuYPO1U0MHrfLwMlJ1VVH4RYVDq3RtKBk3P1B1mFwOBFJgsVYm6+7EbTX
BAfsGztjpOzMrTI/7qmFWnzE0TYyI1zKipeAh+tEnh/c+PBWXbsEX+NG9fz2
ZRK8juUcghyIgorE0gqsVcWikfOHi3DqrYK4LBWQN41Mm51m4sRU+FhqSXMZ
b6JTc1JCNW8TGf8fEPWrwPhBv/flWn0Fcvdyl6Z5OeB/+vzPzv0s4yvMvcNL
bPpn/WX6o+bu89z1Ks8WlD9g3f1g3RE1gmyc+Y+bW9dN9fLICqGd1d38X2/u
ftN5S5P6ubOHlrail2OtLf84EW9cb1L8h0EuuyZBTRmRyuC4/oi5K9gCGs0y
Ldno+t81t1u3RGlg6AAy4Luvii1NaGKpAxZkF+NnRraaBPv06rrvwZbKPn11
bGmEXO/YmCTJ+o79IXNXsGUeL1bX8RjLmObVbbhv1zZBWUyi/tZ/065VKBNI
2di4s/HovlouBDt7JLRM113Nfvja69YSqG2n02odusMTEy2KkvqyyyC7M/TV
UF9Vb3w6b4k5cnmkKQe5qHO5OqS/7k/1CbLbRZI3Drqmk/eX7FqDssPyfpu+
EwpXqvNgOQIsKkBPufxfr+bLm5eH55+bEvMz71UvdVgcLZs6ckOivlENJVvQ
I189iUznbrM7tFsdvoY4+cyrafEYu8PXtTno3MNoli1uujPqftJK97+u1cDN
TZVw75n8D7gKglhtd6GCH5pWZT+upapbO3c7KdJUKcPeEHrNbw+gq99W/TUt
vJOhqA7vcdP0uLeZvWjk7azaFsnwQM7fCQNAKiK6hGUd2vk78JeFBchdhz1p
kUCKH1n/TQMmWfjEMiKeQHJsj7S4uJdLQFqxjxU+cSWbK/e5U7dVV2piGht9
6jICdl3VR1RIz/OU2on8yxb2QyOOoAmfMEeoperzeLALgmKiJDCn1nG+bpOl
7nT1mkZo+qjUK5KWMBiMK75ENATbEevmYy6vpCYO9nEGlYuMV7mouY8JBjWr
3Z/72YUeLM9Ij71yguJB3ALbmmAI8rKMBaIs8jq/2rwFLnhneCpqlyS44jdW
qwI5pcL++g5xFnWDF9N0yc4abCUSp7WGN01+CfLHFM6DJdP+iDXNR+eRB1xj
KX9kWe4wPn60dSY5cHipqOe6IFHlYG/ndM/QEehVn9NsFT59Vx69sYBEmIBx
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
2BaCbMkARxzUdAKaCPGPvv4/9g7ZdJmhAQA=

-->

</rfc>

