Konfigurieren von SSO nach Delegierung

Um SSO nach Delegierung zu konfigurieren, müssen Sie die folgenden Aufgaben ausführen:

  • Wenn Sie Delegierung nach delegiertem Benutzerzertifikat konfigurieren, installieren Sie die entsprechenden Zertifizierungsstellenzertifikate auf der Citrix ADC Appliance, und fügen Sie sie der Citrix ADC-Konfiguration hinzu.
  • Erstellen Sie das KCD-Konto auf der Appliance. Die Appliance verwendet dieses Konto, um Servicetickets für Ihre geschützten Anwendungen zu erhalten.
  • Konfigurieren Sie den Active Directory -Server.

Hinweis

Weitere Informationen zum Erstellen von KCD-Konten und zum Konfigurieren auf der NetScaler Appliance finden Sie in den folgenden Themen:

Installieren des Client-Zertifizierungsstellenzertifikats auf der Citrix ADC Appliance

Wenn Sie Citrix ADC SSO mit einem Clientzertifikat konfigurieren, müssen Sie das entsprechende Zertifizierungsstellenzertifikat für die Clientzertifikatdomäne (das Clientzertifizierungsstellenzertifikat) in die Citrix ADC-Appliance kopieren und dann das Zertifizierungsstellenzertifikat installieren. Zum Kopieren des Client-Zertifizierungsstellenzertifikats verwenden Sie das Dateiübertragungsprogramm Ihrer Wahl, um das Zertifikat und die Datei mit privatem Schlüssel auf die Citrix ADC Appliance zu übertragen und die Dateien in /nsconfig/ssl zu speichern.

So installieren Sie das Client-Zertifizierungsstellenzertifikat auf der Citrix ADC Appliance

Geben Sie an der Eingabeaufforderung den folgenden Befehl ein:

add ssl certKey <certkeyName> -cert <cert> [(-key <key> [-password]) | -fipsKey <fipsKey>][-inform ( DER | PEM )][-expiryMonitor ( ENABLED | DISABLED | UNSET ) [-notificationPeriod <positive_integer>]] [-bundle ( YES | NO )]

Ersetzen Sie für die Variablen die folgenden Werte:

  • certkeyName. Ein Name für das Client-Zertifizierungsstellenzertifikat. Muss mit einem alphanumerischen ASCII-Zeichen oder einem Unterstrich (_) beginnen und aus einem bis einunddreißig Zeichen bestehen. Zulässige Zeichen umfassen ASCII-alphanumerische Zeichen, Unterstriche, Hash (#), Punkt (.), Leerzeichen, Doppelpunkt (:), at (@), equals (=) und Bindestrich (-). Kann nicht geändert werden, nachdem das Zertifikatschlüsselpaar erstellt wurde. Wenn der Name ein oder mehrere Leerzeichen enthält, setzen Sie den Namen in doppelte oder einfache Anführungszeichen ein (z. B. mein Zertifikat oder mein Zertifikat).
  • cert. Vollständiger Pfadname und Dateiname der X509-Zertifikatdatei, die zur Bildung des Zertifikatschlüsselpaares verwendet wird. Die Zertifikatsdatei muss auf der Citrix ADC Appliance im Verzeichnis /nsconfig/ssl/ gespeichert sein.
  • key. Vollständiger Pfadname und Dateiname der Datei, die den privaten Schlüssel für die X509-Zertifikatsdatei enthält. Die Schlüsseldatei muss auf der Citrix ADC Appliance im Verzeichnis /nsconfig/ssl/ gespeichert sein.
  • password. Wenn ein privater Schlüssel angegeben wird, wird die Passphrase verwendet, um den privaten Schlüssel zu verschlüsseln. Verwenden Sie diese Option, um verschlüsselte private Schlüssel im PEM-Format zu laden.
  • fipsKey. Name des FIPS-Schlüssels, der im Hardwaresicherheitsmodul (HSM) einer FIPS-Appliance erstellt wurde, oder eines Schlüssels, der in das HSM importiert wurde.

    Hinweis:

    Sie können entweder einen Schlüssel oder einen FIPsKey angeben, aber nicht beide.

  • inform. Format der Zertifikats- und Privatschlüsseldateien, entweder PEM oder DER.
  • passplain. Übergeben Phrase verwendet, um den privaten Schlüssel zu verschlüsseln. Erforderlich, wenn Sie einen verschlüsselten privaten Schlüssel im PEM-Format hinzufügen.
  • expiryMonitor. Konfigurieren Sie die Citrix ADC Appliance so, dass sie eine Warnung ausgibt, wenn das Zertifikat abläuft. Mögliche Werte: ENABLED, DISABLED, UNSET.
  • notificationPeriod. Mit expiryMonitor auf ENABLED, wird die Anzahl der Tage vor Ablauf des Zertifikats angezeigt, um eine Warnung auszustellen.
  • bundle. Analysieren Sie die Zertifikatkette als einzelne Datei, nachdem Sie das Serverzertifikat mit dem Zertifikat des Ausstellers in der Datei verknüpft haben. Mögliche Werte: YES, NO.

Beispiel

Im folgenden Beispiel wird das angegebene delegierte Benutzerzertifikat customer-cert.pem zur Citrix ADC Konfiguration zusammen mit dem Schlüssel customer-key.pem hinzugefügt und Kennwort, Zertifikatformat, Ablaufmonitor und Benachrichtigungszeitraum festgelegt.

Um das delegierte Benutzerzertifikat hinzuzufügen, geben Sie die folgenden Befehle ein:


```add ssl certKey customer -cert "/nsconfig/ssl/customer-cert.pem"
        -key "/nsconfig/ssl/customer-key.pem" -password "dontUseDefaultPWs!"
        -inform PEM -expiryMonitor ENABLED [-notificationPeriod 14]

Erstellen des KCD-Kontos

Wenn Sie Citrix ADC SSO nach Delegierung konfigurieren, können Sie das KCD-Konto so konfigurieren, dass der Anmeldename und das Kennwort des Benutzers verwendet, der Anmeldename und die Schlüsseltabelle des Benutzers verwendet oder das Clientzertifikat des Benutzers verwendet wird. Wenn Sie SSO mit Benutzernamen und Kennwort konfigurieren, verwendet die Citrix ADC Appliance das delegierte Benutzerkonto, um ein Ticket Granting Ticket (TGT) zu erhalten, und verwendet dann den TGT, um Diensttickets für die spezifischen Dienste zu erhalten, die jeder Benutzer anfordert. Wenn Sie SSO mit Keytab-Datei konfigurieren, verwendet die Citrix ADC Appliance die delegierten Benutzerkonto- und Keytab-Informationen. Wenn Sie SSO mit einem delegierten Benutzerzertifikat konfigurieren, verwendet die Citrix ADC Appliance das delegierte Benutzerzertifikat.

So erstellen Sie das KCD-Konto für SSO durch Delegierung mit einem Kennwort

Geben Sie an der Eingabeaufforderung die folgenden Befehle ein:

add aaa kcdaccount <accountname> -delegatedUser root -kcdPassword <password> -realmStr <realm>

Ersetzen Sie für die Variablen die folgenden Werte:

  • Kontoname. Ein Name für das KCD-Konto.
  • -Kennwort. Ein Kennwort für das KCD-Konto.
  • Reich. Der Bereich des KCD-Kontos, normalerweise die Domäne, für die SSO aktiv ist.

Beispiel (UPN-Format)

Um der Citrix ADC Appliance-Konfiguration ein KCD-Konto mit dem Namen kcdaccount1 mit dem Kennwort password1 und dem Bereich EXAMPLE.COM hinzuzufügen und das delegierte Benutzerkonto im UPN-Format (als root) anzugeben, geben Sie die folgenden Befehle ein:


add aaa kcdaccount kcdaccount1 –delegatedUser root
-kcdPassword password1 -realmStr EXAMPLE.COM

Beispiel (SPN-Format)

Um der Citrix ADC Appliance-Konfiguration ein KCD-Konto mit dem Namen kcdaccount1 mit dem Kennwort password1 und dem Bereich EXAMPLE.COM hinzuzufügen und das delegierte Benutzerkonto im SPN-Format anzugeben, geben Sie die folgenden Befehle ein:


add aaa kcdAccount kcdaccount1 -realmStr EXAMPLE.COM
-delegatedUser "host/kcdvserver.example.com" -kcdPassword password1

Erstellen des KCD-Kontos für SSO durch Delegierung mit einem Keytab

Wenn Sie eine Keytab-Datei für die Authentifizierung verwenden möchten, erstellen Sie zuerst das Keytab. Sie können die Keytab-Datei manuell erstellen, indem Sie sich beim AD-Server anmelden und das Dienstprogramm ktpass verwenden, oder Sie können das Citrix ADC Konfigurationsprogramm verwenden, um ein Batch-Skript zu erstellen und dieses Skript dann auf dem AD-Server ausführen, um die Keytab-Datei zu generieren. Verwenden Sie als Nächstes FTP oder ein anderes Dateiübertragungsprogramm, um die keytab-Datei auf die Citrix ADC Appliance zu übertragen und im Verzeichnis /nsconfig/krb zu speichern. Konfigurieren Sie schließlich das KCD-Konto für Citrix ADC SSO durch Delegierung und geben Sie der Citrix ADC-Appliance den Pfad und den Dateinamen der Keytab-Datei an.

So erstellen Sie die Keytab-Datei manuell

Melden Sie sich an der AD-Server-Befehlszeile an, und geben Sie an der Eingabeaufforderung den folgenden Befehl ein:

ktpass princ <SPN> ptype KRB5_NT_PRINCIPAL mapuser <DOMAIN><username> pass <password> -out <File_Path>

Ersetzen Sie für die Variablen die folgenden Werte:

  • SPN. Der Dienstprinzipalname für das KCD-Dienstkonto.
  • DOMAIN. Die Domäne des Active Directory -Servers.
  • Benutzername. Der Benutzername des KSA-Kontos.
  • -Kennwort. Das Kennwort für das KSA-Konto.
  • Pfad. Der vollständige Pfadname des Verzeichnisses, in dem die keytab-Datei gespeichert werden soll, nachdem sie generiert wurde.

So erstellen Sie ein Skript zum Generieren der Keytab-Datei mit dem Citrix ADC Konfigurationsprogramm

  1. Navigieren Sie zu Sicherheit > AAA - Anwendungsdatenverkehr.
  2. Klicken Sie im Datenbereich unter Kerberos-eingeschränkte Delegierungauf Batchdatei, um Keytab zu generieren.
  3. Legen Sie im Dialogfeld KCD generieren (Kerberos Constrained Delegation) Keytab Skript die folgenden Parameter fest:
    • Domänenbenutzername. Der Benutzername des KSA-Kontos.
    • Domänenkennwort. Das Kennwort für das KSA-Konto.
    • Service Principal. Der Dienstprinzipalname für die KSA.
    • Ausgabedateiname. Der vollständige Pfad und Dateiname, unter dem die Keytab-Datei auf dem AD-Server gespeichert werden soll.
  4. Deaktivieren Sie das Kontrollkästchen Domänenbenutzerkonto erstellen .
  5. Klicken Sie auf Skript generieren.
  6. Melden Sie sich beim Active Directory -Server an, und öffnen Sie ein Befehlszeilenfenster.
  7. Kopieren Sie das Skript aus dem Fenster Generiertes Skript, und fügen Sie es direkt in das Befehlszeilenfenster des Active Directory -Servers ein. Der Keytab wird generiert und im Verzeichnis unter dem Dateinamen gespeichert, den Sie als Ausgabedateinameangegeben haben.
  8. Verwenden Sie das Dateiübertragungsprogramm Ihrer Wahl, um die keytab-Datei vom Active Directory -Server auf die Citrix ADC Appliance zu kopieren und im Verzeichnis /nsconfig/krb zu speichern.

So erstellen Sie das KCD-Konto

Geben Sie an der Eingabeaufforderung den folgenden Befehl ein:

add aaa kcdaccount <accountname> –keytab <keytab>

Beispiel

Um ein KCD-Konto mit dem Namen kcdccount1 hinzuzufügen und den Keytab mit dem Namen kcdvserver.keytab zu verwenden, geben Sie die folgenden Befehle ein:


add aaa kcdaccount kcdaccount1 –keytab kcdvserver.keytab

So erstellen Sie das KCD-Konto für SSO durch Delegierung mit einem delegierten Benutzerzertifikat

Geben Sie an der Eingabeaufforderung den folgenden Befehl ein:

add aaa kcdaccount <accountname> -realmStr <realm> -delegatedUser <user_nameSPN> -usercert <cert> -cacert <cacert>

Ersetzen Sie für die Variablen die folgenden Werte:

  • accountname. Ein Name für das KCD-Konto.
  • realmStr. Der Bereich (Realm) für das KCD-Konto, normalerweise die Domäne, für die SSO konfiguriert ist.
  • delegatedUser. Der delegierte Benutzername im SPN-Format.
  • usercert. Der vollständige Pfad und der Name der delegierten Benutzerzertifikatdatei auf der Citrix ADC Appliance. Das delegierte Benutzerzertifikat muss sowohl das Clientzertifikat als auch den privaten Schlüssel enthalten und im PEM-Format sein. Wenn Sie die Smartcard-Authentifizierung verwenden, müssen Sie möglicherweise eine Smartcard-Zertifikatvorlage erstellen, damit Zertifikate mit dem privaten Schlüssel importiert werden können.
  • cacert. Der vollständige Pfad und der Name der Zertifizierungsstellenzertifikatsdatei auf der Citrix ADC Appliance.

Beispiel

Um ein KCD-Konto mit dem Namen kcdccount1 hinzuzufügen und das Schlüsselregister kcdvserver.keytab zu verwenden, geben Sie den folgenden Befehl ein:

add aaa kcdaccount kcdaccount1 -realmStr EXAMPLE.COM
     -delegatedUser "host/kcdvserver.example.com" -usercert /certs/usercert
     -cacert /cacerts/cacert

Einrichten von Active Directory für Citrix ADC SSO

Wenn Sie SSO nach Delegierung konfigurieren, müssen Sie neben dem Erstellen des KCDAccounts auf der Citrix ADC Appliance auch ein übereinstimmendes Kerberos-Dienstkonto (KSA) auf Ihrem LDAP-Active Directory-Server erstellen und den Server für SSO konfigurieren. Verwenden Sie zum Erstellen der KSA den Kontoerstellungsprozess auf dem Active Directory Server. Um SSO auf dem Active Directory Server zu konfigurieren, öffnen Sie das Eigenschaftenfenster für die KSA. Aktivieren Sie auf der Registerkarte Delegierung die folgenden Optionen: Diesem Benutzer nur für die Delegierung an bestimmte Dienste vertrauen und Beliebiges Authentifizierungsprotokoll verwenden. (Die Option Nur Kerberos funktioniert nicht, da sie den Protokollübergang oder die eingeschränkte Delegierung nicht aktiviert.) Fügen Sie schließlich die Dienste hinzu, die von Citrix ADC SSO verwaltet werden.

Hinweis:

Wenn die Registerkarte Delegierung im Dialogfeld Eigenschaften des KSA-Kontos nicht angezeigt wird, müssen Sie vor der Konfiguration der KSA wie beschrieben das Befehlszeilentool von Microsoft setspn verwenden, um den Active Directory-Server so zu konfigurieren, dass die Registerkarte angezeigt wird.

So konfigurieren Sie die Delegierung für das Kerberos-Dienstkonto

  1. Klicken Sie im Dialogfeld LDAP-Kontokonfiguration für das Kerberos-Dienstkonto, das Sie erstellt haben, auf die Registerkarte Delegierung.
  2. Wählen Sie Diesem Benutzer nur für die Delegierung an die angegebenen Dienste vertrauen.
  3. Wählen Sie unter Diesem Benutzer nur für die Delegierung an die angegebenen Dienste vertrauen die Option Beliebiges Authentifizierungsprotokoll verwenden.
  4. Klicken Sie unter “Dienste, denen dieses Konto delegierte Anmeldeinformationen präsentieren kann” auf Hinzufügen.
  5. Klicken Sie im Dialogfeld Dienste hinzufügen auf Benutzer oder Computer, wählen Sie den Server aus, der die Ressourcen hostet, die dem Dienstkonto zugewiesen werden sollen, und klicken Sie dann auf OK .

    Hinweis:

    -  Eingeschränkte Delegierung unterstützt keine Dienste, die in anderen Domänen als der dem Konto zugewiesenen Domäne gehostet werden, obwohl Kerberos möglicherweise eine Vertrauensstellung mit anderen Domänen aufweist. -  Verwenden Sie den folgenden Befehl, um die setspn zu erstellen, wenn ein neuer Benutzer im Active Directory erstellt wird: setspn -A host/kcdvserver.example.com examplekcdtest
    
  6. Wählen Sie im Dialogfeld Dienste hinzufügen in der Liste Verfügbare Dienste die dem Dienstkonto zugewiesenen Dienste aus. Citrix ADC SSO unterstützt die HTTP- und MSSQLSVC-Dienste.
  7. Klicken Sie auf OK.