Citrix ADC

身份验证策略

注意

Citrix ADC 设备仅编码 UTF-8 字符以进行身份验证,并且与使用 ISO-8859-1 字符的服务器不兼容。

Citrix ADC 可以使用本地用户帐户或使用外部身份验证服务器对用户进行身份验证。设备支持以下身份验证类型:

  • 本地

    使用密码对 Citrix ADC 设备进行身份验证,而不引用外部身份验证服务器。用户数据存储在 Citrix ADC 设备上本地。

  • RADIUS

    对外部 RADIUS 服务器进行身份验证。

  • LDAP

    对外部 LDAP 身份验证服务器进行身份验证。

  • TACACS

    对外部端点访问控制器访问控制系统 (TACACS) 身份验证服务器进行身份验证。

    用户对 TACACS 服务器进行身份验证后,Citrix ADC 将连接到同一台 TACACS 服务器进行所有后续授权。当主 TACACS 服务器不可用时,此功能可防止在 ADC 等待第一台 TACACS 服务器超时时出现任何延迟。它发生在将授权请求重新发送到第二个 TACACS 服务器之前。

    注意

    通过 TACAS 服务器进行身份验证时,身份验证、授权和审核流量管理日志只能成功执行 TACAS 命令。它可以防止日志显示未授权执行命令的用户输入的 TACACS 命令。

从 NetScaler 12.0 Build 57.x 开始,端点访问控制器访问控制系统 (TACACS) 在发送 TACACS 请求时不会阻止身份验证、授权和审核守护进程。允许 LDAP 和 RADIUS 身份验证继续处理请求。TACACS 身份验证请求在 TACACS 服务器确认 TACACS 请求后恢复。

重要

  • Citrix 建议您在运行“clear ns config”命令时不要修改任何与 TACACS 相关的配置。

  • 当高级策略的“clear ns config”命令中的“RBAconfig”参数设置为 NO 时,将清除并重新应用与高级策略相关的 TACACS 配置。

  • CERT

    使用客户端证书对 Citrix ADC 设备进行身份验证,而不引用外部身份验证服务器。

  • NEGOTIATE

    对 Kerberos 身份验证服务器进行身份验证。如果 Kerberos 身份验证中出现错误,Citrix ADC 将使用 NTLM 身份验证。

  • SAML

    向支持安全断言标记语言 (SAML) 的服务器进行身份验证。

  • SAML IDP

    将 Citrix ADC 配置为用作安全断言标记语言 (SAML) 身份提供程序 (IdP)。

  • WEB

    对 Web 服务器进行身份验证,提供 Web 服务器在 HTTP 请求中所需的凭据,并分析 Web 服务器响应以确定用户身份验证是否成功。

身份验证策略由表达式和操作组成。身份验证策略使用 Citrix ADC 表达式。

创建身份验证操作和身份验证策略后,将其绑定到身份验证虚拟服务器并为其分配优先级。绑定它时,还要将其指定为主策略或辅助策略。首先评估主策略,然后再评估辅助策略。在使用这两种策略类型的配置中,主策略通常是更具体的策略,而辅助策略通常是更常规的策略。它旨在处理不符合更具体标准的任何用户帐户的身份验证。

TACACS 身份验证的名称值属性支持

现在,您可以使用唯一名称和值配置 TACACS 身份验证属性。名称在 TACACS 操作参数中进行配置,并通过查询名称获取值。通过指定 name 属性值,管理员可以轻松搜索与属性名称关联的属性值。此外,管理员不再需要单独记住属性的值。

重要

  • 在 tacacsAction 命令中,最多可配置 64 个属性,用逗号分隔,总大小小于 2048 字节。

使用 CLI 配置名称-值属性

在命令提示窗口中,键入:

add authentication tacacsAction <name> [-Attributes <string>]

示例:

add authentication tacacsAction tacacsAct1 -attributes“mail,sn,userprincipalName”

使用命令行界面添加身份验证操作

如果不使用本地身份验证,则需要添加显式身份验证操作。在命令提示符下,键入以下命令:

add authentication tacacsAction <name> -serverip <IP> [-serverPort <port>][-authTimeout <positive_integer>][ ... ]

示例

> 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"
Done

使用命令行界面配置身份验证操作

要配置现有身份验证操作,请在命令提示符处键入以下命令:

set authentication tacacsAction <name> -serverip <IP> [-serverPort <port>][-authTimeout <positive_integer>][ ... ]

示例

> 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"
Done

使用命令行界面删除身份验证操作

若要删除现有 RADIUS 操作,请在命令提示符下键入以下命令:

rm authentication radiusAction <name>

示例

> rm authentication tacacsaction Authn-Act-1
Done

使用配置实用程序配置身份验证服务器

注意

在配置实用程序中,使用术语服务器而不是操作,但指的是相同的任务。

  1. 导航到安全 > AAA-应用程序流量 > 策略 > 身份验证
  2. 在详细信息窗格中的服务器选项卡上,执行以下操作之一:

    • 要创建新的身份验证服务器,请单击添加
    • 若要修改现有身份验证服务器,请选择该服务器,然后单击打开
  3. 创建身份验证服务器配置身份验证服务器对话框中,键入或选择参数的值。

    • 名称*— radiusActionName(无法更改之前配置的操作)
    • 身份验证类型*— authtype(设置为 RADIUS,无法更改)
    • IP 地址*— serverip </IP>
    • IPV6* - 如果服务器 IP 是 IPv6 IP,则选中该复选框。(没有等效的命令行。)
    • 端口*— serverPort
    • 超时(秒)*— authTimeout
  4. 单击创建确定,然后单击关闭。您创建的策略将显示在身份验证策略服务器页面中。

使用命令行界面创建和绑定身份验证策略

在命令提示符处,按所示顺序键入以下命令,以创建和绑定身份验证策略并验证配置:

  • add authentication negotiatePolicy <name> <rule> <reqAction>
  • show authentication localPolicy <name>
  • bind authentication vserver <name> -policy <policyname> [-priority <priority>][-secondary]]
  • show authentication vserver <name>

示例

> 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

使用命令行界面修改现有身份验证策略

在命令提示符下,键入以下命令以修改现有身份验证策略:

set authentication localPolicy <name> <rule> [-reqaction <action>]

示例

> set authentication localPolicy Authn-Pol-1 'ns_true'
Done

使用命令行界面删除身份验证策略

在命令提示符下,键入以下命令以删除身份验证策略:

rm authentication localPolicy <name>

示例

> rm authentication localPolicy Authn-Pol-1
Done

使用配置实用程序配置和绑定身份验证策略

  1. 导航到安全”>“AAA-应用程序流量”>“策略”>“身份验证”,然后选择要创建的策略类型。
  2. 在详细信息窗格的策略选项卡上,执行以下操作之一:

    • 要创建新策略,请单击添加
    • 要修改现有策略,请选择操作,然后单击编辑
  3. 在“创建身份验证策略”或“配置身份验证策略”对话框中,键入或选择参数的值。

    • 名称 — 策略名称(无法更改先前配置的操作)
    • 身份验证类型 — 认证类型
    • 服务器 — authVsName
    • 表达式 — 规则(首先在“表达式”窗口下方最左侧的下拉列表中选择表达式的类型,然后直接在表达式文本区域中键入表达式,或者单击“添加”打开“添加表达式”对话框并使用 drop-下列表来构造您的表达式。)
  4. 单击创建确定。您创建的策略将显示在“策略”页面中。
  5. 单击服务器选项卡,然后在详细信息窗格中执行以下操作之一:

    • 若要使用现有服务器,请选择该服务器,然后单击。
    • 若要创建新服务器,请单击“添加”,然后按照说明操作。
  6. 如果要将此策略指定为辅助身份验证策略,请在“身份验证”选项卡上单击“辅助”。如果要将此策略指定为主身份验证策略,请跳过此步骤。
  7. 单击插入策略
  8. 从下拉列表中选择要绑定到身份验证虚拟服务器的策略。
  9. 在左侧的 优先级 列中,修改默认优先级,以确保按正确的顺序评估策略。
  10. 单击确定。状态栏中将显示一条消息,指出该策略已成功配置。

支持检索用户当前登录尝试

Citrix ADC 设备提供了一个选项,用于通过新表达式“aaa.user.login_time”检索用户当前登录尝试的值。表达式接受一个参数(用户名)或不接受参数。如果没有参数,则表达式将从 aaa_session 或 aa_info 中获取用户名称。

您可以将“aaa.user.login_time”表达式与身份验证策略结合使用,以便进一步处理。

使用 CLI 配置每个用户的登录尝试次数

在命令提示窗口中,键入:

add expression er aaa.user.login_attempts