[Contents] [Prev] [Next] [Index] [Report an Error] [No Frames]


Adding Attributes to an Access-Accept

This feature allows you to add attribute values retrieved from an external subscriber database to Access-Accept message. For example, you might want to include the subscriber's level of service in the Access-Accept as the value of the attribute Reply-Message. Another example might be retrieving the IP address to be assigned to a mobile node and returning it in the Access-Accept as the value of the attribute Framed-IP-Address.

Overview

An Access-Accept can include attribute values. Two authentication plug-ins are used to accomplish the tasks of authentication and adding attributes to an Access-Accept. The authentication plug-ins are:

Data Flow

Authentication of the Access-Request and the addition of attributes to the Access-Accept is handled according to the following flow of data:

  1. The mobile device sends an Access-Request to Steel-Belted Radius Carrier.
  2. SIMAuth manages the EAP negotiation (challenge, and response).
  3. If SIMAuth authenticates the request, it attaches the IMSI and MSISDN of the mobile device, and sends the request to the SQL plug-in: radsql.aut or radsqljdbc.aut.
  4. radsql.aut or radsqljdbc.aut can use the IMSI or MSISDN as a key to query the database and request attribute values (as a separate step from the SIMAuth authentication).
  5. The helped authenticator (usually the SQL authentication plug-in: radsql.aut or radsqljdbc.aut), returns the Access-Accept with attribute values attached.

    NOTE: SIMAuth is known as a Steel-Belted Radius Carrier EAP helper because it performs the EAP authentication for the helped authentication method (usually the SQL authentication plug-ins: radsql.aut or radsqljdbc.aut). Although these SQL plug-ins are usually used for authentication, in this case their function is to access the subscriber database, retrieve attributes, and return them with the Access-Accept.

    For complete information about EAP helpers, see the Steel-Belted Radius Carrier Administration and Configuration Guide.


Figure 27 shows an example data flow in which Steel-Belted Radius Carrier, SIMAuth, and the SQL plug-ins (either radsql.aut or radsqljdbc.aut) work together to perform the following tasks:


Figure 27: Example Data Flow for Addition of Attribute to Access-Accept

Configuration Tasks

To add attributes to the Access-Accept, you need to perform the following tasks:

Configuring Files for Adding Attributes to Access-Accept

The following files require special configuration to allow the addition of attributes to the Access-Accept:

To configure files for adding attributes to Access-Accept:

  1. In the [Bootstrap] section of simauth.aut (for Oracle databases), set Enable to 0.

Setting Enable=0 ensures that these files are disabled.

Example:
[Bootstrap]
Enable=0

  1. Create a copy of simauth.aut and name it simauth.eap.

This renaming causes SIMAuth to become the EAP helper.

  1. In the [Bootstrap] section of simauth.eap, ensure that Enable is set to 1.
  2. Open the relevant database access configuration file. This file is one of:
  1. Check the [Bootstrap] section of radsql.aut, radsqljdbc.aut, or ldapauth.aut for the name of the specified authentication method. In the following example, the name of the specified authentication method is SQLAuthenticator.

Example:
[Bootstrap]
Initializationstring=SQLAuthenticator

For more information on configuring the radsql.aut and radsqljdbc.aut files, see Chapter 10, SQL Authentication Files in this guide and Chapter 18, Configuring SQL Authentication in the Steel-Belted Radius Carrier Administration and Configuration Guide.

For more information about how to configure the ldapauth.aut file, see Chapter 12, LDAP Authentication File in this guide and Chapter 20, Configuring LDAP Authentication in the Steel-Belted Radius Carrier Administration and Configuration Guide.

  1. Ensure that there is a section in the eap.ini file that includes the name of the helped authentication method you specified in Step 5. In this example the name is SQLAuthenticator.

Example:
[SQLAuthenticator]

  1. Ensure that the following lines are included in the helped authentication method section in eap.ini that you created in Step 6.

[SQLAuthenticator]
EAP-Only=1
First-Handle-Via-Auto-EAP=1
EAP-Type=SIM,AKA
Available-EAP-Only-Values=1

Available-Auto-EAP-Values=1

Available-EAP-Types=SIM|AKA

NOTE: The lines added in Step 7 configure the specified authentication method (in this case the SQL plug-in: radsql.aut we named: SQLAuthenticator), and also prevent it from being used without the EAP helper (SIMAuth). The use of the helped authentication method (radsql.aut or radsqljdbc.aut) without the EAP helper must be prevented because password checking is suppressed and the EAP helper (SIMAuth) is needed to perform authentication.


  1. Suppress database password checking in the helped authentication method as described for Oracle, JDBC, and LDAP databases.
  1. Insert a query into radsql.aut, radsqljdbc.aut, or ldapauth.aut to select the attributes to be added to the Access-Accept.

The selection of attributes from the database can be based on the database key values for IMSI or MSISDN. The values for IMSI or MSISDN are added to the request by SIMAuth in the attributes 3GPP-IMSI or Funk-SS7-MSISDN so that they can be used in the database query.

Example:

SQL=SELECT subscriber-level FROM table 1 WHERE IMSI=@3GPP-IMSI

NOTE: To have the 3GPP-IMSI attribute set by Steel-Belted Radius Carrier in the request, the 3GPP dictionary must be selected for the client in SBR Administration. You can also use the %username or %user variables in the database query. However, they do not contain the expected values if pseudonyms are active.


  1. Activate the helped authentication method. See "Order of Authentication Methods" in the Chapter 14, Setting Up Authentication Policies in the Steel-Belted Radius Carrier Administration and Configuration Guide.

Example Configuration for Adding Attributes to Access-Accept

Figure 28 shows a sample configuration. The purpose of this configuration is to query the database for a subscriber-level value and return the subscriber-level value along with the Access-Accept.

Example Overview

In this example, an Access-Request is sent for a mobile device with IMSI 123456789. The value of the subscriber-level for this device is retrieved from the database, assigned to the attribute Reply-Message, and attached to the Access-Accept.

The configuration lines and syntax (shown in Figure 28) associate all the configuration files together to attach an attribute to the Access-Accept.


Figure 28: Example Configuration for Adding Attributes to an Access-Accept

Example Notes

The sample configuration shown in Figure 28 configures the data flow in the following way:

Access-Request

An Access-Request is sent to Steel-Belted Radius Carrier for the user with an IMSI value of 123456789.

SIMAuth

Simauth.eap file is enabled
Simauth.aut file is disabled.

Radsql.aut

[Bootstrap] section contains the name of the specified authentication method (SQLAuthenticator). You later add a SQLAuthenticator section to the eap.ini file.

Enter a SQL=SELECT statement to retrieve data from the database based on the value of the IMSI in the Access-Request. Do not include a password in the SQL SELECT statement.

The @Password= statement suppresses password checking of the database.

The @Reply-Message=1/40 field indicates the following:

Eap.ini

The eap.ini file must contain a section corresponding to the name of the helped authentication method named in the Initializationstring statement in the radsql.aut file. [SQLAuthenticator] in this example.

The eap.ini file must contain the lines shown in Figure 28 to configure the SQL plug-in (either radsql.aut or radsqljdbc.aut). These lines, prevent either radsql.aut or radsqljdbc.aut from acting without SIMAuth. This is necessary because password-checking by radsql.aut or radsqljdbc.aut is suppressed and the only authentication being performed would be by SIMAuth (the EAP helper).

SQL database table 1

In this example, the SQL database is queried by the SQL plug-in: radsql.aut, and the subscriber-level for IMSI 123456789 is found to be basic.

Access-Accept

The value of basic is assigned to the attribute Reply-Message and included in the Access-Accept.

Activate the Authentication Method

See "Order of Authentication Methods" in the Chapter 14, Setting Up Authentication Policies in the Steel-Belted Radius Carrier Administration and Configuration Guide.


[Contents] [Prev] [Next] [Index] [Report an Error] [No Frames]