身份验证策略
当用户登录到 Citrix ADC 或 Citrix Gateway 设备时,将根据您创建的策略对他们进行身份验证。身份验证策略由表达式和操作组成。身份验证策略使用 Citrix ADC 表达式。
创建身份验证操作和身份验证策略后,将其绑定到身份验证虚拟服务器并为其分配优先级。绑定它时,还要将其指定为主策略或辅助策略。在评估次要策略之前,先评估主要策略。在同时使用这两种策略的配置中,主策略通常是更具体的策略,而辅助策略通常是更一般的策略。它旨在处理不符合更具体标准的任何用户帐户的身份验证。该策略定义了身份验证类型。单个身份验证策略可用于简单的身份验证需求,并且通常在全局级别绑定。您还可以使用默认的身份验证类型,即本地身份验证类型。如果配置本地身份验证,还必须在设备上配置用户和组。
您可以配置多个身份验证策略并将其绑定以创建详细的身份验证过程和虚拟服务器。例如,您可以通过配置多个策略来配置级联身份验证和双因素身份验证。您还可以设置身份验证策略的优先级,以确定哪些服务器以及设备检查用户凭据的顺序。身份验证策略包括表达式和操作。例如,如果将表达式设置为 True 值,则当用户登录时,操作会将用户登录评估为 true,然后用户可以访问网络资源。
创建身份验证策略后,可以在全局级别或将策略绑定到虚拟服务器。将至少一个身份验证策略绑定到虚拟服务器时,当用户登录到虚拟服务器时,不会使用绑定到全局级别的任何身份验证策略,除非全局身份验证类型的优先级高于绑定到虚拟服务器的策略。
当用户登录设备时,将按以下顺序评估身份验证:
- 检查虚拟服务器是否存在任何绑定的身份验证策略
- 如果身份验证策略未绑定到虚拟服务器,设备将检查全局身份验证策略。
- 如果身份验证策略未绑定到虚拟服务器或全局绑定,则会通过默认身份验证类型对用户进行身份验证。
如果配置 LDAP 和 RADIUS 身份验证策略并希望全局绑定策略以进行双重身份验证,则可以在配置实用程序中选择策略,然后选择策略是主要身份验证类型还是辅助身份验证类型。您还可以配置组提取策略。
注意:
Citrix ADC 或 Citrix Gateway 设备仅编码 UTF-8 字符进行身份验证,并且与使用 ISO-8859-1 字符的服务器不兼容。
创建身份验证策略
使用 GUI 创建身份验证策略
- 导航到 “ 安全” > “AAA-应用程序流量” > “策略” > “身份验证”,然后选择要创建的策略类型。 对于 Citrix Gateway,请导航到 Citrix Gateway > 策略 > 身份验证。
-
在详细信息窗格中的 Policies(策略)选项卡上,执行以下操作之一:
- 要创建新策略,请单击 Add(添加)。
- 要修改现有策略,请选择操作,然后单击 编辑。
-
在 “创建身份验证策略” 或 “配置身份验证策略” 对话框中,键入或选择参数值。
- Name — 策略名称(无法为先前配置的操作进行更改)
-
身份验证类型 —
authtype
-
服务器 —
authVsName
- Expression — rule(要输入表达式,请先在 “表达式” 窗口最左侧的下拉列表中选择表达式的类型,然后直接在表达式文本区域中键入表达式,或者单击 “添加” 打开 “添加表达式” 对话框,然后使用下拉菜单 在其中列出来构造你的表达式。)
- 单击 Create(创建)或 OK(确定)。您创建的策略将显示在 “策略” 页面中。
-
单击 “ 服务器 ” 选项卡,然后在详细信息窗格中执行以下操作之一:
- 要使用现有服务器,请选择该服务器,然后单击。
- 要创建服务器,请单击 “添加”,然后按照说明进行操作。
- 如果要将此策略指定为辅助身份验证策略,请在身份验证选项卡上单击辅助。如果要将此策略指定为主身份验证策略,请跳过此步骤。
- 单击 “ 插入策略”。
- 从下拉列表中选择要绑定到身份验证虚拟服务器的策略。
- 在左侧的 Priority(优先级)列中,修改默认优先级以确保按照正确的顺序评估策略。
- 单击 OK(确定)。状态栏中将显示一条消息,指出策略已成功配置。
使用 GUI 修改身份验证策略
您可以修改已配置的身份验证策略和配置文件,例如身份验证服务器的 IP 地址或表达式。
- 在配置实用程序的配置选项卡上,展开 Citrix Gateway > 策略 > 身份验证。 注意:您还可以通过 “ 安全” > “AAA-应用程序流量” > “策略” > “身份验证” 配置策略,然后选择要修改的策略类型。
- 在导航窗格中的 “身份验证” 下,选择身份验证类型。
- 在详细信息窗格的 “服务器” 选项卡上,选择一个服务器,然后单击 “打开”。
使用 GUI 删除身份验证策略
如果从网络中更改或删除了身份验证服务器,请从 Citrix Gateway 中删除相应的身份验证策略。
- 在配置实用程序的配置选项卡上,展开 Citrix Gateway > 策略 > 身份验证。 注意:要从 ADC 进行配置,请导航 安全 > AAA-应用程序流量 > 策略 > 身份验证,然后选择要删除的策略类型。
- 在导航窗格中的 “身份验证” 下,选择身份验证类型。
- 在详细信息窗格的 “策略” 选项卡上,选择一个策略,然后单击 “删除”。
使用 CLI 创建身份验证策略
在命令提示符下,键入以下命令:
add authentication negotiatePolicy <name> <rule> <reqAction>
show authentication localPolicy <name>
bind authentication vserver <name> -policy <policyname> [-priority <priority>][-secondary]]
show authentication vserver <name>
<!--NeedCopy-->
示例:
add authentication localPolicy Authn-Pol-1 ns_true
Done
show authentication localPolicy
1) Name: Authn-Pol-1 Rule: ns_true Request action: LOCAL Done
bind authentication vserver Auth-Vserver-2 -policy Authn-Pol-1
Done
show authentication vserver Auth-Vserver-2
Auth-Vserver-2 (10.102.29.77:443) - SSL Type: CONTENT State: UP Client Idle
Timeout: 180 sec Down state flush: DISABLED
Disable Primary Vserver On Down : DISABLED
Authentication : ON
Current AAA Users: 0
Authentication Domain: myCompany.employee.com
1) Primary authentication policy name: Authn-Pol-1 Priority: 0
Done
<!--NeedCopy-->
使用 CLI 修改身份验证策略
在命令提示符下,键入以下命令以修改现有身份验证策略:
set authentication localPolicy <name> <rule> [-reqaction <action>]
<!--NeedCopy-->
示例
set authentication localPolicy Authn-Pol-1 'ns_true'
<!--NeedCopy-->
使用 CLI 删除身份验证策略
在命令提示符下,键入以下命令以删除身份验证策略:
rm authentication localPolicy <name>
<!--NeedCopy-->
示例
rm authentication localPolicy Authn-Pol-1
<!--NeedCopy-->
绑定身份验证策略
配置身份验证策略后,可以全局绑定策略或将策略绑定到虚拟服务器。您可以使用配置实用程序绑定身份验证策略。
要使用配置实用程序全局绑定身份验证策略,请执行以下操作:
- 在配置实用程序的配置选项卡上,展开 Citrix Gateway > 策略 > 身份验证。 注意:要从 ADC 进行配置,请导航 安全 > AAA-应用程序流量 > 策略 > 身份验证
- 单击身份验证类型。
- 在详细信息窗格的策略选项卡上,单击服务器,然后在操作中单击 全局绑定。
- 在 “主要” 或 “辅助” 选项卡的 “详细信息” 下,单击 “ 插入策略”。
-
在 “策略名称” 下,选择策略,然后单击 “ 确定”。
注意: 选择策略时,Citrix Gateway 会自动将表达式设置为 True 值。
要使用配置实用程序取消绑定全局身份验证策略,请执行以下操作:
- 在配置实用程序的配置选项卡上,展开 Citrix Gateway > 策略 > 身份验证。 注意:要从 ADC 进行配置,请导航 安全 > AAA-应用程序流量 > 策略 > 身份验证
- 在策略选项卡的操作中,单击 全局绑定。
- 在 “绑定/取消绑定身份验证策略到全局” 对话框的 “主要” 或 “辅助” 选项卡的 “策略名称” 中,选择策略,单击 “ 取消绑定策略”,然后单击 “ 确定”。
添加身份验证操作
使用 CLI 添加身份验证操作
如果不使用 LOCAL 身份验证,则需要添加显式身份验证操作。在命令提示符下,键入以下命令:
add authentication tacacsAction <name> -serverip <IP> [-serverPort <port>][-authTimeout <positive_integer>][ ... ]
<!--NeedCopy-->
示例
add authentication tacacsaction Authn-Act-1 -serverip 10.218.24.65 -serverport 1812 -authtimeout 15 -tacacsSecret "minotaur" -authorization OFF -accounting ON -auditFailedCmds OFF -defaultAuthenticationGroup "users"
<!--NeedCopy-->
使用 CLI 配置身份验证操作
要配置现有身份验证操作,请在命令提示符下键入以下命令:
set authentication tacacsAction <name> -serverip <IP> [-serverPort <port>][-authTimeout <positive_integer>][ ... ]
<!--NeedCopy-->
示例
set authentication tacacsaction Authn-Act-1 -serverip 10.218.24.65 -serverport 1812 -authtimeout 15 -tacacsSecret "minotaur" -authorization OFF -accounting ON -auditFailedCmds OFF -defaultAuthenticationGroup "users"
<!--NeedCopy-->
使用命令行界面删除身份验证操作
要删除现有 RADIUS 操作,请在命令提示符下键入以下命令:
rm authentication radiusAction <name>
<!--NeedCopy-->
示例
rm authentication tacacsaction Authn-Act-1
<!--NeedCopy-->
NoAuth 身份验证
Citrix ADC 设备支持 NoAuth 身份验证功能,该功能使客户能够在用户执行此策略时在 noAuthAction
命令中配置 defaultAuthenticationGroup 参数。管理员可以检查用户组中是否存在此组,以确定用户通过 NOAuth 策略进行导航。
使用命令行界面配置 NOAuth 身份验证
在命令提示窗口中,键入:
add authentication noAuthAction <name> [-defaultAuthenticationGroup <string>]
<!--NeedCopy-->
示例
add authentication noAuthAction noauthact –defaultAuthenticationGroup mynoauthgroup
<!--NeedCopy-->
默认全局身份验证类型
安装 Citrix Gateway 并运行 Citrix Gateway 向导时,您在向导中配置了身份验证。此身份验证策略会自动绑定到 Citrix Gateway 全局级别。在 Citrix Gateway 向导中配置的身份验证类型是默认身份验证类型。您可以通过再次运行 Citrix Gateway 向导来更改默认授权类型,也可以在配置实用程序中修改全局身份验证设置。
如果需要添加其他身份验证类型,则可以使用配置实用程序在 Citrix Gateway 上配置身份验证策略并将策略绑定到 Citrix Gateway。在全局配置身份验证时,可以定义身份验证类型、配置设置以及设置可以进行身份验证的最大用户数。
配置并绑定策略后,您可以设置优先级来定义优先级的身份验证类型。例如,您可以配置 LDAP 和 RADIUS 身份验证策略。如果 LDAP 策略的优先级为 10,而 RADIUS 策略的优先级号为 15,则无论将每个策略绑定到何处,LDAP 策略都将优先。这称为级联身份验证。
您可以选择从 Citrix Gateway 内存中缓存或 Citrix Gateway 上运行的 HTTP 服务器提供登录页面。如果选择从内存缓存传送登录页面,则从 Citrix Gateway 传送登录页面的速度要比从 HTTP 服务器传送登录页面的速度快。选择从内存缓存传送登录页面可以减少许多用户同时登录时的等待时间。作为全局身份验证策略的一部分,您只能配置缓存中登录页的传递。
您还可以配置作为身份验证的特定 IP 地址的网络地址转换 (NAT) IP 地址。此 IP 地址对于身份验证是唯一的,不是 Citrix Gateway 子网、映射或虚拟 IP 地址。这是一个可选设置。
注意:
您无法使用 Citrix Gateway 向导配置 SAML 身份验证。
您可以使用快速配置向导配置 LDAP、RADIUS 和客户端证书身份验证。运行向导时,可以从 Citrix Gateway 上配置的现有 LDAP 或 RADIUS 服务器中进行选择。您还可以配置 LDAP 或 RADIUS 的设置。如果使用双重身份验证,Citrix 建议使用 LDAP 作为主要身份验证类型。
配置默认的全局身份验证类型
- 在 GUI 中的 “配置” 选项卡的导航窗格中,展开 Citrix Gateway, 然后单击 “ 全局设置”。
- 在详细信息窗格的 “设置” 下,单击 “ 更改身份验证设置”。
- 在 “ 最大用户数” 中,键入可以使用此身份验证类型进行身份验证的用户数。
- 在 NAT IP 地址中,键入用于身份验证的唯一 IP 地址。
- 选择 E启用静态缓存可更快地传送登录页面。
- 选择 启用增强的身份验证反馈,以便在身份验证失败时向用户提供消息。用户收到的消息包括密码错误、帐户已禁用或锁定或未找到用户,仅举几例。
- 在 默认身份验证类型中,选择身份验证类型。
- 配置身份验证类型的设置,然后单击 “ 确定”。
支持检索用户当前的登录尝试
Citrix ADC 设备提供了一个选项,可以通过新表达式 aaa.user.login_attempts
检索用户当前登录尝试的值。表达式接受一个参数(用户名)或不带参数。如果没有参数,表达式将从 aaa_session
或 aaa_info
中获取用户名。
您可以将 aaa.user.login_attempts
表达式与身份验证策略结合使用以进行进一步处理。
使用 CLI 配置每个用户的登录尝试次数
在命令提示符下,键入:
add expression er aaa.user.login_attempts