Local AAA Server

The Local AAA Server feature allows you to configure your router so that user authentication and authorization attributes currently available on AAA servers are available locally on the router. The attributes can be added to existing framework, such as the local user database or subscriber profile. The local AAA server provides access to the complete dictionary of Cisco IOS XE supported attributes.

Finding Feature Information

Your software release may not support all the features documented in this module. For the latest caveats and feature information, see Bug Search Tool and the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the feature information table.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.

Prerequisites for Local AAA Server

The aaa new-model command must be issued in global configuration mode to enable AAA services before using this feature.

Information About Local AAA Server

Local Authorization Attributes Overview

The AAA subsystem (authentication, authorization, and accounting) is responsible for managing all supported attributes that are available to the various services within the Cisco IOS XE software. As such, it maintains its own local dictionary of all supported attributes.

Local AAA Attribute Support

You can configure your router so that AAA authentication and authorization attributes currently available on AAA servers are made available on existing Cisco IOS XE devices. The attributes can be added to existing framework, such as the local user database or subscriber profile. For example, an attribute list can now be added to an existing username, providing the ability for the local user database to act as a local AAA server. For situations in which the local username list is relatively small, this flexibility allows you to provide complete user authentication or authorization locally within the Cisco IOS XE software without having a AAA server. This ability can allow you to maintain your user database locally or provide a failover local mechanism without having to sacrifice policy options when defining local users.

A subscriber profile allows domain-based clients to have policy applied at the end-user service level. This flexibility allows common policy to be set for all users under a domain in one place and applied there whether or not user authorization is done locally. An attribute list can be added to the subscriber profile, allowing the profile to apply all attributes that can be applied to services using AAA servers. Attributes that are configured under the AAA attribute list are merged with the existing attributes that are generated with the existing subscriber profile and passed to the Subscriber Server Switch (SSS) framework for application.


Note

Accounting is still done on a AAA server and is not supported by this feature.


AAA Attribute Lists

AAA attribute lists define user profiles that are local to the router. Every attribute that is known to the AAA subsystem is made available for configuration.

The AAA attributes that are defined in the AAA attribute list are standard RADIUS or TACACS+ attributes. However, they are in the internal format for that attribute. The attributes must be converted from the RADIUS format (for a RADIUS case) to the Cisco IOS AAA interface format. TACACS+ attributes are generally identical to the AAA interface format.

Converting from RADIUS Format to Cisco IOS XE AAA Format

You can use the show aaa attributes protocol radius command to get the Cisco IOS XE AAA format of the Internet Engineering Task Force (IETF) RADIUS attribute. The show command output provides a complete list of all the AAA attributes that are supported.


Note

The conversion from RADIUS to internal AAA is done internally within the AAA framework. RADIUS vendor-specific attributes (VSAs) are usually accurately reflected during conversion. TACACS+ attributes are also usually identical to the local attributes and do not require the conversion process. However, IETF numbered attributes and some special VSAs often require the conversion process.


Validation of Attributes

Attributes are not validated at configuration. The AAA subsystem “knows” only the format that is expected by the services when the service defines a given attribute inside a definition file. However, it cannot validate the attribute information itself. This validation is done by a service when it first uses the attribute. This validation applies whether the AAA server is RADIUS or TACACS+. Thus, if you are not familiar with configuring a AAA server, it is advisable that you test your attribute list on a test device with the service that will be using the list before configuring and using it in a production environment.

How to Configure Local AAA Server

Defining a AAA Attribute List

To define an AAA attribute list, perform the following steps.

SUMMARY STEPS

  1. enable
  2. configure terminal
  3. aaa attribute list list-name
  4. attribute type {name } {value } [service service ] [protocol protocol ]
  5. attribute type {name } {value } [service service ] [protocol protocol ]
  6. attribute type {name } {value } [service service ] [protocol protocol ]
  7. attribute type {name } {value }
  8. attribute type {name } {value }

DETAILED STEPS

  Command or Action Purpose
Step 1

enable

Example:


Device> enable

Enables privileged EXEC mode.

  • Enter your password if prompted.

Step 2

configure terminal

Example:


Device# configure terminal

Enters global configuration mode.

Step 3

aaa attribute list list-name

Example:


Device (config)# aaa attribute list TEST

Defines a AAA attribute list.

Step 4

attribute type {name } {value } [service service ] [protocol protocol ]

Example:


Device (config-attr-list)# attribute type addr-pool poolname service ppp protocol ip

Defines an IP address pool to use.

Step 5

attribute type {name } {value } [service service ] [protocol protocol ]

Example:


Device (config-attr-list)# attribute type ip-unnumbered loopbacknumber service ppp protocol ip

Defines the loopback interface to use.

Step 6

attribute type {name } {value } [service service ] [protocol protocol ]

Example:


Device (config-attr-list)# attribute type vrf-id vrfname service ppp protocol ip

Defines the virtual route forwarding (VRF) to use.

Step 7

attribute type {name } {value }

Example:


Device (config-attr-list)# attribute type ppp-authen-list aaalistname

Defines the AAA authentication list to use.

Step 8

attribute type {name } {value }

Example:


Device (config-attr-list)# attribute type ppp-acct-list “aaa list name”

Defines the AAA accounting list to use.

Defining a Subscriber Profile

To define a subscriber profile, perform the following steps.


Note

RADIUS users should use the show aaa attributes command to map the RADIUS version of the particular attribute to the AAA version of the string attribute. See the example Mapping from the RADIUS Version of a Particular Attribute to the Cisco IOS AAA Version Example.


SUMMARY STEPS

  1. enable
  2. configure terminal
  3. subscriber authorization enable
  4. policy-map type service domain-name
  5. service local
  6. exit
  7. aaa attribute list list-name

DETAILED STEPS

  Command or Action Purpose
Step 1

enable

Example:


Router> enable

Enables privileged EXEC mode.

  • Enter your password if prompted.

Step 2

configure terminal

Example:


Router# configure terminal

Enters global configuration mode.

Step 3

subscriber authorization enable

Example:


Router (config)# subscriber authorization enable

Enables subscriber authorization.

Step 4

policy-map type service domain-name

Example:


Router (config)# policy-map type example.com

Specifies the username domain that has to be matched and enters subscriber profile configuration mode.

Step 5

service local

Example:


Router (subscriber-profile)# service local

Specifies that local subscriber authorization should be performed.

Step 6

exit

Example:


Router (subscriber-profile)# exit

Exits subscriber profile configuration mode.

Step 7

aaa attribute list list-name

Example:


Router (config)# aaa attribute list TEST

Defines the AAA attribute list from which RADIUS attributes are retrieved.

Monitoring and Troubleshooting a Local AAA Server

The following debug commands may be helpful in monitoring and troubleshooting, especially to ensure that domain-based service authorization is being triggered and that location authorization is being called on the local AAA server, which triggers the service.

SUMMARY STEPS

  1. enable
  2. debug aaa authentication
  3. debug aaa authorization
  4. debug aaa per-user
  5. debug radius

DETAILED STEPS

  Command or Action Purpose
Step 1

enable

Example:


Device> enable

Enables privileged EXEC mode.

  • Enter your password if prompted.

Step 2

debug aaa authentication

Example:


Device# debug aaa authentication

Displays the methods of authentication being used and the results of these methods.

Step 3

debug aaa authorization

Example:


Device# debug aaa authorization

Displays the methods of authorization being used and the results of these methods.

Step 4

debug aaa per-user

Example:


Device# debug aaa per-user

Displays information about PPP session per-user activities.

Step 5

debug radius

Example:


Device# debug radius

Displays information about the RADIUS server.

Configuration Examples for Local AAA Server

Local AAA Server Example

The following example shows a Point to Point over Ethernet (PPPoE) group named “bba-group” that is configured for subscriber profile cisco.com (thus, any user with the domain name cisco.com will execute the subscriber profile cisco.com authorization policy). The cisco.com subscriber profile is configured to attach the AAA attribute list “TEST,” which has both “ip vrf forwarding” and “ip unnumbered” configured for PPP service under Link Control Protocol (LCP) negotiation. This configuration will essentially cause the named attributes to be applied on the session with the cisco.com domain under the bba-group “pppoe grp1.”


aaa authentication ppp template1 local
aaa authorization network template1 local 
!
aaa attribute list TEST
   attribute type interface-config "ip unnumbered Loopback0" service ppp protocol lcp
   attribute type interface-config "ip vrf forwarding blue" service ppp protocol lcp
!
ip vrf blue
 description vrf blue template1
 rd 1:1
 route-target export 1:1
 route-target import 1:1
!
subscriber authorization enable
!
policy-map type service example.com
 service local
 aaa attribute list TEST
!
bba-group pppoe grp1
 virtual-template 1
 service profile example.com
!
interface Virtual-Template1
 no ip address
 no snmp trap link-status
 no peer default ip address
 no keepalive
 ppp authentication pap template1
 ppp authorization template1
!

Note

In some versions of Cisco IOS XE software, it is better to use the explicit attribute instead of interface- configuration because it provides better scalability (full VAccess interfaces are not required, and sub interfaces could be used to provide the service). In such a case, you might configure “attribute type ip-unnumbered ‘Loopback0’ service ppp protocol ip” instead of “attribute type interface-config ‘ip unnumbered Loopback0’ service ppp protocol lcp.”


Mapping from the RADIUS Version of a Particular Attribute to the Cisco IOS XE AAA Version Example

The following output example of the show aaa attributes command lists RADIUS attributes, which can be used when configuring this feature.


Router# show aaa attributes protocol radius
IETF defined attributes:
   Type=4     Name=acl                            Format=Ulong
      Protocol:RADIUS
        Unknown       Type=11    Name=Filter-Id             Format=Binary    
Converts attribute 11 (Filter-Id) of type Binary into an internal attribute 
named "acl" of type Ulong.  As such, one can configure this attributes locally
by using the attribute type "acl."
Cisco VSA attributes:
  Type=157   Name=interface-config               Format=String
Simply expects a string for the attribute of type "interface-config."

Note

The aaa attribute list command requires the Cisco IOS XE AAA version of an attribute, which is defined in the “Name” field above.


Additional References

Related Document

Related Topic

Document Title

Cisco IOS commands

Cisco IOS Master Commands List, All Releases

Security commands

Cisco IOS Security Command Reference

Standards

Standard

Title

None.

--

MIBs

MIB

MIBs Link

None.

To locate and download MIBs for selected platforms, Cisco software releases, and feature sets, use Cisco MIB Locator found at the following URL:

http://www.cisco.com/go/mibs

RFCs

RFC

Title

None.

--

Technical Assistance

Description

Link

The Cisco Support website provides extensive online resources, including documentation and tools for troubleshooting and resolving technical issues with Cisco products and technologies.

To receive security and technical information about your products, you can subscribe to various services, such as the Product Alert Tool (accessed from Field Notices), the Cisco Technical Services Newsletter, and Really Simple Syndication (RSS) Feeds.

Access to most tools on the Cisco Support website requires a Cisco.com user ID and password.

http://www.cisco.com/cisco/web/support/index.html

Feature Information for Local AAA Server

The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Table 1. Feature Information for Local AAA Server

Feature Name

Releases

Feature Information

Local AAA Server

Cisco IOS XE Release 2.1

Cisco IOS XE Release 3.3S

The Local AAA Server feature allows you to configure your router so that user authentication and authorization attributes currently available on AAA servers are available locally on the router. The attributes can be added to existing framework, such as the local user database or subscriber profile. The local AAA server provides access to the complete dictionary of Cisco IOS supported attributes.

In Cisco IOS XE Release 2.1, this feature was introduced on the Cisco ASR 1000 Series Aggregation Services Routers.

The following commands were introduced or modified: aaa attribute list , attribute type