用于基本、摘要和 NTLM 身份验证的 SSO
Citrix ADC 和 Citrix Gateway 中的单点登录 (SSO) 配置可以在全局级别以及按流量级别启用。默认情况下,SSO 配置为关,管理员可以按流量或全局启用 SSO。从安全角度来看,Citrix 建议管理员全局关 SSO 并按流量启用。此增强功能是通过在全球范围内使用某些类型的 SSO 方法来提高 SSO 配置的安全性。
注意:
从 Citrix ADC 功能版本 13.0 Build 64.35 及更高版本中,以下 SSO 类型将在全球范围内受到侮辱。
- 基本认证
- 摘要访问身份验证
- NTLM 没有谈判 NTLM2 密钥或协商标志
未受影响的 SSO 类型
以下 SSO 类型不受此增强的影响。
- Kerberos 身份验证
- SAML 身份验证
- 基于表单的身份验证
- OAuth 持有者身份验证
- NTLM 与谈判 NTLM2 密钥或谈判标志
受影响的 SSO 配置
以下是受影响的(失调)SSO 配置。
全局配置
set tmsessionparam -SSO ON
set vpnparameter -SSO ON
add tmsessionaction tm_act -SSO ON
add vpn sessionaction tm_act -SSO ON
Per traffic configurations
add vpn trafficaction tf_act http -SSO ON
add tm trafficaction tf_act -SSO ON
<!--NeedCopy-->
每个流量配置
add vpn trafficaction tf_act http -SSO ON
add tm trafficaction tf_act -SSO ON
<!--NeedCopy-->
您可以作为一个整体启用/禁用 SSO,而且不能修改单个 SSO 类型。
应用的安全措施
作为安全措施的一部分,安全敏感的 SSO 类型在全局配置中会被污辱,但只能通过流量操作配置允许。 因此,如果后端服务器期望没有协商 NTLM2 密钥或协商签名的基本、摘要或 NTLM,管理员只能通过以下配置允许 SSO。
流量操作
add vpn trafficaction tf_act http -SSO ON
add tm trafficaction tf_act -SSO ON
<!--NeedCopy-->
流量策略
add tm trafficpolicy <name> <rule> tf_act
add vpn trafficpolicy <name> <rule> tf-act
<!--NeedCopy-->
管理员必须为流量策略配置适当的规则,以确保仅为受信任的后端服务器启用 SSO。
AAA-TM
基于全局配置的场景:
set tmsessionparam -SSO ON
<!--NeedCopy-->
解决办法:
add tm trafficaction tf_act -SSO ON
add tm trafficpolicy tf_pol true tf_act
<!--NeedCopy-->
将以下流量策略绑定到需要 SSO 的所有 LB 虚拟服务器:
bind lb vserver <LB VS Name> -policy tf_pol -priority 65345
<!--NeedCopy-->
基于会话策略配置的场景:
add tmsessionaction tm_act -SSO ON
add tmsession policy <name> <rule> tm_act
add tm trafficaction tf_act -SSO ON
add tm trafficpolicy tf_pol <same rule as session Policy> tf_act
<!--NeedCopy-->
需要注意的要点:
-
必须将之前会话策略的 Citrix ADC AAA 用户/组替换为流量策略。
-
将以下策略绑定到上一会话策略的负载平衡虚拟服务器,
bind lb vserver [LB VS Name] -policy tf_pol -priority 65345
<!--NeedCopy-->
- 如果配置了具有其他优先级的流量策略,则前面的命令不起作用。
以下部分介绍基于与流量关联的多个流量策略冲突的场景:
对于特定的 TM 流量,只应用一个 TM 流量策略。由于 SSO 功能更改的全局设置,在已应用具有高优先级的 TM 流量策略(不需要 SSO 配置)的情况下,应用额外低优先级的 TM 流量策略可能不适用。以下部分介绍了确保处理此类案例的方法。
考虑以下三个优先级较高的流量策略适用于负载平衡 (LB) 虚拟服务器:
add tm trafficaction tf_act1 <Addition config>
add tm trafficaction tf_act2 <Addition config>
add tm trafficaction tf_act3 <Addition config>
add tm trafficpolicy tf_pol1 <rule1> tf_act1
add tm trafficpolicy tf_pol2 <rule2> tf_act2
add tm trafficpolicy tf_pol3 <rule3> tf_act3
bind lb vserver <LB VS Name> -policy tf_pol1 -priority 100
bind lb vserver <LB VS Name> -policy tf_pol2 -priority 200
bind lb vserver <LB VS Name> -policy tf_pol3 -priority 300
<!--NeedCopy-->
容易出错的方法-要解析全局 SSO 配置,请添加以下配置:
add tm trafficaction tf_act_default -SSO ON
add tm trafficpolicy tf_pol_default true tf_act_default
bind lb vserver <LB VS Name> -policy tf_pol_default -priority 65345
<!--NeedCopy-->
注意: 前面的修改可能会中断流量的 SSO,<tf_pol1/tf_pol2/tf_pol3> 就这些流量而言,流量策略 <tf_pol_default> 未应用。
正确的方法-为了缓解这种情况,必须为每个相应的流量操作单独应用 SSO 属性:
例如,在上述情况中,要使通信点击 tf_pol1/tf_pol3 时发生 SSO,必须与以下配置一起应用 <tf_pol_default>。
add tm trafficaction tf_act1 <Addition config> -SSO ON
add tm trafficaction tf_act3 <Addition config> -SSO ON
<!--NeedCopy-->
Citrix Gateway 案例
基于全局配置的场景:
set vpnparameter -SSO ON
<!--NeedCopy-->
解决办法:
add vpn trafficaction vpn_tf_act http -SSO ON
add vpn trafficpolicy vpn_tf_pol true vpn_tf_act
bind the following traffic policy to all VPN virtual server where SSO is expected:
bind vpn vserver vpn_vs -policy vpn_tf_pol -priority 65345
<!--NeedCopy-->
基于会话策略配置的场景:
add vpn sessionaction vpn_sess_act -SSO ON
add vpnsession policy <name> <rule> vpn_sess_act
<!--NeedCopy-->
注意事项:
-
必须将之前会话策略的 Citrix ADC AAA 用户/组替换为流量策略。
-
将上一会话策略的以下策略绑定到 LB 虚拟服务器
bind lb virtual server [LB VS Name] -policy tf_pol -priority 65345
。 -
如果配置了具有其他优先级的流量策略,则前面的命令不起作用。以下部分介绍基于与流量关联的多个流量策略冲突的场景。
基于与流量关联的多个流量策略冲突的功能场景:
对于特定 Citrix Gateway 流量,只应用一个 VPN 流量策略。由于 SSO 功能的全局设置更改,如果存在其他具有高优先级且没有所需 SSO 配置的高优先级的 VPN 流量策略,则应用额外的低优先级 VPN 流量策略可能不适用。
以下部分介绍了确保处理此类案例的方法:
考虑一下,对 VPN 虚拟服务器应用了三个具有更高优先级的流量策略:
add vpn trafficaction tf_act1 <Addition config>
add vpn trafficaction tf_act2 <Addition config>
add vpn trafficaction tf_act3 <Addition config>
add vpn trafficpolicy tf_pol1 <rule1> tf_act1
add vpn trafficpolicy tf_pol2 <rule2> tf_act2
add vpn trafficpolicy tf_pol3 <rule3> tf_act3
bind vpn vserver <VPN VS Name> -policy tf_pol1 -priority 100
bind vpn vserver <VPN VS Name> -policy tf_pol2 -priority 200
bind vpn vserver <VPN VS Name> -policy tf_pol3 -priority 300
<!--NeedCopy-->
容易出错的方法: 要解析全局 SSO 配置,请添加以下配置:
add vpn trafficaction tf_act_default -SSO ON
add vpn trafficpolicy tf_pol_default true tf_act_default
bind vpn vserver <VPN VS Name> -policy tf_pol_default -priority 65345
<!--NeedCopy-->
注意: 前面的修改可能会中断流量的 SSO,<tf_pol1/tf_pol2/tf_pol3> 因为这些流量,流量策略 <tf_pol_default> 未应用。
正确的方法: 为了缓解这种情况,必须为每个相应的流量操作单独应用 SSO 属性。
例如,在前面的情况中,为了使流量击中 tf_pol1/tf_pol3 时发生 SSO,必须与以下配置一起应用 <tf_pol_default>。
add vpn trafficaction tf_act1 [Additional config] -SSO ON
add vpn trafficaction tf_act3 [Additional config] -SSO ON
<!--NeedCopy-->