Had a simple but time-consuming problem today. Our Cisco IOS-XE 16.12 routers authenticate to AD via RADIUS to Microsoft NPS, with certain AD group(s) having admin privileges. On the router side, configuration looks like this, where 10.10.10.10 is the NPS server:
aaa group server radius MyRADIUS server-private 10.10.10.10 auth-port 1812 acct-port 1813 key 0 abcd1234 ip vrf forwarding Mgmt-intf ! aaa new-model aaa session-id common ! aaa authentication login default local group MyRADIUS aaa authentication enable default none aaa authorization config-commands aaa authorization exec default local group MyRADIUS if-authenticated
In NPS, I have a policy to match the appropriate Windows Group with Authentication Type = PAP and NAS Port Type = Virtual. In the Settings tab, I then have this Vendor Specific RADIUS Attribute:
Name: Cisco-AV-Pair Vendor: Cisco Value: priv-lvl=15
This allows users in this group to SSH to any router and immediately have privilege level 15, which gives them full admin access.
Now and I needed to give a certain AD group read-only access to view running-configuration. So I create a new policy matching to that AD group, and in the RADIUS attributes, under Vendor Specific, I add this one:
Name: Cisco-AV-Pair Vendor: Cisco Value: priv-lvl=7
The test account could then SSH to the router and verify privilege level was 7:
Router#show priv Current privilege level is 7
I then downgraded privileges on each router so that only level 3 was required to view running-config:
privilege exec level 3 show running-config view full privilege exec level 3 show running-config view privilege exec level 3 show running-config privilege exec level 3 show
But, when doing “show running-config”, they would just get a nothing back in return. As it turns out I needed one more step; lowering the privilege for viewing files on the router
file privilege 3
Now it works:
Router#show running-config view full Building configuration... Current configuration : 15124 bytes ! ! Last configuration change at 15:39:15 UTC Tue Mar 17 2020 by admin ! NVRAM config last updated at 15:39:21 UTC Tue Mar 17 2020 by admin ! version 16.12 service timestamps debug datetime msec service timestamps log datetime localtime show-timezone service password-encryption no service dhcp service call-home