ADC
感谢您提供反馈

这篇文章已经过机器翻译.放弃

Web Services 联合身份验证协议

Web Services 联合身份验证 (WS-Federation) 是一种身份协议,当两个域之间存在信任关系时,它允许一个信任域中的安全令牌服务 (STS) 向另一个信任域中的 STS 提供身份验证信息。

WS-Federation 的优势

WS-Federation 支持主动和被动客户端,而 SAML IdP 仅支持被动客户端。

  • 主动客户端是 Microsoft 本机客户端,例如 Outlook 和 Office 客户端(Word、PowerPoint、Excel 和 OneNote)。
  • 被动客户端是基于浏览器的客户端,例如 Google Chrome、Mozilla Firefox 和 Internet Explorer。

将 Citrix ADC 用作 WS-Federation 的必备条件

在将 Citrix ADC 设备配置为 ADFS 代理之前,请查看以下内容:

  • Active Directory。
  • 域 SSL 证书。
  • ADFS 服务器上的 Citrix ADC SSL 证书和 ADFS 令牌签名证书必须相同。

重要

SAML IdP 现在能够处理 WS-Federation 协议。因此,要配置 WS-Federation IdP,必须实际配置 SAML IdP。您看不到任何明确提及 WS-Federation 的用户界面。

配置为 ADFS 代理和 WS-Federation IdP 时 Citrix ADC 支持的功能

下表列出了配置为 ADFS 代理和 WS-Federation IdP 时 Citrix ADC 设备支持的功能。

功能 将 Citrix ADC 设备配置为 ADFS 代理 Citrix ADC 用作 WS-Federation IdP Citrix ADC 用作 ADFSPIP
负载平衡
SSL 终止
速率限制
合并(减少 DMZ 服务器占用空间并节省公共 IP)
Web Application Firewall (WAF)
身份验证卸载到 Citrix ADC 设备 是(主动和被动客户端)
单点登录 (SSO) 是(主动和被动客户端)
多重 (nFactor) 身份验证 是(主动和被动客户端)
Azure 多重身份验证 是(主动和被动客户端)
可以避开 ADFS 服务器群

将 Citrix ADC 设备配置为 WS-Federation IdP

在 DMZ 区域中将 Citrix ADC 配置为 WS-Federation IdP (SAML IdP)。ADFS 服务器与后端中的 AD 域控制器一起配置。

WS-Federation IdP

  1. 向 Microsoft Office365 发出的客户端请求将被重定向到 Citrix ADC 设备。
  2. 用户输入用于多重身份验证的凭据。
  3. Citrix ADC 使用 AD 验证凭据,并在 Citrix ADC 设备上本地生成令牌。凭据将传递给 Office365 进行访问。

注意

与 F5 Networks 负载平衡器相比,WS-Federation IdP 支持是通过 Citrix ADC 设备本机完成的。

使用 CLI 将 Citrix ADC 设备配置为 WS-Federation IdP (SAML IdP)

下面各部分内容是根据完成配置步骤的要求进行分类的。

配置 LDAP 身份验证并添加策略

重要提示

对于域用户,要使用其公司电子邮件地址登录 Citrix ADC 设备,必须配置以下内容:

  • 在 Citrix ADC 设备上配置 LDAP 身份验证服务器和策略。
  • 将其绑定到您的身份验证、授权和审核虚拟 IP 地址(还支持使用现有 LDAP 配置)。
add authentication ldapAction <Domain_LDAP_Action> -serverIP <Active Directory IP> -serverPort 636 -ldapBase "cn=Users,dc=domain,dc=com" -ldapBindDn "cn=administrator,cn=Users,dc=domain,dc=com" -ldapBindDnPassword <administrator password> -encrypted -encryptmethod ENCMTHD_3 -ldapLoginName sAMAccountName -groupAttrName memberOf -subAttributeName cn -secType SSL -ssoNameAttribute UserPrincipalName -followReferrals ON -Attribute1 mail -Attribute2 objectGUID add authentication Policy <Domain_LDAP_Policy> -rule true -action <Domain_LDAP_Action>

示例

add authentication ldapAction CTXTEST_LDAP_Action -serverIP 3.3.3.3 -serverPort 636 -ldapBase "cn=Users,dc=ctxtest,dc=com" -ldapBindDn "cn=administrator,cn=Users,dc=ctxtest,dc=com" -ldapBindDnPassword xxxxxxxxxxx -encrypted -encryptmethod ENCMTHD_3 -ldapLoginName sAMAccountName -groupAttrName memberOf -subAttributeName cn -secType SSL -ssoNameAttribute UserPrincipalName -followReferrals ON -Attribute1 mail -Attribute2 objectGUID add authentication Policy CTXTEST_LDAP_Policy -rule true -action CTXTEST_LDAP_Action

将 Citrix ADC 配置为 WS-Federation IdP 或 SAML IdP

创建用于令牌生成的 WS-Federation IdP (SAML IdP) 操作和策略。稍后将其绑定到身份验证、授权和审核虚拟服务器。

add authentication samlIdPProfile <Domain_SAMLIDP_Profile> -samlIdPCertName <SSL_CERT> -assertionConsumerServiceURL "https://login.microsoftonline.com/login.srf" -samlIssuerName <Issuer Name for Office 365 in ADFS Server> -rejectUnsignedRequests OFF -audience urn:federation:MicrosoftOnline -NameIDFormat persistent -NameIDExpr "HTTP.REQ.USER.ATTRIBUTE(2).B64ENCODE" -Attribute1 IDPEmail -Attribute1Expr "HTTP.REQ.USER.ATTRIBUTE(1)" add authentication samlIdPPolicy <Domain_SAMLIDP_Policy> -rule "HTTP.REQ.HEADER("referer").CONTAINS("microsoft") || true" -action <Domain_SAMLIDP_Profile>

示例

add authentication samlIdPProfile CTXTEST_SAMLIDP_Profile -samlIdPCertName ctxtest_newcert_2019 -assertionConsumerServiceURL "https://login.microsoftonline.com/login.srf" -samlIssuerName "http://ctxtest.com/adfs/services/trust/" -rejectUnsignedRequests OFF -audience urn:federation:MicrosoftOnline -NameIDFormat persistent -NameIDExpr "HTTP.REQ.USER.ATTRIBUTE(2).B64ENCODE" -Attribute1 IDPEmail -Attribute1Expr "HTTP.REQ.USER.ATTRIBUTE(1)" add authentication samlIdPPolicy CTXTEST_SAMLIDP_Policy -rule "HTTP.REQ.HEADER("referer").CONTAINS("microsoft") || true" -action CTXTEST_SAMLIDP_Profile

配置身份验证、授权和审核虚拟服务器以对使用公司凭据登录 Office365 的员工进行身份验证

add authentication vserver <Domain_AAA_VS> SSL <IP_address>`

示例

add authentication vserver CTXTEST_AAA_VS SSL 192.168.1.0 bind authentication vserver CTXTEST_AAA_VS -portaltheme RfWebUI

绑定身份验证虚拟服务器和策略

bind authentication vserver <Domain_AAA_VS> -policy <Domain_SAMLIDP_Policy> -priority 100 -gotoPriorityExpression NEXT bind authentication vserver <Domain_AAA_VS> -policy <Domain_LDAP_Policy> -priority 100 -gotoPriorityExpression NEXT

示例

bind authentication vserver CTXTEST_AAA_VS -policy CTXTEST_SAMLIDP_Policy -priority 100 -gotoPriorityExpression NEXT bind authentication vserver CTXTEST_AAA_VS -policy CTXTEST_LDAP_Policy -priority 100 -gotoPriorityExpression NEXT bind ssl vserver CTXTEST_AAA_VS -certkeyName ctxtest_newcert_2019

配置内容交换

add cs action <Domain_CS_Action> -targetVserver <Domain_AAA_VS> add cs policy <Domain_CS_Policy> -rule "is_vpn_url || http.req.url.contains("/adfs/ls") || http.req.url.contains("/adfs/services/trust") || -action <Domain_CS_Action>

示例

add cs action CTXTEST_CS_Action -targetVserver CTXTEST_AAA_VS add cs policy CTXTEST_CS_Policy -rule "is_vpn_url || http.req.url.contains("/adfs/ls") || http.req.url.contains("/adfs/services/trust") || -action CTXTEST_CS_Action

将内容交换虚拟服务器绑定到策略

bind cs vserver CTXTEST_CSVS -policyName CTXTEST_CS_Policy -priority 100
本内容的正式版本为英文版。部分 Cloud Software Group 文档内容采用了机器翻译,仅供您参考。Cloud Software Group 无法控制机器翻译的内容,这些内容可能包含错误、不准确或不合适的语言。对于从英文原文翻译成任何其他语言的内容的准确性、可靠性、适用性或正确性,或者您的 Cloud Software Group 产品或服务沿用了任何机器翻译的内容,我们均不作任何明示或暗示的保证,并且适用的最终用户许可协议或服务条款或者与 Cloud Software Group 签订的任何其他协议(产品或服务与已进行机器翻译的任何文档保持一致)下的任何保证均不适用。对于因使用机器翻译的内容而引起的任何损害或问题,Cloud Software Group 不承担任何责任。