配置基于角色的访问控制
Citrix Application Delivery Management (Citrix ADM) 提供精细的基于角色的访问控制 (RBAC),您可以通过该控制,根据企业内各个用户的角色授予访问权限。
在 Citrix ADM 中,将所有用户添加到 Citrix Cloud 中。作为组织的第一个用户,您必须先在 Citrix Cloud 中创建一个帐户,然后使用 Citrix Cloud 凭据登录到 Citrix ADM GUI。您被授予超级管理员角色,默认情况下,您拥有 Citrix ADM 中的所有访问权限。稍后,您可以在 Citrix Cloud 中创建组织中的其他用户。
稍后创建并以常规用户身份登录到 Citrix ADM 的用户称为委派管理员。默认情况下,这些用户具有除用户管理权限之外的所有权限。但是,您可以向这些委派的管理员用户授予特定用户管理权限。您可以通过创建适当的策略并将策略分配给这些委派用户来完成此操作。用户管理权限位于帐户” > “用户管理。有关如何分配特定权限的更多信息,请参阅如何向委派管理员用户分配额外的权限。
以下部分提供了有关如何创建策略、角色、组以及如何将用户绑定到组的详细信息。
示例:
以下示例说明了如何在 Citrix ADM 中实现 RBAC。
ADC 组负责人 Chris 是其组织中 Citrix ADM 的超级管理员。他创建三个管理员角色:安全管理员、应用程序管理员和网络管理员。
- 安全管理员 David 必须具有 SSL 证书管理和监控的完全访问权限,但必须具有系统管理操作的只读访问权限。
- 应用程序管理员 Steve 需要只对特定应用程序和特定配置模板拥有访问权限。
- 网络管理员 Greg 需要访问系统和网络管理的权限。
- Chris 还必须为所有用户提供 RBAC,无论他们是本地还是外部用户。
下图显示了管理员和其他用户拥有的权限以及他们在组织中的角色。
要向用户提供基于角色的访问控制,Chris 必须首先在 Citrix Cloud 中添加用户,然后才能在 Citrix ADM 中看到用户。Chris 必须为每个用户创建访问策略,具体取决于他们的角色。访问策略与角色紧密绑定。因此,Chris 还必须创建角色,然后他必须创建组,因为角色只能分配给组,而不能分配给单个用户。
访问是执行特定任务(如查看、创建、修改或删除文件)的能力。角色是根据企业内用户的权限和责任来定义的。例如,可能允许一个用户执行所有网络操作,而另一个用户可以观察应用程序中的流量并帮助创建配置模板。
角色由策略决定。创建策略后,您可以创建角色,将每个角色绑定到一个或多个策略,并将角色分配给用户。您还可以为用户组分配角色。组是拥有共同权限的用户集合。例如,管理特定数据中心的用户可以分配到一个组。角色是通过根据特定条件将用户添加到特定组来授予用户的身份。在 Citrix ADM 中,创建角色和策略特定于 Citrix ADC 中的 RBAC 功能。可以根据企业逐步发展的需求轻松地创建、更改或停用角色和策略,而无需单独更新每个用户的权限。
角色可以基于功能,也可以基于资源。例如,假定一个 SSL/安全管理员和一个应用程序管理员。SSL/安全管理员必须对SSL 证书管理和监视功能具有完全访问权限,但对于系统管理操作必须具有只读访问权限。应用程序管理员只能访问其范围内的资源。
因此,在作为超级管理员的 Chris 角色中,在 Citrix ADM 中执行以下示例任务,以便为您组织中的安全管理员 David 配置访问策略、角色和用户组。
在 Citrix ADM 上配置用户
作为超级管理员,您可以通过在 Citrix Cloud 中而不是在 Citrix ADM 中为其配置帐户来创建更多用户。将新用户添加到 Citrix ADM 时,只能通过向用户分配相应的组来定义其权限。
要在 Citrix Cloud 中添加新用户,请执行以下操作:
在 Citrix ADM GUI 中,单击左上角的汉堡包图标,然后选择身份和访问管理。
在 “身份和访问管理” 页上,选择 “管理员选项卡。
此选项卡列出了在 Citrix Cloud 中创建的用户。
选择Citrix Identity作为身份提供商。
键入要在 Citrix ADM 中添加的用户的电子邮件地址,然后单击邀请。
注意
用户收到来自 Citrix Cloud 的电子邮件邀请。用户必须单击电子邮件中提供的链接,通过提供其全名和密码来完成注册过程,然后使用其凭据登录 Citrix ADM。
选择指定用户的自定义访问权限。
选择应用程序交付管理。
默认情况下,此选项选择管理员角色。
单击发送邀请。
作为管理员,只有在用户登录到 Citrix ADM 后,您才能在 Citrix ADM 用户列表中看到新用户。
要在 Citrix ADM 中配置用户,请执行以下操作:
在 Citrix ADM GUI 中,导航到帐户 > 用户管理> 用户。
用户将显示在 “用户页面上。
您可以通过选择用户并单击 “编辑” 来编辑向用户提供的权限。您还可以在 “设置” 节点下的 “组” 页面上编辑群组权限。
注意
- 用户仅从 Citrix 云添加到 Citrix ADM 中。因此,即使您具有管理员权限,也无法在 Citrix ADM GUI 中添加或删除用户。您只能编辑组权限。可以从 Citrix Cloud 中添加或删除用户。 - 只有在用户至少登录 Citrix ADM 一次后,用户详细信息才会显示在服务 GUI 上。
在 Citrix ADM 上配置访问策略
访问策略定义权限。可以通过创建角色将策略应用于用户组或多个组。角色由策略决定。创建策略后,您必须创建角色,将每个角色绑定到一个或多个策略,并将角色分配给用户组。Citrix ADM 提供五种预定义访问策略:
- 管理员策略。授予对所有 Citrix ADM 节点的访问权限。用户具有查看和编辑权限,可以查看所有 Citrix ADM 内容,并可以执行所有编辑操作。也就是说,用户可以对资源添加、修改和删除操作。
- 管理系统策略。向用户授予 Citrix ADM GUI 中所有节点的访问权限,但对 “设置” 节点的访问权限除外。
- 只读政策。授予只读权限。用户可以查看 Citrix ADM 上的所有内容,但未授权执行任何操作。
- 应用程序管理员策略。授予在 Citrix ADM 中访问应用程序功能的管理权限。绑定到此策略的用户可以添加、修改和删除自定义应用程序,并可以启用或禁用服务、服务组和各种虚拟服务器,例如,内容交换、缓存重定向和 HAProxy 虚拟服务器。
- 只有政策。授予对应用程序功能的只读权限。绑定到此策略的用户可以查看应用程序,但不能执行任何添加、修改或删除、启用或禁用操作。
尽管您无法编辑这些预定义策略,但您可以创建自己的(用户定义的)策略。
之前,当您将策略分配给角色并将角色绑定到用户组时,可以在 Citrix ADM GUI 中为用户组提供节点级别的权限。例如,您可能只提供对整个负载平衡节点的访问权限。您的用户有权访问负载平衡节点下的所有特定于实体的子节点(例如,虚拟服务器、服务和其他),或者他们无权访问负载平衡下的任何节点。
在 Citrix ADM 507.x 版本和更高版本中,访问策略管理也被扩展为子节点提供权限。可以为所有子节点(如虚拟服务器、服务、服务组和服务器)配置访问策略设置。
目前,您只能为负载平衡节点下的子节点以及 GSLB 节点下的子节点提供如此精细级别的访问权限。
例如,作为管理员,您可能希望向用户授予仅查看虚拟服务器的访问权限,而不是在负载平衡节点中查看后端服务、服务组和应用程序服务器的访问权限。分配给他们的策略的用户只能访问虚拟服务器。
要创建用户定义的访问策略,请执行以下操作:
在 Citrix ADM GUI 中,导航到帐户 > 用户管理>访问策略。
单击添加。
在创建访问策略” 页上的策略名称字段中,输入策略的名称,然后在策略描述” 字段中输入描述。
“权限部分列出了所有 Citrix ADM 功能,以及用于指定只读、启用禁用或编辑访问的选项。
单击 (+) 图标将每个功能组展开为多个功能。
选中要向用户授予权限的功能名称旁边的权限复选框。
视图:此选项允许用户查看 Citrix ADM 中的功能。
启用-禁用:此选项仅适用于允许在 Citrix ADM 上启用或禁用操作的网络功能功能。用户可以启用或禁用该功能。此外,用户还可以执行 “立即投票” 操作。
向用户授予 “启用-禁用”权限时,也会授予 “查看” 权限。您无法取消选择此选项。
编辑:此选项授予用户的完全访问权限。用户可以修改功能及其功能。
如果授予“编辑”权限,则会同时授予查看权限和启用-禁用权限。您无法取消选择自动选择的选项。
如果选中该功能复选框,则会选择该功能的所有权限。
注意
展开负载平衡和 GSLB 以查看更多配置选项。
在下图中,负载平衡功能的配置选项具有不同的权限:
虚拟服务器功能的用户将视图权限授予。用户可以在 Citrix ADM 中查看负载平衡虚拟服务器。要查看虚拟服务器,请导航到 “网络>网络功能>负载平衡”,然后选择虚拟服务器选项卡。
向用户授予服务功能的启用-禁用权限。此权限还授予View权限。用户可以启用或禁用绑定到负载平衡虚拟服务器的服务。此外,用户可以对服务执行立即轮询操作。要启用或禁用服务,请导航到 “网络” >网络功能>负载平衡”,然后选择服务选项卡。
注意
如果用户具有启用-禁用权限,则在以下页面中限制对服务的启用或禁用操作:
导航到网络>网络功能。
选择一个虚拟服务器,然后单击配置。
选择负载平衡虚拟服务器服务绑定页。如果选择启用或 “禁用”, 此页将显示一条错误消息。
“编辑”权限被授予服务组功能的用户。此权限授予授予查看和启用-禁用”权限的完全访问权限。用户可以修改绑定到负载平衡虚拟服务器的服务组。要编辑服务组,请导航到 “网络>网络功能>负载平衡”,然后选择服务组选项卡。
单击创建。
注意
选择“编辑”可能会在内部分配在 “权限” 部分中未显示为启用的依赖权限。例如,为故障管理启用编辑权限时,Citrix ADM 会在内部提供配置邮件配置文件或创建 SMTP 服务器设置的权限,以便用户可以将报表作为邮件发送。
向用户授予样书权限
您可以创建访问策略来授予样书权限,例如导入、删除、下载等。
注意:
当您授予其他样书权限时,将自动启用 “查看” 权限。
在 Citrix ADM 上配置角色
在 Citrix ADM 中,每个角色都绑定到一个或多个访问策略。您可以在策略与角色之间定义一对一、一对多和多对多关系。您可以将一个角色绑定到多个策略,也可以将多个角色绑定到一个策略。
例如,一个角色可能绑定到两个策略,其中一个策略定义对一个功能的访问权限,另一个策略定义对另一个功能的访问权限。一个策略可能授予在 Citrix ADM 中添加 Citrix ADC 实例的权限,另一个策略可能会授予创建和部署样书以及配置 Citrix ADC 实例的权限。
当多个策略为单个要素定义编辑和只读权限时,编辑权限优先于只读权限。
Citrix ADM 提供五个预定义角色:
- 管理员角色。有权访问所有 Citrix ADM 功能。(此角色绑定到
adminpolicy
。) - 管理员系统角色。除了设置权限之外,有权访问 Citrix ADM GUI。(此角色绑定到管理系统策略)
- 只有角色。拥有只读访问权限。(此角色绑定到
readonlypolicy
。) - 应用程序管理员角色。仅对 Citrix ADM 中的应用程序功能具有管理权限。(此角色绑定到 appAdminPolicy。)
- 只有角色。对应用程序功能具有只读访问权限。(此角色绑定到 appReadOnlyPolicy。)
尽管您无法编辑预定义的角色,但您可以创建自己的(用户定义的)角色。
要创建角色并为其分配策略,请执行以下操作:
在 Citrix ADM GUI 中,导航到帐户 > 用户管理>角色。
单击添加。
在创建角色页上的角色名称字段中,输入角色的名称,然后在角色描述” 字段中提供描述(可选)。
在策略部分中,添加将一个或多个策略移动到已配置列表中。
注意
这些策略是预先固定的租户 ID(例如,
maasdocfour
),该 ID 对于所有租户都是唯一的。注意
您可以通过单击新建” 来创建访问策略,也可以导航到帐户” > “用户管理” >访问策略”,然后创建策略。
单击创建。
在 Citrix ADM 上配置组
在 Citrix ADM 中,组可以具有功能级和资源级访问权限。例如,一组用户可能只能访问选定的 Citrix ADC 实例;另一组只能访问选定的几个应用程序,依此类推。
创建组时,您可以将角色分配给组,提供对组的应用程序级访问权限,并将用户分配到组。该组中的所有用户将在 Citrix ADM 中分配相同的访问权限。
您可以在 Citrix ADM 中的单个网络功能实体级别管理用户访问权限。您可以在实体级别向用户或组动态分配特定权限。
Citrix ADM 将虚拟服务器、服务、服务组和服务器视为网络功能实体。
虚拟服务器(应用程序)-负载平衡 (
lb
)、GSLB、上下文切换 (CS
)、缓存重定向 (CR
)、身份验证 (Auth
) 和 Citrix Gateway (vpn
)- 服务-负载平衡和 GSLB 服务
- 服务组-负载平衡和 GSLB 服务组
- 服务器-负载平衡服务器
要创建群组,请执行以下操作:
在 Citrix ADM 中,导航至帐户” > “用户管理>组。
单击添加。
此时将显示创建系统组页面。
在组名称字段中,输入组的名称。
在组描述字段中,键入组的描述。提供良好的描述可帮助您了解群组的角色和功能。
在角色部分中,将一个或多个角色移动到已配置列表。
注意
这些角色是预先固定的租户 ID(例如,
maasdocfour
),该 ID 对于所有租户都是唯一的。在 “可用” 列表中,您可以单击新建” 或编辑”,然后创建或修改角色。
或者,您可以导航到帐户” > “用户管理> “用户”,然后创建或修改用户。
单击下一步。
在授权设置选项卡中,您可以从以下类别中选择资源:
- 自动缩放组
- 实例
- 应用程序
- 配置模板
- IPAM 提供商和网络
- 样本
- 配置包
- 域名
您可能需要从用户可以访问的类别中选择特定资源。
自动缩放组:
如果要选择用户可以查看或管理的特定自动缩放组,请执行以下步骤:
清除所有自动扩展组复选框,然后单击添加自动扩展组。
从列表中选择所需的 “自动缩放” 组,然后单击 “确定”。
实例:
如果要选择用户可以查看或管理的特定实例,请执行以下步骤:
清除所有实例复选框,然后单击选择实例。
从列表中选择所需的实例,然后单击确定。
应用程序:
“ 选择应用程序”列表允许您向用户授予所需应用程序的访问权限。
您可以授予对应用程序的访问权限,而无需选择应用程序的实例。因为应用程序独立于其实例以授予用户访问权限。
当您授予用户对应用程序的访问权限时,无论选择何种实例,用户都有权仅访问该应用程序。
此列表为您提供以下选项:
所有应用程序:默认情况下,此选项处于选中状态。它会添加 Citrix ADM 中存在的所有应用程序。
所选实例的所有应用程序:仅当您从所有实例” 类别中选择实例时,才会显示此选项。它会添加所选实例上存在的所有应用程序。
特定应用程序:此选项允许您添加希望用户访问的所需应用程序。单击添加应用程序”,然后从列表中选择所需的应用程序。
选择单个实体类型:此选项允许您选择特定类型的网络函数实体和相应实体。
您可以添加单个实体,也可以选择所需实体类型下的所有实体,以向用户授予访问权限。
“应用于绑定的实体 ” 选项还授权绑定到所选实体类型的实体。例如,如果选择某个应用程序并选择还应用于绑定的实体”,Citrix ADM 将授权绑定到所选应用程序的所有实体。
注意如果要授权绑定实体,请
确保您只选择了一个实体类型。
您可以使用正则表达式搜索和添加满足组正则表达式条件的网络函数实体。在 Citrix ADM 中保留指定的正则表达式。要添加正则表达式,请执行以下步骤:
点击添加正则表达式。
在文本框中指定正则表达式。
下图说明了在选择 “特定应用程序” 选项时如何使用正则表达式添加应用程序:
下图说明了在选择“选择单个实体类型” 选项时如何使用正则表达式添加网络函数实体:
如果要添加更多正则表达式,请单击+图标。
注意
正则表达式仅匹配服务器实体类型的服务器名称,而不匹配服务器 IP 地址。
如果为发现的实体选择了 “应用于绑定实体也” 选项,则用户可以自动访问绑定到发现实体的实体。
正则表达式存储在系统中以更新授权范围。当新实体与其实体类型的正则表达式匹配时,Citrix ADM 会将授权范围更新为新实体。
配置模板:
如果要选择用户可以查看或管理的特定配置模板,请执行以下步骤:
清除所有配置模板复选框,然后单击添加配置模板。
从列表中选择所需的模板,然后单击确定。
IPAM 提供商和网络:
如果要添加用户可以查看或管理的特定 IPAM 提供程序和网络,请执行以下操作:
添加提供程序-清除所有提供程序复选框,然后单击添加提供您可以选择所需的提供商,然后单击确定。
添加网络-清除所有网络复选框,然后单击添加网络。您可以选择所需的网络,然后单击确定。
样本:
如果要选择用户可以查看或管理的特定样书,请执行以下步骤:
清除所有样本复选框,然后单击将样本添加到组。您可以选择单个样书,也可以指定筛选器查询来授权样书。
如果要选择单个样书,请从 “单个样书” 窗格中选择样书,然后单击 “保存选择”。
如果要使用查询搜索样书,请选择 “自定义筛选器” 窗格。查询是键值对的字符串,其中键为
name
名称空间“,和version
。您还可以使用正则表达式作为值来搜索和添加符合组正则表达式条件的样书。用于搜索样书的自定义筛选器查询同时支持
And
和Or
操作。示例:
name=lb-mon|lb AND namespace=com.citrix.adc.stylebooks AND version=1.0
此查询列出了满足以下条件的样书:
- 样书名称是
lb-mon
或lb
。 - 样书名称空间是
com.citrix.adc.stylebooks
。 - 样书版本是
1.0
。
在为键表达式定义的值表达式之间使用
Or
操作。示例:
name=lb-mon|lb
查询是有效的。它返回名称为lb-mon
或lb
的样书。name=lb-mon | version=1.0
查询无效。
按
Enter
以查看搜索结果,然后单击保存查询。保存的查询将显示在 “自定义筛选器查询” 中。根据已保存的查询,ADM 为用户提供对这些样书的访问权限。
- 样书名称是
从列表中选择所需的样本,然后单击确定”。
您可以在创建组并将用户添加到该组时选择所需的样本。当用户选择允许的样本时,也会选择所有相关样本。
配置包:
在Configpack中,选择以下选项之一:
所有配置:默认情况下,此选项处于选中状态。它添加了 ADM 中的所有配置包。
所选样书的所有配置:此选项添加所选样书的所有配置包。
特定配置:此选项允许您添加所需的配置包。
您可以在创建组并将用户添加到该组时选择所需的配置包。
域名:
如果要选择用户可以查看或管理的特定域名,请执行以下步骤:
清除所有域名复选框,然后单击添加域名。
从列表中选择所需的域名,然后单击确定。
单击创建组。
在分配用户” 部分,在可用” 列表中选择用户,然后将用户添加到已配置列表。
注意
您也可以通过单击 “新建” 添加新用户。
单击完成。
用户访问权限如何根据授权范围进行更改
当管理员将用户添加到具有不同访问策略设置的组时,该用户将被映射到多个授权作用域和访问策略。
在这种情况下,ADM 根据特定授权范围授予用户对应用程序的访问权限。
考虑分配给具有两个策略策略 1 和策略 2 的组的用户。
策略 1— 仅查看应用程序的权限。
策略 2— 查看和编辑应用程序权限。
用户可以查看策略 1 中指定的应用程序。此外,此用户还可以查看和编辑策略 2 中指定的应用程序。对组 1 应用程序的编辑访问受到限制,因为它不在组 1 授权范围内。
限制
以下 Citrix ADM 功能不完全支持 RBAC:
- 分析- 分析模块不完全支持 RBAC。RBAC 支持仅限于实例级别,不适用于 Gateway Insight、HDX Insight 和 Security Insight 模块中的应用程序级别。
- 示例 1:基于实例的 RBAC(支持)。分配了几个实例的管理员只能在HDX Insight>设备下查看这些实例,并且只能查看HDX Insight>应用程序下的相应虚拟服务器,因为实例级别支持 RBAC。
- 示例 2:基于应用程序的 RBAC(不支持)。分配了几个应用程序的管理员可以在HDX Insight>应用程序下查看所有虚拟服务器,但无法访问这些服务器,因为应用程序级别不支持 RBAC。
- 样本 - 样本不完全支持 RBAC。
- 考虑一种情况,即多个用户可以访问单个样本,但对不同的 Citrix ADC 实例具有访问权限。用户可以在自己的实例上创建和更新配置包,但不能在其他实例上创建和更新配置包,因为他们没有访问自己的实例以外的其他实例。但是,他们仍然可以查看在 Citrix ADC 实例上创建的配置包和对象,而不是自己的配置包和对象。