Citrix ADC

Protocolo de federación de servicios web

Web Services Federation (WS-Federation) es un protocolo de identidad que permite a un Security Token Service (STS) en un dominio de confianza proporcionar información de autenticación a un STS en otro dominio de confianza cuando existe una relación de confianza entre los dos dominios.

Ventajas de WS-Federation

WS-Federation soporta clientes activos y pasivos, mientras que el IdP de SAML solo admite clientes pasivos.

  • Los clientes activos son clientes nativos de Microsoft como, por ejemplo, Outlook y Office (Word, PowerPoint, Excel y OneNote).
  • Los clientes pasivos son clientes basados en explorador como Google Chrome, Mozilla Firefox e Internet Explorer.

Requisitos previos para usar Citrix ADC como WS-Federation

Antes de configurar el dispositivo Citrix ADC como proxy ADFS, revise lo siguiente:

  • Active Directory
  • Certificado SSL de dominio.
  • El certificado SSL de Citrix ADC y el certificado de firma de tokens ADFS en el servidor ADFS deben ser los mismos.

ImportanteIdP

SAML ahora es capaz de manejar el protocolo WS-Federation. Por lo tanto, para configurar WS-Federation IdP, debe configurar realmente el IdP SAML. No ve ninguna interfaz de usuario que mencione explícitamente WS-Federation.

Funciones admitidas por Citrix ADC cuando se configuran como proxy ADFS y WS-Federation IdP

En la siguiente tabla se enumeran las funciones admitidas por el dispositivo Citrix ADC cuando se configura como proxy ADFS y WS-Federation IdP.

Funciones Configurar el dispositivo Citrix ADC como proxy ADFS Citrix ADC como proveedor de identidades WS-Federation Citrix ADC como ADFSPIP
Equilibrio de carga
Terminación SSL
Limitación de velocidad
Consolidación (reduce el espacio del servidor DMZ y ahorra IP pública)
Web App Firewall (WAF)
Descarga de autenticación en el dispositivo Citrix ADC No Sí (clientes activos y pasivos)
Inicio de sesión único (SSO) No Sí (clientes activos y pasivos)
Autenticación de varios factores (nFactor) No Sí (clientes activos y pasivos)
Autenticación de varios factores de Azure No Sí (clientes activos y pasivos)
Se puede evitar la granja de servidores ADFS No

Configurar el dispositivo Citrix ADC como proveedor de identidades WS-Federation

Configure Citrix ADC como WS-Federation IdP (SAML IdP) en una zona DMZ. El servidor ADFS se configura junto con el Controller de dominio de AD en el back-end.

IdP de la Federación WS-

  1. La solicitud del cliente a Microsoft Office365 se redirige al dispositivo Citrix ADC.
  2. El usuario introduce las credenciales para la autenticación multifactor.
  3. Citrix ADC valida las credenciales con AD y genera un token de forma nativa en el dispositivo Citrix ADC. Las credenciales se pasan a Office365 para obtener acceso.

Nota

La compatibilidad con WS-Federation IdP se realiza de forma nativa a través del dispositivo Citrix ADC en comparación con el equilibrador de carga de F5 Networks.

Configurar el dispositivo Citrix ADC como proveedor de identidades WS-Federation (IdP SAML) mediante la CLI

Las siguientes secciones se clasifican en función del requisito para completar los pasos de configuración.

Para configurar la autenticación LDAP y agregar directivas

Importante

Para los usuarios de dominio, para iniciar sesión en el dispositivo Citrix ADC mediante sus direcciones de correo electrónico corporativas, debe configurar lo siguiente:

  • Configure el servidor de autenticación LDAP y la directiva en el dispositivo Citrix ADC.
  • Enlácelo a su dirección IP virtual de autenticación, autorización y auditoría (también se admite el uso de una configuración LDAP existente).

  • 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>

Ejemplo

  • 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

Para configurar Citrix ADC como IdP de WS-Federation o IdP de SAML

Crear una acción y una directiva de IdP de WS-Federation (IdP de SAML) para la generación de tokens. Enlácelo al servidor virtual de autenticación, autorización y auditoría en una etapa posterior.

  • 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>

Ejemplo

  • 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

Para configurar el servidor virtual de autenticación, autorización y auditoría para autenticar a los empleados que inician sesión en Office365 mediante credenciales corporativas

add authentication vserver <Domain_AAA_VS> SSL <IP_address>

Ejemplo

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

Para enlazar la directiva y el servidor virtual de autenticación

  • 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

Ejemplo

  • 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

Para configurar la conmutación de contenido

  • 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>

Ejemplo

  • 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

Para enlazar el servidor virtual de conmutación de contenido a la directiva

bind cs vserver CTXTEST_CSVS -policyName CTXTEST_CS_Policy -priority 100