用户身份管理

如果移动设备的安全漏洞越来越多,并且移动设备的普及日益增加,则需要确保使用外部 Internet 符合企业策略,并且只有获得授权的用户才可以访问由以下各项预配的外部资源企业人员。身份管理通过验证人员或设备的身份来实现此操作。它不确定个人可以执行的任务或个人可以看到的文件。

在允许访问 Internet 之前,Secure Web Gateway (SWG) 部署会对用户进行标识。系统会检查用户的所有请求和响应。将记录用户活动, 并将记录导出到 Citrix Application Delivery Management (ADM) 以进行报告。在 Citrix ADM 中,可以查看与用户活动、事务和带宽占用量有关的统计信息。

默认情况下,仅会保存用户的 IP 地址,但您可以将 Citrix SWG 设备配置为记录有关用户的更多详细信息,并使用此身份信息为特定用户创建更加丰富的 Internet 使用策略。

Citrix ADC 设备支持显式代理配置的以下身份验证模式。

  • 轻型目录访问协议 (LDAP)。通过外部 LDAP 身份验证服务器对用户进行身份验证。有关详细信息,请参阅LDAP 身份验证策略
  • RADIUS。通过外部 RADIUS 服务器对用户进行身份验证。有关详细信息,请参阅RADIUS 身份验证策略
  • TACACS +。通过外部终端访问控制器访问控制系统 (TACACS) 身份验证服务器对用户进行身份验证。有关详细信息,请参阅身份验证策略
  • 协商。通过 Kerberos 身份验证服务器对用户进行身份验证。如果 Kerberos 身份验证中存在错误, 设备将使用 NTLM 身份验证。有关详细信息,请参阅协商身份验证策略

对于透明代理, 当前仅支持基于 IP 的 LDAP 身份验证。当收到客户端请求时, 代理将通过检查 active directory 中的客户端 IP 地址的条目对用户进行身份验证, 并基于用户 IP 地址创建一个会话。但是, 如果您在 LDAP 操作中配置了 ssoNameAttribute, 则将使用用户名 (而非 IP 地址) 来创建会话。在透明代理设置中, 不支持使用经典策略进行身份验证。

注意

对于显式代理, 必须将 LDAP 登录名称设置为sAMAccountName。对于透明代理,必须将 LDAP 登录名称设置为networkAddress,将 attribute1 设置为 sAMAccountName

显式代理的示例:

add authentication ldapAction swg-auth-action-explicit -serverIP 10.105.157.116 -ldapBase "CN=Users,DC=CTXNSSFB,DC=COM" -ldapBindDn "CN=Administrator,CN=Users,DC=CTXNSSFB,DC=COM" -ldapBindDnPassword freebsd123$ -ldapLoginName sAMAccountName

透明代理的示例

add authentication ldapAction swg-auth-action-explicit -serverIP 10.105.157.116 -ldapBase "CN=Users,DC=CTXNSSFB,DC=COM" -ldapBindDn "CN=Administrator,CN=Users,DC=CTXNSSFB,DC=COM" -ldapBindDnPassword freebsd123$ -ldapLoginName networkAddress -authentication disable -Attribute1 sAMAccountName

使用 Citrix SWG CLI 设置用户身份验证

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

add authentication vserver <vserver name> SSL

bind ssl vserver <vserver name> -certkeyName <certkey name>

add authentication ldapAction <action name> -serverIP <ip_addr> -ldapBase <string> -ldapBindDn <string> -ldapBindDnPassword -ldapLoginName <string>

add authentication Policy <policy name> -rule <expression> -action <string>

bind authentication vserver <vserver name> -policy <string> -priority <positive_integer>

set cs vserver <name> -authn401 ON -authnVsName <string>

参数:

Vserver 名称:

要将策略绑定到的身份验证虚拟服务器的名称。

最大长度: 127

serviceType:

身份验证虚拟服务器的协议类型。始终 SSL。

可能的值: SSL

默认值: SSL

操作名称:

新 LDAP 操作的名称。必须以字母、数字或下划线字符 (\ _) 开头, 并且必须仅包含字母、数字和连字符 (-)、句点 (。) 磅 (\ #)、空格 ()、(@)、等号 (=)、冒号 (:) 和下划线字符。添加 LDAP 操作后无法更改。以下要求仅适用于 CLI:

如果名称中包含一个或多个空格, 请将名称用双引号引起, 或者用单引号括起来 (例如, “my authentication action” or “my authentication action”)。

最大长度: 127

serverIP:

分配给 LDAP 服务器的 IP 地址。

ldapBase:

从中启动 LDAP 搜索的基础 (节点)。如果 LDAP 服务器在本地运行, 则默认值为 dc = netscaler, dc = com。最大长度: 127

ldapBindDn:

用于绑定到 LDAP 服务器的完整识别名 (DN)。

默认值: cn = Manager, dc = netscaler, dc = com

最大长度: 127

ldapBindDnPassword:

用于绑定到 LDAP 服务器的密码。

最大长度: 127

ldapLoginName:

LDAP 登录名称属性。Citrix ADC 设备使用 LDAP 登录名查询外部 LDAP 服务器或 Active 目录。最大长度: 127

策略名称:

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

如果名称中包含一个或多个空格, 请将名称用双引号引起, 或者用单引号括起来 (例如, "my authentication policy" or "my authentication policy")。

最大长度: 127

规则:

规则的名称 (或默认语法表达式), 策略将使用该名称来确定是否尝试使用身份验证服务器对用户进行身份验证。

最大长度: 1499

操作:

策略匹配时要执行的身份验证操作的名称。

最大长度: 127

优先级:

正整数, 用于指定策略的优先级。较低的数字指定更高的优先级。策略将按照其优先级顺序进行评估, 并应用与该请求匹配的第一个策略。在绑定到身份验证虚拟服务器的策略列表中必须唯一。

最小值: 0

最大值: 4294967295

示例:

add authentication vserver swg-auth-vs SSL

Done

bind ssl vserver explicit-auth-vs -certkeyName ns-swg-ca-certkey

Done

add authentication ldapAction swg-auth-action-explicit -serverIP 192.0.2.116 -ldapBase "CN=Users,DC=CTXNSSFB,DC=COM" -ldapBindDn "CN=Administrator,CN=Users,DC=CTXNSSFB,DC=COM" -ldapBindDnPassword zzzzz -ldapLoginName sAMAccountName

Done

add authenticationpolicy swg-auth-policy -rule true -action swg-auth-action-explicit                                                                                   Done

bind authentication vserver swg-auth-vs -policy swg-auth-policy -priority 1

Done

set cs vserver testswg -authn401 ON -authnVsName swg-auth-vs

Done

使用 Citrix SWG CLI 启用用户名日志记录

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

set appflow param -AAAUserName ENABLED

参数:

AAAUserName

启用 AppFlow AAA 用户名日志记录。

可能的值:已启用、已禁用

默认值:已禁用

示例:

set appflow param -AAAUserName ENABLED