Policy Rule Variables for RADIUS

In addition to the basic policy rule variables, you can use the following variables defined for the RADIUS protocol to get TLVs or VSAs as strings.

The syntax of a TLV variable is as follows:

{RADIUS.REQUEST.TLV.​tlv_name_or_id[.subfield]}

The syntax of a VSA variable is as follows:

{RADIUS.REQUEST.vsa.vendor_name_or_id.vendor_attribute_name_or_id[.subfield]}

where:

tlv_name_or_id
A TLV name (as defined in the RADIUS dictionary) or the unique TLV identifier from the RADIUS standards.
vendor_name_or_id
A vendor’s name (as defined in the RADIUS dictionary) or the unique vendor identifier (an integer).
vendor_attribute_name_or_id
A VSA name (as defined in the RADIUS dictionary) or the unique VSA identifier defined by the vendor.
subfield
Either the nth field (in order) of the data, or a field name (if the compound structure consists of name-value pairs).

The RADIUS standard does not define a way to support data structures in VSAs, but several vendors have overloaded string definitions to implement CSVs or name-value pairs. (This is sometimes referred to as compound types.) You can use the subfield identifier to parse values out of compound types.

For example, consider the following compound structure from Vendor ID 9, attribute 33:
agordon;Pssw3RD!?;GoldPlan
The variable {RADIUS.REQUEST.vsa.9.33.2} returns the string Pssw3RD!? because Pssw3RD!? is the second field in the compound structure.
If the compound structure is defined as follows:
                user=agordon,passwd=Pssw3RD!?,access=GoldPlan

The variable {RADIUS.REQUEST.vsa.9.33.user} returns the string agordon because agordon is associated with the field name.

See RADIUS Policy Rule TLV Variables for a list of the RADIUS policy rule variables that are available when correlating a RADIUS session with a Gx Plus or Gx-Lite session.