网关身份验证的因素

简介

nF因子身份验证可以为身份验证提供一组全新的可能性。使用 nFirtual 的管理员在为虚拟服务器配置身份验证因素时享有身份验证、授权和审核 (AAA) 的灵活性。

两个策略银行或两个因素不再限制管理员。政策银行的数目可以扩大,以适应不同的需要。根据以前的因素,nForms 确定身份验证方法。使用 nFactor 可以实现动态登录表单和失败操作。

注意:Citrix ADC 标准版不支持 因子。思杰 ADC 企业版和思杰 ADC 白金版支持此功能。

使用案例

nF因子身份验证启用基于用户配置文件的动态身份验证流。在某些情况下,这些可能是简单的流程,对用户来说是直观的。在其他情况下,它们可以与保护 Active Directory 或其他身份验证服务器相结合。以下是特定于网关的一些要求:

  1. **动态用户名和密码选择。 **传统上,Citrix 客户端(包括浏览器和 Receiver)使用 Active Directory (AD) 密码作为第一个密码字段。第二个密码通常保留给一次性密码 (OTP)。但是,为了保护 AD 服务器的安全,需要先验证 OTP。nFirst 可以做到这一点,而不需要客户端修改。

  2. 多租户身份验证终点。某些组织为证书用户和非证书用户使用不同的网关服务器。用户使用自己的设备登录时,用户的访问级别因所使用的设备而异。网关可以满足不同的身份验证需求。

  3. 基于组成员身份验证。某些组织从 AD 服务器获取用户属性以确定身份验证要求。对于个人用户,身份验证要求可能会有所不同。

  4. 认证的辅助因素。在某些情况下,使用不同的身份验证策略对对不同的用户集进行身份验证。提供配对策略可提高有效的身份验证。依赖性政策可以从一个流程中制定。通过这种方式,独立的一套政策成为其本身的流动,提高效率和降低复杂性。

身份验证响应处理

Citrix 网关回调寄存器处理身份验证响应。AAAD(身份验证守护进程)响应和成功/失败/错误/对话代码被馈送到回调句柄。成功/失败/错误/对话代码指示网关采取适当的操作。

客户支持

下表详细介绍了配置详细信息。

客户 因子支持 身份验证策略绑定点 环保局
浏览器 身份验证
思杰接收器 VPN
网关插入 VPN

命令行配置

网关虚拟服务器需要一个名为属性的身份验证虚拟服务器。这是此模型所需的唯一配置。

<name-of-auth-vserver» 添加授权个人资料 <name-of-profile>-授权名称

身份验证虚拟服务器名称是身份验证虚拟服务器的名称。此虚拟服务器应配置高级身份验证策略,并用于 nForms 身份验证。

<name-of-profile» 添加 VPN 虚拟服务器 <name> <serviceType> <IP> <PORT>-认证配置文件

<name-of-profile» 设置 VPN 虚拟服务器 <name>-认证配置文件

其中 AuthnProfile 是之前创建的身份验证配置文件。

互操作挑战

大多数旧网关客户端以及 RFWeb 客户端都是根据网关发送的响应建模的。例如,许多客户端需要对 /vpn/index.html 进行 302 响应。此外,这些客户端依赖于各种网关 cookie,如 “PWcount”,“NSC_CERT” 等。

端点分析

由于 AAA 子系统不支持 nPirtual 的 EPA;然而,网关虚拟服务器执行 EPA。EPA 之后,登录凭据将使用上述 API 发送到身份验证虚拟服务器。身份验证完成后,Gateway 将继续进行身份验证后过程,并建立用户会话。

配置错误注意事项

网关客户端仅发送一次用户凭据。网关通过登录请求从客户端获取一个或两个凭据。在旧模式下,最多有两个因素。获得的密码用于这些因素。但是,对于 nP因子,可以配置的因子数实际上是无限的。从网关客户端获取的密码将被重复使用(根据配置)用于配置的因子。必须注意不要多次重复使用一次性密码 (OTP)。同样,管理员必须确保在某个因素中重复使用的密码确实适用于该因素。

定义思杰客户端

提供配置选项可帮助 Citrix ADC 确定浏览器客户端与厚客户端(如 Receiver)。

为管理员提供了一个模式集,即 ns_vpn_client_用户代理,以便为所有 Citrix 客户端配置模式。

同样,将 “Citrix Receiver” 字符串绑定到上述修补集以忽略用户代理中具有 “Citrix Receiver” 的所有 Citrix 客户端。

限制网关的 n 因子

如果存在以下条件,则不会发生网关身份验证的因子。

  1. Citrix 网关未设置授权配置文件。

  2. 高级身份验证策略不绑定到身份验证 vserver,并且在 AuthnProfile 中提到了相同的身份验证 vserver。

  3. HTTP 请求中的用户代理字符串与在修补集 ns_vpn_客户代理中配置的用户代理匹配。

如果不满足这些条件,则使用绑定到网关的经典身份验证策略。

如果 User-Agent 或其部分绑定到上述修补集,则来自这些用户代理的请求不会参与 nFit 流程。例如,下面的命令限制了所有浏览器的配置(假设所有浏览器在用户代理字符串中都包含 “Mozilla”):

绑定修补集

登录模式

登录架构是登录窗体的逻辑表示形式。XML 语言定义它。登录架构的语法符合 Citrix 的通用窗体协议规范。

登录架构定义产品的 “视图”。管理员可以提供表单的自定义描述、辅助文本等。这包括表单本身的标签。客户可以提供成功/失败消息,描述在给定时间点显示的表单。

所需的登录架构和因子知识

预构建的登录架构文件可以在以下 Citrix ADC 位置/国家配置/登录架构/登录架构/。这些预先构建的 LoginSchema 文件可以满足常见的使用案例,如果需要,可以根据轻微的变化进行修改。

此外,大多数具有少量自定义项的单因素使用案例不需要 LoginSchema 配置。

建议管理员检查文档以获取使 Citrix ADC 能够发现这些因素的其他配置选项。用户提交凭据后,管理员可以配置多个因素,以便灵活地选择和处理身份验证因素。

在不使用登录架构的情况下配置双重身份验证

Citrix ADC 基于配置自动确定双因素要求。用户提供这些凭据后,管理员可以在虚拟服务器上配置第一组策略。对于每个策略,可能会有一个 “下一个因子” 配置为 “直通”。“直通” 意味着 Citrix ADC 应使用现有凭据集来处理登录,而无需转到用户。通过使用 “直通” 因素,管理员可以以编程方式驱动身份验证流程。建议管理员阅读 nPator 规范或部署指南以了解更多详细信息。请参阅 多因素(n因子)身份验证

用户名密码表达式

为了处理登录凭据,管理员必须配置登录架构。只有少量 LoginSchema 自定义项的单因素或双因素使用案例不需要指定的 XML 定义。登录架构具有其他属性,如使用表达式和密码,可用于更改用户提供的用户名/密码。这些是高级策略表达式,也可用于覆盖用户输入。

nfactor 配置中的高级步骤

下图说明 nfactor 配置所涉及的高级步骤。

因子工作流程

GUI 配置

本节介绍了以下主题:

  • 创建虚拟服务器

  • 创建身份验证虚拟服务器

  • 创建认证 CERT 配置文件

  • 创建身份验证策略

  • 添加 LDAP 身份验证服务器

  • 添加 LDAP 身份验证策略

  • 添加 Radius 身份验证服务器

  • 添加半径身份验证策略

  • 创建身份验证登录架构

  • 创建策略标签

创建虚拟服务器

  1. 转到 Citrix 网关-> 虚拟服务器。

    本地化后的图片

  2. 点击 加按钮创建负载平衡虚拟服务器。

    本地化后的图片

  3. 输入以下信息。

    参数名称 参数描述
    输入虚拟服务器的名称。 Citrix 网关虚拟服务器的名称。必须以 ASCII 字母或下划线 (_) 开头,并且必须仅包含 ASCII 字母数字、下划线、散列 (#)、句点 (.)、空格、冒号 (:)、at (@)、equals (=) 和连字符 (-)。可以在创建虚拟服务器后更改。以下要求仅适用于 Citrix ADC CLI:如果名称包含一个或多个空格,请将名称括在双引号或单引号中(例如,“我的服务器” 或 “我的服务器”)。
    输入虚拟服务器的 IP 地址类型 从下拉菜单中选择 IP 地址或不可寻址选项。
    输入虚拟服务器的 IP 地址。 互联网协议地址(IP 地址)是一个数字标签,分配给参与使用互联网协议进行通信的计算机网络的每个设备。
    输入虚拟服务器的端口号。 输入端口号。
    输入身份验证配置文件。 虚拟服务器上的身份验证配置文件实体。此实体可用于将身份验证卸载到 AAA vserver 以进行多因素 (nF因子) 身份验证
    输入 RDP 服务器配置文件。 与 vserver 关联的 RDP 服务器配置文件的名称。
    输入最大用户数。 此虚拟服务器上允许的最大并发用户会话数。允许登录此虚拟服务器的实际用户数取决于用户许可证的总数。
    输入最大登录尝试次数。 最大登录尝试次数。
    输入失败的登录超时。 如果用户超过允许的最大尝试,帐户将被锁定的分钟数。
    进入 Windows EPA 插件升级。 选项设置插件升级行为赢。
    进入 Linux EPA 插件升级。 选项为 Linux 设置插件升级行为。
    进入 MAC EPA 插件升级 选项为 Mac 设置插件升级行为。
    登录一次 此选项为此 vserver 启用/禁用无缝 SSO。
    仅国际合作社联盟 如果设置为开,则意味着基本模式,用户可以使用 Citrix Receiver 或浏览器登录,并访问由 Wihome 参数指出的 Citrix 虚拟应用程序沙桌面环境中配置的已发布应用程序。不允许用户使用 Citrix 网关插件进行连接,并且无法配置终点扫描。在此模式下,可以登录和访问应用程序的用户数不受许可证的限制。-如果设置为 OFF,则表示用户可以使用 Citrix Receiver 或浏览器或 Citrix 网关插件登录的智能访问模式。管理员可以配置要在客户端系统上运行的端点扫描,然后使用结果控制对已发布应用程序的访问。在此模式下,客户端可以在其他客户端模式(VPN 和 CVPN)连接到网关。在此模式下,可以登录和访问资源的用户数受 CCU 许可证的限制。
    启用身份验证 要求连接到 Citrix 网关的用户进行身份验证。
    双跳 在双跃点配置中使用 Citrix 网关设备。双跳部署通过使用三个防火墙将 DMZ 分为两个阶段,为内部网络提供了额外的安全层。此类部署可以在 DMZ 中有一个设备,在安全网络中有一个设备。
    向下状态刷新 当虚拟服务器标记为 “向下” 时关闭现有连接,这意味着服务器可能已超时。断开现有连接可释放资源,并在某些情况下加快重载负载平衡设置的恢复速度。在服务器上启用此设置,当连接被标记为 “向下” 时可以安全关闭。不要在必须完成其事务的服务器上启用向下状态刷新。
    DTLS 此选项启动/停止 vserver 上的转弯服务
    AppFlow 日志记录 记录包含标准 NetFlow 或 IPFIX 信息的 AppFlow 记录,例如流的开始和结束时间戳、数据包计数和字节计数。还会记录包含应用程序级别信息的记录,例如 HTTP Web 地址、HTTP 请求方法和响应状态代码、服务器响应时间和延迟。
    ICA 代理会话迁移 此选项确定用户从其他设备登录时是否传输现有 ICA 代理会话。
    国家 虚拟服务器的当前状态,如 UP、关闭、忙等。
    启用设备证书 指示作为 EPA 一部分的设备证书检查是打开还是关闭。

    本地化后的图片

  4. 选择页面的 “ 无服务器证书 ” 部分。

    本地化后的图片

  5. 单击 > 以选择服务器证书。

    本地化后的图片

  6. 选择 SSL 证书,然后单击选 按钮。

    本地化后的图片

  7. 单击 Bind(绑定)。

    本地化后的图片

  8. 如果您看到关于 “ 无可用密码” 的警告,请单击 “ 确定

    本地化后的图片

  9. 点击继 按钮。

    本地化后的图片

  10. 在身份验证部分,单击右上角的 + 图标。

    本地化后的图片

创建身份验证虚拟服务器

  1. 转到安全-> AAA-应用程序流量-> 虚拟服务器。

    本地化后的图片

  2. 点击 添加 按钮。

    本地化后的图片

  3. 完成以下基本设置以创建身份验证虚拟服务器。

    注意: 必填字段由设置名称右侧的 ***** 表示。

    a) 输入新的身份验证虚拟服务器的 名称

    b) 输入 IP 地址类型。IP 地址类型可以配置为不可寻址。

    c) 输入 IP 地址。IP 地址可以为零。

    d) 输入身份验证虚拟服务器的 协议 类型。

    e) 输入虚拟服务器接受连接的 TCP 端口

    f) 输入身份验证虚拟服务器设置的认证 cookie 的

  4. 点击 确定

    本地化后的图片

  5. 点击 无服务器证书

    本地化后的图片

  6. 从下拉菜单中选择所需的服务器证书。

    本地化后的图片

  7. 选择所需的 SSL 证书,然后单击选 按钮。

    注意:身份验证虚拟服务器不需要绑定到它的证书。

    本地化后的图片

  8. 配置 服务器证书绑定

    • 选中 SNI 服务器证书 框以绑定用于 SNI 处理的证书密钥。

    • 点击 绑定 按钮。

    本地化后的图片

创建认证 CERT 配置文件

  1. 转到安全-> AAA-应用程序流量-> 策略-> 认证-> 基本策略-> CERT。

    本地化后的图片

  2. 选择配置文件选项卡,然后选择 添加

    本地化后的图片

  3. 完成以下字段以创建身份验证 CERT 配置文件。必填字段由设置名称右侧的 * 表示。

    • Name -客户端证书身份验证服务器配置文件的名称(操作)。

    • 两个因素 — 在这种情况下,双因素选项是 NOOP。

    • 用户名字段 — 输入从中提取用户名的客户端证书字段。必须设置为 “主题” 或 “发行人”(包括两组双引号)。

    • 组名称字段 -输入从中提取组的客户端证书字段。必须设置为 “主题” 或 “发行人”(包括两组双引号)。

    • 默认身份验证组 -除提取的组外,当身份验证成功时选择的默认组。

  4. 点击 创建

    本地化后的图片

创建身份验证策略

  1. 转到安全-> AAA-应用程序流量-> 策略-> 身份验证-> 高级策略-> 策略

    本地化后的图片

  2. 选择 添加 按钮

    本地化后的图片

  3. 请完成以下信息以创建身份验证策略。必填字段由设置名称右侧的 * 表示。

    a) 名称 — 输入高级身份验证策略的名称。必须以字母、数字或下划线字符 (_) 开头,并且必须仅包含字母、数字和连字符 (-)、句点 (.) (#)、空格 ()、位于 (@)、equals (=)、冒号 (:) 和下划线字符。创建身份验证策略后无法更改。

    以下要求仅适用于 Citrix ADC CLI:如果名称包含一个或多个空格,请使用双引号或单引号将名称括起来(例如,“我的身份验证策略” 或 “我的身份验证策略”)。

    b) 操作类型 -输入身份验证操作的类型。

    c) 作-输入策略匹配时要执行的身份验证操作的名称。

    d) 日志操 作-输入请求与此策略匹配时要使用的消息日志操作的名称。

    e) 表达式 -输入策略用于确定是否尝试使用身份验证服务器对用户进行身份验证的 Citrix ADC 命名规则的名称或默认语法表达式。

    f) 注释 — 输入任何注释以保留有关此政策的信息。

  4. 单击创建

    本地化后的图片

添加 LDAP 身份验证服务器

  1. 转到安全-> AAA-应用程序流量-> 策略-> 身份验证-> 基本策略-> LDAP。

    本地化后的图片

  2. 通过选择 “服务器” 选项卡并选择 “添加” 按钮来 加 LDAP 务器。

    本地化后的图片

添加 LDAP 身份验证策略

  1. 转到安全-> AAA-应用程序流量-> 策略-> 身份验证-> 高级策略-> 策略。

    本地化后的图片

  2. 单击 添加 以添加身份验证策略。

    本地化后的图片

  3. 请完成以下信息以创建身份验证策略。必填字段由设置名称右侧的 * 表示。

    a) 名称 -高级身份验证策略的名称。 必须以字母、数字或下划线字符 (_) 开头,并且必须仅包含字母、数字和连字符 (-)、句点 (.) (#)、空格 ()、位于 (@)、equals (=)、冒号 (:) 和下划线字符。创建身份验证策略后无法更改。

    以下要求仅适用于 Citrix ADC CLI:如果名称包含一个或多个空格,请使用双引号或单引号将名称括起来(例如,“我的身份验证策略” 或 “我的身份验证策略”)。

    b) 操作类型 -身份验证操作的类型。

    c) 作-如果策略匹配,要执行的身份验证操作的名称。

    d) 日志操 作-请求与此策略匹配时要使用的消息日志操作的名称。

    e) 表达式 -策略用于确定是否尝试使用身份验证服务器对用户进行身份验证的 Citrix ADC 命名规则或默认语法表达式的名称。

    f) 评论 -保留有关此政策的信息的任何评论。

  4. 单击创建

    本地化后的图片

添加半径身份验证服务器

  1. 转到安全-> AAA-应用程序流量-> 策略-> 身份验证-> 基本策略-> RADIUS。

    本地化后的图片

  2. 要添加服务器,请选择 “服务 ” 选项卡并选择 “ 添加 ” 按钮。

    本地化后的图片

  3. 输入以下内容以创建身份验证 RADIUS 服务器。必填字段由设置名称右侧的 * 表示。

    a) 输入半径操作的 名称

    b) 输入分配给 RADIUS 服务器的服务器 **名称 或服务器 IP** 地址。

    c) 输入 RADIUS 服务器侦听连接的 端口 号。

    d) 在几秒钟内输入 时值。这是 Citrix ADC 设备等待 RADIUS 服务器响应的值。

    e) 输入 RADIUS 服务器和 Citrix ADC 设备之间共享的私有 密钥 。使 Citrix ADC 设备能够与 RADIUS 服务器通信,需要使用私有密钥。

    f) 确认密钥

  4. 单击创建

    本地化后的图片

添加半径身份验证策略

  1. 转到安全-> AAA-应用程序流量-> 策略-> 身份验证-> 高级策略-> 策略。

    本地化后的图片

  2. 单击 “ 添加 ” 以创建身份验证策略。

    本地化后的图片

  3. 请完成以下信息以创建身份验证策略。必填字段由设置名称右侧的 * 表示。

    a) 名称 -高级身份验证策略的名称。 必须以字母、数字或下划线字符 (_) 开头,并且必须仅包含字母、数字和连字符 (-)、句点 (.) (#)、空格 ()、位于 (@)、equals (=)、冒号 (:) 和下划线字符。创建身份验证策略后无法更改。

    以下要求仅适用于 Citrix ADC CLI:如果名称包含一个或多个空格,请使用双引号或单引号将名称括起来(例如,“我的身份验证策略” 或 “我的身份验证策略”)。

    b) 操作类型 -身份验证操作的类型。

    c) 作-如果策略匹配,要执行的身份验证操作的名称。

    d) 日志操 作-请求与此策略匹配时要使用的消息日志操作的名称。

    e) 表达式 -策略用于确定是否尝试使用身份验证服务器对用户进行身份验证的 Citrix ADC 命名规则或默认语法表达式的名称。

    f) 评论 -保留有关此政策的信息的任何评论。

  4. 单击 OK(确定)

    本地化后的图片

  5. 验证您的身份验证策略已列出。

    本地化后的图片

创建身份验证登录架构

  1. 转到安全-> AAA-应用程序流量-> 登录架构。

    本地化后的图片

  2. 选择配置文件选项卡,然后单击 添加 按钮。

    本地化后的图片

  3. 请完成以下字段以创建身份验证登录架构:

    a) 输入 名称 — 这是新登录架构的名称。

    b)输入 身份验证架构 -这是读取要为登录页面 UI 发送的身份验证架构的文件的名称。此文件应包含根据 Citrix 表单身份验证协议的元素的 xml 定义,以便能够呈现登录表单。如果管理员不希望提示用户输入其他凭据,但继续使用之前获得的凭据,则可以提供 “noschema” 作为参数。请注意,这仅适用于与用户定义因子一起使用的 LoginSchemas,而不适用于虚拟服务器因子

    c)输入 用户表达式 -这是登录期间用户名提取的表达式

    d)输入 密码表达式 -这是登录时密码提取的表达式

    e)输入 用户凭据索引 -这是用户输入的用户名应存储在会话中的索引。

    f)输入 密码凭据索引 -这是用户输入的密码应存储在会话中的索引。

    g)输入 身份验证强度 -这是当前身份验证的权重。

  4. 单击创建

    本地化后的图片

    1. 验证您的登录架构配置文件已列出。

    本地化后的图片

创建策略标签

策略标签指定特定因子的身份验证策略。每个策略标签对应于一个因素。策略标签指定必须向用户显示的登录表单。策略标签必须绑定为身份验证策略或另一个身份验证策略标签的下一个因素。通常,策略标签包括针对特定身份验证机制的身份验证策略。但是,您也可以具有针对不同身份验证机制的身份验证策略的策略标签。

  1. 转到安全-> AAA-应用程序流量-> 策略-> 身份验证-> 高级策略-> 策略标签。

    本地化后的图片

  2. 点击 添加 按钮。

    本地化后的图片

  3. 请完成以下字段以创建身份验证策略标签:

    a) 输入新身份验证策略标签的 名称

    b) 输入与身份验证策略标签关联的 登录架构

    c) 点击 继续

    本地化后的图片

  4. 从下拉菜单中选择一个策略

    本地化后的图片

  5. 选择所需的 身份验证策略 ,然后单击 选择 按钮。

    本地化后的图片

  6. 填写以下字段:

    a) 输入策略绑定的 优先级

    b) 输入 Gto 表达式 — 表达式 指定下一个策略的优先级,如果当前策略规则的计算结果为 TRUE,则该策略将被评估。

    本地化后的图片

  7. 选择所需的身份验证策略,然后单击 选择 按钮。

    本地化后的图片

  8. 点击 绑定 按钮。

    本地化后的图片

  9. 单击完成

    本地化后的图片

  10. 查看身份验证策略标签。

    本地化后的图片