简介
本文档介绍如何限制用户使用角色库访问控制(RBAC)访问Nexus 5500、Nexus 5600和Nexus 6000交换机。
RBAC允许您定义已分配用户角色的规则,以限制有权访问交换机管理操作的用户的授权。
您可以创建和管理用户帐户,并分配限制对Nexus 5500、Nexus 5600和Nexus 6000交换机访问的角色。
先决条件
要求
Cisco 建议您了解以下主题:
- Nexus 5500、Nexus 5600、Nexus 6000交换机CLI配置命令
- 思科交换矩阵服务(CFS)。
使用的组件
本文档中的信息基于运行NXOS 5.2(1)N1(9)7.3(1)N1(1)的Nexus 5500、Nexus 5600和Nexus 6000交换机。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
用户要求
以下是需要满足的一些用户要求:
- 只有具有网络管理员角色的用户才能创建角色。
- 只有具有网络管理员角色的用户才能查看show role的输出。
- 即使允许用户执行所有show命令,也不允许用户查看show role输出,除非为这些用户分配了网络管理员角色。
- 用户帐户必须至少具有一个用户角色。
用户角色
每个角色可以分配给多个用户,每个用户可以是多个角色的一部分。
例如,允许角色A用户发出show命令,允许角色B用户进行配置更改。
如果用户同时被分配到角色A和角色B,则此用户可以发出show命令并更改配置。
Permit access命令优先于deny access命令。
例如,如果您属于拒绝访问配置命令的角色。
但是,如果您也属于有权访问配置命令的角色,则您有权访问配置命令。
有五个默认用户角色:
- network-admin — 完成对整个交换机的读写访问。
- network-operator — 完成对整个交换机的读取访问。
- vdc-admin — 只限VDC的读写访问
- vdc-operator — 仅限VDC的读取访问
- san-admin — 对SAN管理员完成读写访问。
注意:不能修改/删除默认用户角色。
注意:show role命令将显示交换机上可用的角色
用户角色规则
规则是角色的基本元素。
规则定义角色允许用户执行的操作。
您可以为以下参数应用规则:
- 命令 — 在正则表达式中定义的命令或命令组。
- 功能 — 适用于NX-OS软件提供的功能的命令。
- 功能组 — 默认或用户定义的功能组。
这些参数会创建分层关系。最基本的控制参数是命令。
下一个控制参数是特征,它表示与特征关联的所有命令。
最后一个控制参数是特征组。该功能组结合了相关功能,使您可以轻松管理规则。
用户指定的规则编号确定应用规则的顺序。
规则按降序应用。
例如,规则1在规则2之前应用,在规则3之前应用,依此类推。
rule命令指定可由特定角色执行的操作。每个规则都包括规则编号、规则类型(允许或拒绝)、
命令类型(例如,配置、show、exec、debug)和可选功能名称(例如,FCOE、HSRP、VTP、接口)。
用户角色分配
基于角色的配置使用思科交换矩阵服务(CFS)基础设施实现高效的数据库管理,并在网络中提供单点配置。
为设备上的功能启用CFS分发时,设备属于CFS区域,该区域包含网络中的其他设备,您也为该功能启用了CFS分发。默认情况下,用户角色功能的CFS分发处于禁用状态。
您必须为要向其分发配置更改的每台设备上的用户角色启用CFS。
在交换机上为用户角色启用CFS分配后,输入的第一个用户角色配置命令会导致交换机NX-OS软件采取以下操作:
- 在交换机上创建CFS会话。
- 在为用户角色功能启用CFS的情况下,锁定CFS区域中所有交换机上的用户角色配置。
- 将用户角色配置更改保存到交换机的临时缓冲区中。
更改将保留在交换机的临时缓冲区中,直到您明确提交将其分发到CFS区域中的设备。
提交更改时,NX-OS软件会执行以下操作:
- 将更改应用于交换机上的运行配置。
- 将更新的用户角色配置分发到CFS区域中的其他交换机。
- 在CFS区域中的设备中解锁用户角色配置。
- 终止CFS会话。
这些配置是分发的:
configuration 和 show 命令
|
命令 |
目的 |
步骤1: |
configure terminal 示例: switch#configure terminal switch(config)# |
进入全局配置模式。 |
步骤 2 |
角色名称 角色名称 示例: switch(config)#角色名UserA switch(config-role)# |
指定用户角色并进入角色配置模式。 |
第 3 步: |
VLAN策略拒绝 示例: switch(config-role)#vlan policy deny switch(config-role-vlan)# |
进入角色vlan策略配置模式。 |
第 4 步: |
permit vlan vlan -id 示例: switch(config-role-vlan)#permit vlan 1 |
指定角色可以访问的VLAN。 根据需要对尽可能多的vlan重复此命令。 |
第 5 步: |
退出 示例: switch(config-role-vlan)#exit switch(config-role)# |
退出角色vlan策略配置模式。 |
步骤 6 |
show role 示例: switch(config-role)#show role |
(可选)显示角色配置。 |
步骤 7. |
显示角色{挂起|挂起 — 差异} 示例: switch(config-role)#show role pending(show role pending) |
(可选)显示待分发的用户角色配置 |
步骤 8 |
角色提交 示例: switch(config-role)# role commit |
(可选)将临时数据库中的用户角色配置更改应用于运行配置,并将用户角色配置分发到其他交换机(如果已为用户角色功能启用CFS配置分配)。 |
步骤 9 |
copy running-config startup-config 示例: switch#copy running-config startup-config |
(可选)将运行配置复制到启动配置。 |
以下步骤启用角色配置分配:
|
命令 |
目的 |
步骤1: |
switch# config t switch(config)# |
进入配置模式。 |
第二步: |
switch(config)# role distribute(switch(config)# role distribute) |
启用角色配置分发。 |
switch(config)#no role distribute(无角色分配) |
禁用角色配置分发(默认)。 |
以下步骤:
|
命令 |
目的 |
第 1 步 |
Nexus# config t Nexus(config)# |
进入配置模式。 |
步骤 2 |
Nexus(config)#角色提交 |
提交角色配置更改。 |
以下步骤放弃角色配置更改:
|
命令 |
目的 |
第 1 步 |
Nexus# config t Nexus(config)# |
进入配置模式。 |
步骤 2 |
Nexus(config)#角色中止 |
丢弃角色配置更改并清除挂起的配置数据库。 |
要显示用户帐户和RBAC配置信息,请执行以下任务之一:
命令 |
目的 |
show role |
显示用户角色配置。 |
show role feature |
显示功能列表。 |
show role feature-group |
显示功能组配置。 |
清除用户角色分配会话
您可以清除持续的思科交换矩阵服务分发会话(如果有)并解锁交换矩阵以获得用户角色功能。
警告:发出此命令时,挂起数据库中的任何更改都将丢失。
|
命令 |
目的 |
第 1 步 |
switch#清除角色会话 示例: switch# clear role session |
清除会话并解锁交换矩阵。 |
步骤 2 |
show role session status 示例: switch# show role session status |
(可选)显示用户角色CFS会话状态。 |
配置示例
在本例中,我们将创建具有以下访问权限的用户帐户TAC:
- 访问clear命令
- 访问配置命令
- 访问debug命令
- 访问exec命令
- 访问show命令
- 仅访问VLAN 1-10
C5548P-1# config t
Enter configuration commands, one per line. End with CNTL/Z
C5548P-1(config)# role name Cisco
C5548P-1(config-role)# rule 1 permit command clear
C5548P-1(config-role)# rule 2 permit command config
C5548P-1(config-role)# rule 3 permit command debug
C5548P-1(config-role)# rule 4 permit command exec
C5548P-1(config-role)# rule 5 permit command show
C5548P-1(config-role)# vlan policy deny
C5548P-1(config-role-vlan)# permit vlan 1-10
C5548P-1(config-role-vlan)# end
C5548P-1# show role name Cisco
Role: Cisco
Description: new role
vsan policy: permit (default)
Vlan policy: deny
Permitted vlans: 1-10
Interface policy: permit (default)
Vrf policy: permit (default)
-------------------------------------------------------------------
Rule Perm Type Scope Entity
-------------------------------------------------------------------
5 permit command show
4 permit command exec
3 permit command debug
2 permit command config
1 permit command clear
C5548P-1#
C5548P-1# config t
Enter configuration commands, one per line. End with CNTL/Z.
C5548P-1(config)# username TAC password Cisco123 role Cisco
C5548P-1(config)# show user-account TAC
user:TAC
this user account has no expiry date
roles:Cisco
许可要求
产品 |
许可证要求 |
NX-OS |
用户帐户和RBAC不需要许可证。 |
验证
当前没有可用于此配置的验证过程。
故障排除
目前没有针对此配置的故障排除信息。