Citrix ADC

Configurar SAML seguido de la autenticación LDAP o certificado basada en la extracción de atributos SAML en la autenticación nFactor

En la siguiente sección se describe el caso de uso de LDAP o autenticación de certificados basada en la extracción de atributos SAML en la autenticación nFactor.

Autenticación SAML en el primer factor con extracción de atributos de aserción SAML

Supongamos un caso de uso donde los administradores configuran la autenticación SAML en un primer factor con la extracción de atributos de la aserción SAML. En función de los atributos extraídos durante el primer factor, puede configurar los siguientes factores, que pueden tener autenticación LDAP o autenticación de certificados.

  1. Una vez que accede al servidor virtual de administración de tráfico, se le redirige al IdP SAML externo para iniciar sesión (en este caso, Shibboleth, como se muestra en la ilustración). Introduzca sus credenciales de inicio de sesión. Si el inicio de sesión se realiza correctamente, el IdP de SAML envía la respuesta SAML que contiene los atributos.

    Autenticación SAML Shibboleth

  2. Cuando se recibe la respuesta SAML en el dispositivo Citrix ADC, analiza y extrae los atributos tal y como se configuran en la acción SAML. Se verifica la aserción SAML y se mueve al segundo factor.

  3. El segundo factor se configura como passthrough (no hay página de inicio de sesión para este factor) con 2 directivas NO_AUTHN. En función de la evaluación de directivas, ha configurado un salto al factor de autenticación LDAP o al factor de autenticación de certificados.

    Nota Ladirectiva

    NO_AUTHN significa que, en caso de que la regla configurada para esta directiva se evalúe como verdadera, el dispositivo Citrix ADC no realiza ninguna autenticación. Señala el siguiente factor que está configurado.

  4. Por ejemplo, supongamos que la acción SAML está configurada para extraer el UPN como atributo1 y que el valor de UPN es john@citrix.com. Ahora, una de las reglas de directiva NO_AUTHN está configurada para verificar la presencia de la cadena “citrix.com”. Si la directiva se evalúa como true, puede configurar salto al siguiente factor que tiene autenticación LDAP. Del mismo modo, la directiva se puede configurar para tener el siguiente factor como certificado.

  5. Cuando se selecciona el factor LDAP después de la autenticación SAML, se muestra la página de inicio de sesión.

    Inicio de sesión de autenticación LDAP

    Nota

    El valor del nombre de usuario se rellena previamente con la expresión ${http.req.user.name}, que extrae el nombre de usuario del primer factor. También se pueden personalizar otros campos, como etiquetas para el nombre de usuario y la contraseña.

  6. La imagen siguiente muestra un ejemplo utilizado para esta representación del formulario de inicio de sesión.

    Formulario de inicio de sesión

    Nota

    Según el requisito, los administradores pueden modificar los valores del formulario de inicio de sesión.

  7. Si el factor de certificado se selecciona después de SAML, se muestra la página de selección de certificado.

    Seleccionar el certificado

Nota

La configuración también se puede crear a través del visualizador nFactor disponible en Citrix ADC versión 13.0 y posterior.

NFactor visualizador SAML y LDAP

Realice lo siguiente mediante la CLI

  1. Configure el servidor virtual de administración de tráfico y el servidor de autenticación.

    • add lb vserver lb_ssl SSL 10.217.28.166 443 -persistenceType NONE -cltTimeout 180 -AuthenticationHost auth.nsi-test.com -Authentication ON -authnVsName avn
    • add authentication vserver avn SSL 10.217.28.167 443 -AuthenticationDomain nsi-test.com
  2. Configure una directiva SAML con extracción de atributos vinculada al servidor virtual de autenticación.

    • add authentication samlAction shibboleth -samlIdPCertName shib-idp-242 -samlSigningCertName nssp-cert -samlRedirectUrl "https://idp.wi.int/idp/profile/SAML2/POST/SSO" -samlUserField samaccountname -samlRejectUnsignedAssertion OFF -samlIssuerName nssp.nsi-test.com -Attribute1 UserPrincipalName –Attribute2 department
    • add authentication Policy saml -rule true -action shibboleth
    • bind authentication vserver avn -policy saml -priority 1 -nextFactor label1 -gotoPriorityExpression NEXT
  3. Configure un segundo factor.

    • add authentication loginSchema login2 -authenticationSchema noschema
    • add authentication Policy no_ldap -rule "http.req.user.attribute(1).contains(\"citrix.com\")" -action NO_AUTHN
    • add authentication Policy no_cert -rule "http.req.user.attribute(2).contains(\"Sales\")" -action NO_AUTHN
    • add authentication policylabel label1 -loginSchema login2
    • bind authentication policylabel label1 -policyName no_ldap -priority 1 -gotoPriorityExpression NEXT -nextFactor ldapfactor
    • bind authentication policylabel label1 -policyName no_cert -priority 2 -gotoPriorityExpression NEXT -nextFactor certfactor
  4. Configure un factor de autenticación LDAP.

    • add authentication loginSchema login3 -authenticationSchema login1.xml
    • add authentication policylabel ldapfactor -loginSchema login3
    • bind authentication policylabel ldapfactor -policyName <LDAP Auth Policy> -priority 10 -gotoPriorityExpression END
  5. Configure una autenticación de factor de certificado.

    • add authentication loginSchema login4 -authenticationSchema noschema
    • add authentication policylabel certfactor -loginSchema login4
    • bind authentication policylabel certfactor -policyName <Certificate Auth Policy> -priority 10 -gotoPriorityExpression END
  6. Enlazar el certificado raíz al servidor virtual y habilitar la Autenticación de cliente.

    • bind ssl vserver avn -certkeyName <root cert name>-CA -ocspCheck Optional
    • set ssl vserver avn -clientAuth ENABLED -clientCert Optional

Configuración mediante el visualizador nFactor

  1. Vaya a Seguridad > Tráfico de aplicaciones AAA > Visualizador nFactor > Flujos de nFactor y haga clic en Agregar.

  2. Haga clic en + para agregar el flujo de nFactor.

    Agregar un flujo

  3. Agregue un factor. El nombre que introduzca es el nombre del flujo de nFactor.

    Agregar un nombre para el flujo

  4. No se necesita ningún esquema para la autenticación SAML. Haga clic en Agregar directiva para crear una directiva SAML para el primer factor.

    Agregar un esquema

    Nota: Para obtener más información sobre SAML como SP, consulte Citrix ADC como SP SAML.

  5. Agregue la directiva SAML.

    Agregar directiva SAML

  6. Haga clic en verde + para agregar el siguiente factor.

    Agregar factor siguiente

  7. Cree un cuadro de decisión para comprobar los atributos SAML.

    Marque casilla de decisión

  8. Haga clic en Agregar directiva para crear una directiva.

    Agregar directiva

  9. Cree una directiva para buscar el atributo “citrix.com” con la acción NO_AUTHN.

    Directiva sin autenticación

  10. Seleccione la directiva creada anteriormente y haga clic en Agregar.

    Agregar directiva

  11. Haga clic en el signo + verde para agregar una segunda directiva.

  12. Siga los pasos 9 y 10. Enlazar la directiva para comprobar las ventas de atributos.

    Vincular ventas de atributos

  13. Para agregar el segundo factor para el atributo “citrix.com”, haga clic en el signo verde + junto a no_ldap policy.

    Agregar segundo factor

  14. Cree un factor siguiente para la autenticación LDAP.

    Factor LDAP

  15. Haga clic en Agregar esquema para el segundo factor.

    Segundo esquema

  16. Cree un esquema de inicio de sesión de autenticación con el esquema “PrefilUserFormExpr.xml” para el segundo factor que tiene el nombre de usuario rellenado previamente.

    Crear esquema de autenticación

  17. Haga clic en Agregar directiva para agregar la directiva LDAP.

    Agregar directiva LDAP

    Nota

    Para obtener más información sobre la creación de autenticación LDAP, consulte Para configurar la autenticación LDAP mediante la utilidad de configuración.

  18. Siga el paso 13. Para agregar un segundo factor para las ventas de atributos, haga clic en el signo verde + junto a no_cert.

    Agregar ninguna directiva de certificado

  19. Cree un factor siguiente para la autenticación de certificados.

    Agregar autenticación de certificado

  20. Siga los pasos 15, 16 y 17. Agregue un esquema para la autenticación de certificados y Agregar directiva de autenticación de certificados.

    Agregar directiva de certificado

    Nota

    Para obtener más información sobre la autenticación de certificados, consulte Configuración y vinculación de una directiva de autenticación de certificados de cliente.

  21. Haga clic en Listo para guardar la configuración.

  22. Para enlazar el flujo de nFactor creado a un servidor virtual de autenticación, autorización y auditoría, haga clic en Vincular al servidor de autenticación y haga clic en Crear.

    Enlazar servidor de autenticación

    Nota

    Enlazar y desvincular el flujo de nFactor a través de la opción dada en NFactor Flow en Mostrar enlacessolamente.

Desenlazar el flujo de nFactor

  1. Seleccione el flujo nFactor y haga clic en Mostrar enlaces.

  2. Seleccione el servidor virtual de autenticación y haga clic en Desenlazar.

    Desenlazar servidor de autenticación

Configurar SAML seguido de la autenticación LDAP o certificado basada en la extracción de atributos SAML en la autenticación nFactor