Citrix ADC

Konfigurieren von SAML gefolgt von LDAP oder Zertifikatauthentifizierung basierend auf SAML-Attributextraktion in der nFactor-Authentifizierung

Im folgenden Abschnitt wird der Anwendungsfall der LDAP- oder Zertifikatauthentifizierung basierend auf der SAML-Attributextraktion in der nFactor-Authentifizierung beschrieben.

SAML-Authentifizierung im ersten Faktor mit Attributextraktion aus SAML-Assertion

Nehmen Sie einen Anwendungsfall an, bei dem Administratoren die SAML-Authentifizierung in einem ersten Faktor mit Attributextraktion aus SAML-Assertion konfigurieren. Basierend auf den Attributen, die während des ersten Faktors extrahiert wurden, können Sie die nächsten Faktoren konfigurieren, die entweder über eine LDAP-Authentifizierung oder eine Zertifikatauthentifizierung verfügen können.

  1. Sobald Sie auf den virtuellen Server für die Verkehrsverwaltung zugreifen, werden Sie zur Anmeldung zum externen SAML-IdP weitergeleitet (in diesem Fall Shibboleth, wie in der Abbildung gezeigt). Geben Sie Ihre Zugangsdaten ein. Wenn die Anmeldung erfolgreich ist, sendet SAML IdP die SAML-Antwort mit den Attributen.

    SAML Shibboleth-Authentifizierung

  2. Wenn die SAML-Antwort auf der Citrix ADC-Appliance empfangen wird, analysiert und extrahiert sie die Attribute, wie in der SAML-Aktion konfiguriert. Die SAML-Behauptung wird überprüft, und Sie gehen zum zweiten Faktor über.

  3. Der zweite Faktor ist als Passthrough (es gibt keine Anmeldeseite für diesen Faktor) mit 2 NO_AUTHN-Richtlinien konfiguriert. Basierend auf der Richtlinienbewertung haben Sie einen Sprung zum LDAP-Authentifizierungsfaktor oder zum Zertifikatauthentifizierungsfaktor konfiguriert.

    Hinweis

    Die NO_AUTHN-Richtlinie bedeutet, dass die Citrix ADC-Appliance keine Authentifizierung durchführt, falls die für diese Richtlinie konfigurierte Regel als wahr ausgewertet wird. Es zeigt auf den nächsten konfigurierten Faktor.

  4. Angenommen, die SAML-Aktion ist so konfiguriert, dass das UPN als Attribute1 extrahiert wird, und der Wert von UPN ist john@citrix.com. Jetzt ist eine der NO_AUTHN-Richtlinienregeln konfiguriert, um das Vorhandensein der Zeichenfolge “citrix.com” zu überprüfen. Wenn die Richtlinie als wahr ausgewertet wird, können Sie den Sprung zum nächsten Faktor mit LDAP-Authentifizierung konfigurieren. In ähnlicher Weise kann die Richtlinie so konfiguriert werden, dass der nächste Faktor als Zertifikat verwendet wird.

  5. Wenn der LDAP-Faktor nach der SAML-Authentifizierung ausgewählt wird, wird die Anmeldeseite angezeigt.

    LDAP-Authentifizierungsanmeldung

    Hinweis

    Der Wert des Benutzernamens wird mit dem Ausdruck $ {http.req.user.name} vorausgefüllt, der den Benutzernamen aus dem ersten Faktor extrahiert. Andere Felder wie Beschriftungen für Benutzernamen und Kennwort können ebenfalls angepasst werden.

  6. Die folgende Abbildung zeigt ein Beispiel für diese Darstellung des Anmeldeformulars.

    Anmeldeformular

    Hinweis

    Basierend auf der Anforderung können Administratoren die Werte des Anmeldeformulars ändern.

  7. Wenn der Zertifikatsfaktor nach SAML ausgewählt wird, wird die Seite Zertifikat auswählen angezeigt.

    Zertifikat auswählen

Hinweis

Das Setup kann auch über den nFactor Visualizer erstellt werden, der in Citrix ADC Version 13.0 und höher verfügbar ist.

nFactor Visualizer SAML und LDAP

Führen Sie Folgendes mit der CLI aus

  1. Konfigurieren Sie den virtuellen Server und den Authentifizierungsserver für das Verkehrsmanagement

    • 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. Konfigurieren Sie eine SAML-Richtlinie mit an den virtuellen Authentifizierungsserver gebundenen Attributextraktion.

    • 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. Konfigurieren Sie einen zweiten Faktor.

    • 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. Konfigurieren Sie einen LDAP-Authentifizierungsfaktor.

    • 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. Konfigurieren Sie eine Zertifizierungsfaktor-Authentifizierung

    • 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. Binden Sie das Stammzertifikat an den virtuellen Server und aktivieren Sie die Clientauthentifizierung.

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

Konfigurieren mit dem nFactor Visualizer

  1. Navigieren Sie zu Sicherheit > AAA-Application Traffic > nFactor Visualizer > nFactor Flows und klicken Sie auf Hinzufügen.

  2. Klicken Sie auf +, um den nFactor-Flow hinzuzufügen.

    Fügen Sie einen Flow hinzu

  3. Fügen Sie einen Faktor hinzu. Der eingegebene Name ist der Name des nFactor-Flows.

    Hinzufügen eines Namens für den Flow

  4. Für die SAML-Authentifizierung ist kein Schema erforderlich. Klicken Sie auf Richtlinie hinzufügen, um eine SAML-Richtlinie für den ersten Faktor zu erstellen.

    Hinzufügen eines Schemas

    Hinweis: Weitere Informationen zu SAML als SP finden Sie unter Citrix ADC als SAML-SP.

  5. Fügen Sie die SAML-Richtlinie hinzu.

    SAML-Richtlinie hinzufügen

  6. Klicken Sie auf grün +, um den nächsten Faktor hinzuzufügen.

    Nächsten Faktor hinzufügen

  7. Erstellen Sie ein Entscheidungsfeld, um nach den SAML-Attributen zu suchen.

    Überprüfen Sie das Entscheidungsfeld

  8. Klicken Sie auf Richtlinie hinzufügen, um eine Richtlinie zu erstellen.

    Richtlinie hinzufügen

  9. Erstellen Sie eine Richtlinie, um mit der Aktion NO_AUTHN nach dem Attribut “citrix.com” zu suchen.

    Richtlinie zur Auth

  10. Wählen Sie die zuvor erstellte Richtlinie aus und klicken Sie auf Hinzufügen.

    Richtlinie hinzufügen

  11. Klicken Sie auf das grüne +-Zeichen, um eine zweite Richtlinie hinzuzufügen.

  12. Folgen Sie den Schritten 9 und 10. Binden Sie die Richtlinie, um nach Attributverkäufen zu suchen.

    Binden Sie Attributverkäufe

  13. Um den zweiten Faktor für das Attribut “citrix.com” hinzuzufügen, klicken Sie auf das grüne +-Zeichen neben der Richtlinie no_ldap.

    Zweiter Faktor hinzufügen

  14. Erstellen Sie einen nächsten Faktor für die LDAP-Authentifizierung.

    LDAP-Faktor

  15. Klicken Sie für den zweiten Faktor auf Schema hinzufügen .

    Zweites Schema

  16. Erstellen Sie ein Authentifizierungs-Login-Schema mit dem Schema “PrefilUserFormExpr.xml” für den zweiten Faktor, der den Benutzernamen vorausgefüllt hat.

    Erstellen eines Authentifizierungsschemas

  17. Klicken Sie auf Richtlinie hinzufügen, um die LDAP-Richtlinie hinzuzufügen.

    LDAP-Richtlinie hinzufügen

    Hinweis

    Weitere Informationen zum Erstellen der LDAP-Authentifizierung finden Sie unter So konfigurieren Sie die LDAP-Authentifizierung mit dem Konfigurationsdienstprogramm.

  18. Folgen Sie Schritt 13. Um einen zweiten Faktor für den Verkauf von Attributen hinzuzufügen, klicken Sie neben no_cert auf das grüne +-Zeichen .

    Keine Cert-Richtlinie hinzufügen

  19. Erstellen Sie einen nächsten Faktor für die Zertifikatauthentifizierung.

    Cert-Auth hinzufügen

  20. Folgen Sie den Schritten 15, 16 und 17. Fügen Sie ein Schema für die Zertifikatauthentifizierung hinzu und fügen Sie Cert-Authentifizierungsrichtlinie hinzu.

    Zertifizierungsrichtlinie hinzufügen

    Hinweis

    Weitere Informationen zur Zertifikatauthentifizierung finden Sie unter Konfigurieren und Binden einer Authentifizierungsrichtlinie für Clientzertifikate.

  21. Klicken Sie auf Fertig, um die Konfiguration zu speichern.

  22. Um den erstellten nFactor-Flow an einen virtuellen Authentifizierungs-, Autorisierungs- und Überwachungsserver zu binden, klicken Sie auf An Authentifizierungsserver binden und dann auf Erstellen.

    Authentifizierserver binden

    Hinweis

    Binden und lösen Sie die Bindung des nFactor-Flusses durch die Option, die in nFactor Flow unter Nur Bindungen anzeigen angegeben ist.

Entbindung des nFactor Flow

  1. Wählen Sie den nFactor-Flow aus und klicken Sie auf Bindungen anzeigen.

  2. Wählen Sie den virtuellen Authentifizierungsserver aus und klicken Sie auf Unbind.

    Unbind auth server

Konfigurieren von SAML gefolgt von LDAP oder Zertifikatauthentifizierung basierend auf SAML-Attributextraktion in der nFactor-Authentifizierung