Citrix ADC

将预身份验证 Endpoint Analysis 扫描配置为 nFactor 身份验证中的一个因素

在 Citrix Gateway 上,可以配置端点分析 (EPA) 以检查用户设备是否符合特定安全要求,并相应地允许用户访问内部资源。用户首次登录 Citrix Gateway 时,端点分析插件会下载并安装在用户设备上。如果用户未在用户设备上安装端点分析插件或选择跳过扫描,则用户无法使用 Citrix Gateway 插件登录。或者,用户可以放在隔离组中,用户可以获得对内部网络资源的有限访问权限。

nFactor 或多重身份验证中的 EPA 扫描

在本主题中,EPA 扫描用作 nFactor 或多重身份验证中的初始检查。

用户连接到 Citrix Gateway 虚拟 IP 地址。开始进行 EPA 扫描。如果 EPA 扫描成功,用户将显示登录页面,其中包含用户名和密码字段,以进行 RADIUS 或 OTP 的身份验证。否则,用户将使用登录页面呈现,但这次使用基于 LDAP 或 AD(Active Directory)的身份验证对用户进行身份验证。根据用户提供的凭据的成功或失败,向用户提供访问权限。

实现这个逻辑 post EPA:

  1. 如果 EPA 扫描成功,用户将被放置或标记为默认用户组。

  2. 如果 EPA 扫描失败,则会将用户放置或标记到隔离组。

  3. 根据前两个步骤中确定的用户组成员资格选择下一种身份验证方法(RADIUS 或 LDAP)。

必备条件

请确保以下配置已到位。

  • VPN 虚拟服务器或 Gateway 和身份验证虚拟服务器配置
  • 身份验证、授权和审核用户组(对于默认和隔离的用户组)和关联策略
  • LDAP 和 RADIUS 服务器配置及相关策略

下图显示了策略和策略标签的映射。这是用于配置的方法,但从右到左。

此示例中的策略和策略标签映射

注意: 此设置也可以通过 Citrix ADC 13.0 及更高版本中提供的 nFactor 可视化工具进行创建。

在可视化工具中表示此设置

使用 CLI 执行以下操作

  1. 配置 LDAP 身份验证策略以检查 quarantined_group 成员身份,并将其与配置为使用特定 LDAP 服务器进行身份验证的 LDAP 策略关联。

    add authentication Policy ldap-auth -rule "HTTP.REQ.USER.IS_MEMBER_OF ("quarantined_group")" -action ldap_server1
    
    ldap_server1 is LDAP policy and ldap-auth is policy name
    
  2. 配置 RADIUS 身份验证策略以检查默认成员身份,并将其与配置为使用特定 RADIUS 服务器进行身份验证的 RADIUS 策略关联。

    add authentication Policy radius-auth -rule "HTTP.REQ.USER.IS_MEMBER_OF("default_group")" -action radius_server1
    
    radius_server1 is Radius Policy and radius-auth is policy name
    
  3. 使用登录架构配置 epa-user 组检查后的策略标签,以捕获单因素用户名和密码。

    add authentication policylabel post-epa-usergroup-check -loginSchema lschema_single_factor_deviceid
    

    注意: 如果您不想使用内置的模式 lschema_single_factor_设备id,则可以根据您的要求使用模式替换。

  4. 将在步骤 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
    

    注意: END 表示该边的身份验证机制的结束。

  5. 创建执行 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
    

    默认组和隔离组是预配置的用户组。步骤 5 中的表达式扫描 macOS 用户的浏览器版本小于 10.0.3,或者如果 Windows 7 用户安装了补丁 1。

    add authentication Policy EPA-check -rule true -action EPA-client-scan
    
  6. 将 EPA 扫描策略与身份验证、授权和审核虚拟服务器关联,下一步指向 epa-user 组检查后的策略标签。这是执行身份验证的下一步。

    bind authentication vserver MFA_AAA_vserver -policy EPA-check -priority 100 - nextFactor post-epa-usergroup-check -gotoPriorityExpression NEXT
    

通过使用 nFactor 可视化工具进行配置

  1. 导航到安全 > AAA-应用程序流量 > nFactor 可视化工具 > nFactor 流,然后单击添加。

  2. 单击 + 以添加 nFactor 流。

    单击以添加因素

  3. 添加一个因素。您输入的名称是 nFactor 流的名称。

    为因素添加名称

    注意: 第一个因素不需要架构。

    第一因素无需架构

  4. 单击添加策略,然后单击添加以创建 EPA 检查的身份验证策略。

    单击以添加策略

  5. 操作字段中,单击添加以添加 EPA 操作。

    单击以添加操作

    有关 EPA 的更多详细信息,请参阅配置高级端点分析扫描

  6. 单击 EPA_nFactor 块上的绿色 + 符号,为后 EPA 用户组检查添加下一个因素。

    单击以添加 EPA 用户组后检查的下一个因素

  7. 单击添加架构以添加第二个因素的架构。选择模式单个工厂设备编码。

    单击以添加第二因素的架构

    为第二因素选择架构

  8. 单击添加策略以选择用于 LDAP 身份验证的策略。

    单击以添加 LDAP 身份验证策略

    LDAP 策略检查用户是否属于隔离组。有关创建 LDAP 身份验证的更多信息,请参阅配置 LDAP 身份验证

    选择用于 LDAP 身份验证的策略

  9. 单击 EPA_nFactor 块上的蓝色 + 符号以添加第二重身份验证。

    单击以添加第二个身份验证

  10. 单击添加以选择 RADIUS 身份验证的策略。有关创建 RADIUS 身份验证的更多信息,请参阅配置 RADIUS 身份验证

    单击添加以选择 RADIUS 身份验证策略

    LDAP 的策略将检查用户是否属于默认组。

    为 LDAP 选择策略

  11. 单击完成

  12. nFactor 流完成后,将此流绑定到身份验证、授权和审核虚拟服务器。单击绑定到身份验证服务器,然后单击创建

    单击以将流程绑定到身份验证虚拟服务器

取消绑定 nFactor 流

  1. 选择 nFactor 流,然后单击显示绑定。

  2. 选择身份验证虚拟服务器,然后单击 取消绑定。

    取消绑定 nFactor 流

将预身份验证 Endpoint Analysis 扫描配置为 nFactor 身份验证中的一个因素