Citrix ADC

身份验证过程中

从 Citrix ADC 版本 13.0.79.64 开始,可以在多因素身份验证期间将 Citrix ADC 设备配置为轮询机制。

如果在 Citrix ADC 设备上配置了轮询,则终端节点(例如 Web 浏览器或应用程序)可以在身份验证期间按配置的时间间隔轮询(探测)设备,以获取已提交的身份验证请求的状态。

可以将轮询配置为在使用 Citrix ADC 设备进行身份验证时终端节点中断 TCP 连接时处理身份验证。

注意事项

  • LDAP、RADIUS 和 TACACS 身份验证方法支持轮询配置。

  • 客户端可以从第二个因素开始探测身份验证请求。

为什么要配置轮询

有时在进行身份验证时,在应用程序(例如登录应用程序和身份验证器应用程序)之间切换会导致终端节点与 Citrix ADC 设备断开连接,从而导致身份验证流程中断。配置轮询后,可以避免身份验证中的这种中断。

了解投票机制

以下是未配置轮询的身份验证期间事件流的示例。

轮询机制使 Citrix ADC 设备能够恢复对终端节点的持续身份验证,而无需在端点上重置 TCP 连接的极少数情况下重新启动身份验证过程。

轮询电流

  1. 终端节点(应用程序或 Web 浏览器)使用凭据进行身份验证。
  2. 根据现有的第一要素目录(LDAP/Active Directory)验证用户名和密码。
  3. 如果提供了正确的凭据,则身份验证将移至下一个因素。
  4. 此时,Citrix ADC 设备向 RADIUS 推送服务器发送请求。
  5. 当 Citrix ADC 设备等待 RADIUS 服务器的响应时,终端节点会断开 TCP 连接。
  6. Citrix ADC 收到来自 RADIUS 推送服务器的响应。
  7. 由于未找到客户端 TCP 连接,Citrix ADC 设备会丢弃会话,登录失败。

以下是配置轮询的身份验证期间事件流的示例。

Pol-New

  1. 终端节点(应用程序或 Web 浏览器)使用凭据进行身份验证。
  2. 根据现有的第一要素目录(LDAP/Active Directory)验证用户名和密码。
  3. 如果提供了正确的凭据,则身份验证将移至下一个因素。
  4. 此时,Citrix ADC 设备向 RADIUS 推送服务器发送请求。
  5. 当 Citrix ADC 设备等待 RADIUS 服务器的响应时,终端节点会断开 TCP 连接。
  6. 终端节点向 Citrix ADC 设备发送轮询(探测)以检查身份验证状态。
  7. 由于 Citrix ADC 设备没有收到 RADIUS 服务器的回复,因此它请求终端节点继续轮询。
  8. Citrix ADC 设备接收来自 RADIUS 推送服务器的响应。
  9. 由于未找到客户端 TCP 连接,ADC 将保存会话状态。
  10. 终端节点再次轮询以检查身份验证状态。
  11. Citrix ADC 设备建立会话,然后登录成功。

使用 CLI 配置轮询

以下是 CLI 配置示例。

配置第一因素

add authentication ldapAction ldap-new -serverIP 10.106.40.65 -serverPort 636 -ldapBase "dc=aaatm-test,dc=com" -ldapBindDn administrator@aaatm-test.com -ldapBindDnPassword 2f63d3659103464a4fad0ade65e2ccfd4e8440e36ddff941d29796af03e01139 -encrypted -encryptmethod ENCMTHD_3 -ldapLoginName sAMAccountName -groupAttrName memberof -subAttributeName CN -secType SSL -alternateEmailAttr userParameters

add authentication Policy ldap-new -rule true -action ldap-new

bind authentication vserver avs -policy ldap-new -priority 1 -nextFactor rad_factor
<!--NeedCopy-->

配置第二个因素

add authentication radiusAction rad1 -serverIP 10.102.229.120 -radKey 1b1613760143ce2371961e9a9eb5392c86a4954a62397f29a01b5d12b42ce232 -encrypted -encryptmethod ENCMTHD_3

add authentication Policy rad -rule true -action rad1
<!--NeedCopy-->

配置 Poll.xml 登录模式

add authentication loginSchema polling_schema -authenticationSchema LoginSchema/Poll.xml

add authentication policylabel rad_factor -loginSchema polling_schema

bind authentication policylabel rad_factor -policyName rad -priority 1 -gotoPriorityExpression NEXT
<!--NeedCopy-->

使用 GUI 配置轮询

有关使用 GUI 配置多重身份验证的详细步骤,请参阅 配置 nFactor 身份验证

以下是从第二个因素开始配置 Citrix ADC 以进行轮询所需的示例高级步骤。

  1. 创建身份验证的第一个因素,例如 LDAP。
  2. 为身份验证创建第二个因素,例如 RADIUS。
  3. 将 Citrix ADC(/NSConfig/loginSchema/)中存在的 Poll.xml 添加为第二个因素的登录模式。
身份验证过程中