将预身份验证端点分析扫描配置为 nFactor 身份验证中的一个因素
在 Citrix Gateway 上,可以将端点分析 (EPA) 配置为检查用户设备是否满足某些安全要求,从而允许用户访问内部资源。当用户首次登录 Citrix Gateway 时,端点分析插件将下载并安装在用户设备上。如果用户未在用户设备上安装 Endpoint Analysis 插件或选择跳过扫描,则用户无法使用 Citrix Gateway 插件登录。或者,可以将用户置于隔离组中,用户可以在该组中对内部网络资源进行有限的访问。
在本主题中,EPA 扫描用作 nFactor 或多因素身份验证中的初始检查。
用户连接到 Citrix Gateway 虚拟 IP 地址。EPA 扫描已启动。如果 EPA 扫描成功,用户将显示带有用户名和密码字段的登录页面,用于 RADIUS 或基于 OTP 的身份验证。否则,用户将使用登录页面呈现,但这次用户使用基于 LDAP 或 AD(Active Directory)的身份验证进行身份验证。根据用户提供的凭据的成功或失败,向用户提供访问权限。
在 EPA 之后实施这一逻辑:
-
如果 EPA 扫描成功,则会将用户放置或标记为默认用户组。
-
如果 EPA 扫描失败,则会将用户放置或标记到隔离组。
-
根据前两个步骤中确定的用户组成员身份来选择下一种身份验证方法(RADIUS 或 LDAP)。
必备条件
确保以下配置到位。
- VPN 虚拟服务器或网关和验证虚拟服务器配置
- 身份验证、授权和审核用户组(适用于默认用户组和隔离用户组)及相关策略
- LDAP 和 RADIUS 服务器配置及相关策略
下图显示了策略和策略标签的映射。这是用于配置的方法,但从右到左。
注意: 也可以通过 Citrix ADC 版本 13.0 及更高版本中提供的 nFactor 可视化工具创建设置。
使用 CLI 执行以下操作
-
配置 LDAP 身份验证策略以检查 quarantined_group 成员身份,并将其与配置为使用特定 LDAP 服务器进行身份验证的 LDAP 策略关联。在以下示例命令中,
ldap-auth
是身份验证策略的名称,ldap_server1
是创建的 LDAP 操作的名称。add authentication Policy ldap-auth -rule "AAA.USER.IS_MEMBER_OF ("quarantined_group")" -action ldap_server1 <!--NeedCopy-->
-
配置 RADIUS 身份验证策略以检查默认成员身份,并将其与配置为使用特定 RADIUS 服务器进行身份验证的 RADIUS 策略关联。在以下示例命令中,
radius-auth
是身份验证策略的名称,radius_server1
是创建的 RADIUS 操作的名称。add authentication Policy radius-auth -rule "AAA.USER.IS_MEMBER_OF("default_group")" -action radius_server1 <!--NeedCopy-->
-
使用登录架构配置 epa-user 组检查后的策略标签,以捕获单因素用户名和密码。
add authentication policylabel post-epa-usergroup-check -loginSchema lschema_single_factor_deviceid <!--NeedCopy-->
注意: 如果您不想使用内置模式 lschema_single_factor_deviceid,则可以根据需要替换为模式。
-
将步骤 1 和 2 中配置的策略与步骤 3 中配置的策略标签相关联。
bind authentication policylabel post-epa-usergroup-check -policyName radius-auth -priority 100 -gotoPriorityExpression END bind authentication policylabel post-epa-usergroup-check -policyName ldap-auth -priority 110 -gotoPriorityExpression END <!--NeedCopy-->
注意: END 表示该段的身份验证机制已结束。
-
创建用于执行 EPA 扫描的操作,并将其与 EPA 扫描策略关联。
add authentication epaAction EPA-client-scan -csecexpr "sys.client_expr("app_0_MAC- BROWSER_1001_VERSION_<=_10.0.3")||sys.client_expr("os_0_win7_sp_1")" -defaultEPAGroup default_group -quarantineGroup quarantined_group <!--NeedCopy-->
默认组和 quarantined_group 是预先配置的用户组。步骤 5 中的表达式会扫描 macOS 用户的浏览器版本是否低于 10.0.3,或者 Windows 7 用户是否安装了 Service Pack 1。
add authentication Policy EPA-check -rule true -action EPA-client-scan <!--NeedCopy-->
-
将 EPA 扫描策略与身份验证、授权和审核虚拟服务器相关联,下一步指向 epa-usergroup 检查后的策略标签。这是为了执行身份验证的下一步。
bind authentication vserver MFA_AAA_vserver -policy EPA-check -priority 100 - nextFactor post-epa-usergroup-check -gotoPriorityExpression NEXT <!--NeedCopy-->
使用 nFactor 可视化工具进行配置
-
导航到安全 > AAA-应用程序流量 > nFactor 可视化工具 > nFactor 流程,然后单击“添加”。
-
单击 + 以添加 nFactor 流。
-
添加一个因素。您输入的名称为 nFactor 流的名称。
注意: 第一个因素不需要架构。
-
单击 添加策略 ,然后单击 添加 以创建 EPA 检查的身份验证策略。
-
在“操作”字段中,单击“添 加”以添加 EPA 操作。
有关 EPA 的更多详细信息,请参阅 配置高级端点分析扫描。
-
单击 epa_nFactor 区块上的绿色 + 号可为 EPA 用户组后检查添加下一个因素。
-
单击 添加架构 为第二个因素添加架构。选择架构 lschema_single_factor_deviceid。
-
单击 添加策略 以选择 LDAP 身份验证的策略。
LDAP 策略会检查用户是否属于隔离组。有关创建 LDAP 身份验证的更多信息,请参阅 配置 LDAP 身份验证。
-
单击 epa_nFactor 块上的蓝色 + 号以添加第二个身份验证。
-
单击“添加”以选择 RADIUS 身份验证的策略。有关创建 RADIUS 身份验证的更多信息,请参阅 配置 RADI
LDAP 的策略会检查用户是否属于默认组。
-
单击 Done(完成)。
-
nFactor 流完成后,将此流绑定到身份验证、授权和审核虚拟服务器。单击 绑定到认证服务器 ,然后单击 创建。
取消绑定 nFactor 流程
-
选择 nFactor 流程并单击“显示绑定”。
-
选择身份验证虚拟服务器,然后单击“解除绑定”。