Kerberos-Service-Principal und Chiffrierschlüsseldatei erstellen, die vom SPNEGO-TAI von WebSphere Application Server verwendet werden (veraltet)

Sie führen diese Konfigurationstask auf der Domänencontrollermaschine mit Microsoft Active Directory aus. Diese Task ist ein erforderlicher Schritt in der Vorbereitung für die Verarbeitung von SSO in Browseranforderungen an WebSphere Application Server und den SPNEGO-Trust-Association-Interceptor (TAI).

Vorbereitende Schritte

Sie müssen einen aktiven Domänencontroller und mindestens eine Clientmaschine in dieser Domäne haben.
Veraltetes Feature Veraltetes Feature:

In WebSphere Application Server Version 6.1 wurde ein TAI eingeführt, der SPNEGO (Simple and Protected GSS-API Negotiation Mechanism) nutzt, um HTTP-Anforderungen für geschützte Ressourcen sicher auszuhandeln und zu authentifizieren. Seit WebSphere Application Server 7.0 wird diese Funktion nicht weiter unterstützt. Die SPNEGO-Webauthentifizierung wird jetzt genutzt, um SPNEGO-Filter dynamisch neu zu laden und den Rückgriff auf die Methode der Anwendungsanmeldung zu ermöglichen.

depfeat

Informationen zu diesem Vorgang

Diese Task wird auf der Domänencontrollermaschine mit Active Directory ausgeführt. Führen Sie die folgenden Schritte aus, um sicherzustellen, dass der Microsoft Windows-Server mit dem aktiven Active Directory-Domänencontroller ordnungsgemäß für das zugehörige Key Distribution Center (KDC) konfiguriert ist.

Vorgehensweise

  1. Erstellen Sie einen Benutzeraccount in Microsoft Active Directory für WebSphere Application Server.

    Klicken Sie auf Start > Programme > Verwaltung > Active Directory-Benutzer und -Computer.

    Verwenden Sie den Namen für WebSphere Application Server. Wenn der Application Server, den Sie auf der Maschine mit WebSphere Application Server ausführen, den Namen myappserver.austin.ibm.com hat, erstellen Sie in Active Directory einen neuen Benutzer mit dem Namen myappserver.
    Wichtig: Wählen Sie die Option "Benutzer muss das Kennwort bei der nächsten Anmeldung ändern" nicht aus.
    Wichtig: Stellen Sie sicher, dass unter "Computer und Domänencontroller" nicht der Computername myappserver aufgelistet ist. Wenn Sie bereits einen Computer mit dem Namen myappserver haben, müssen Sie einen anderen Benutzeraccount erstellen.
    • Klicken Sie auf Start > Programme > Verwaltung > Active Directory-Benutzer und -Computer > Computer.
    • Klicken Sie auf Start > Programme > Verwaltung > Active Directory-Benutzer und -Computer > Domänencontroller.
  2. Verwenden Sie den Befehl setspn, um den Namen des Kerberos-Service-Principals, HTTP/<Hostname>, einem Microsoft-Benutzeraccount zuzuordnen. Im Folgenden sehen Sie ein Beispiel für die Verwendung von setspn:
    C:\Program Files\Support Tools>
    setspn -A HTTP/myappserver.austin.ibm.com myappserver
    Anmerkung: Möglicherweise sind den Microsoft Windows-Hosts bereits einige SPNs zugeordnet, die der Domäne hinzugefügt wurden. Sie können die vorhandenen SPNs mit dem Befehl setspn -L anzeigen, aber Sie müssen trotzdem einen HTTP-SPN für WebSphere Application Server hinzufügen. Mit dem Befehl setspn -L myappserver können Sie beispielsweise die SPNs auflisten.
    Wichtig: Stellen Sie sicher, dass dieselben SPNs nicht mehreren Microsoft-Benutzeraccounts zugeordnet sind. Wenn Sie denselben SPN mehreren Benutzeraccounts zuordnen, kann der Web-Browser-Client WebSphere Application Server ein NTLM- anstelle eines SPNEGO-Tokens zuordnen.

    Weitere Informationen zum Befehl setspn finden Sie unter Windows 2003 Technical Reference (setspn command).

  3. Erstellen Sie die Kerberos-Chiffrierschlüsseldatei, und stellen Sie sie WebSphere Application Server zur Verfügung. Verwenden Sie den Befehl "ktpass", um die Kerberos-Chiffrierschlüsseldatei (krb5.keytab) zu erstellen.

    Verwenden Sie das Tool ktpass aus dem Windows-Server-Toolkit, um die Kerberos-Chiffrierschlüsseldatei für den Service Principal Name (SPN) zu erstellen. Verwenden Sie die aktuelle Version des Tools ktpass für die von Ihnen verwendete Version von Windows Server. Verwenden Sie beispielsweise die Windows-2003-Version des Tools für Windows 2003.

    Führen Sie den Befehl ktpass -? über die Befehlszeile aus, um die richtigen Parameterwerte für das Tool ktpass zu bestimmen. Dieser Befehl zeigt an, ob das Tool ktpass für das jeweilige Betriebssystem den Parameterwert -crypto RC4-HMAC oder -crypto RC4-HMAC-NT verwendet. Damit keine Warnungen vom Toolkit ausgegeben werden, müssen Sie den Parameterwert -ptype KRB5_NT_PRINCIPAL angeben.

    Die Version des Tools ktpass für Windows 2003 Server unterstützt den Verschlüsselungstyp RC4-HMAC und Single Data Encryption Standard (DES). Weitere Informationen zum Tool ktpass finden Sie unter Windows 2003 Technical Reference - Ktpass overview.

    Der folgende Code zeigt die Funktionen, die verfügbar sind, wenn Sie den Befehl ktpass -? über die Befehlszeile eingeben. Diese Informationen können je nach verwendeter Version des Toolkit unterschiedlich sein:
    C:\Program Files\Support Tools>ktpass -?                                  
    Command line options:
                                                                              
    ---------------------most useful args
    [- /]          out : Keytab to produce
    [- /]        princ : Principal name (user@REALM)
    [- /]         pass : password to use
                         use "*" to prompt for password.
    [- +]      rndPass : ... or use +rndPass to generate a random password    
    [- /]      minPass : minimum length for random password (def:15)          
    [- /]      maxPass : maximum length for random password (def:256)         
    ---------------------less useful stuff
    [- /]      mapuser : map princ to this user account (default: don't)
    [- /]        mapOp : how to set the mapping attribute (default: add it)
    [- /]        mapOp :  is one of:
    [- /]        mapOp :        add : add value (default)
    [- /]        mapOp :        set : set value
    [- +]      DesOnly : Set account for des-only encryption (default:don't)  
    [- /]           in : Keytab to read/digest
    ---------------------options for key generation
    [- /]       crypto : Cryptosystem to use
    [- /]       crypto :  is one of:
    [- /]       crypto : DES-CBC-CRC : for compatibility
    [- /]       crypto : DES-CBC-MD5 : for compatibliity                      
    [- /]       crypto : RC4-HMAC-NT : default 128-bit encryption             
    [- /]        ptype : principal type in question
    [- /]        ptype :  is one of:
    [- /]        ptype : KRB5_NT_PRINCIPAL : The general ptype-- recommended
    [- /]        ptype : KRB5_NT_SRV_INST : user service instance
    [- /]        ptype : KRB5_NT_SRV_HST : host service instance
    [- /]         kvno : Override Key Version Number
                         Default: query DC for kvno.  Use /kvno 1 for Win2K compat.
    [- +]       Answer : +Answer answers YES to prompts.  -Answer answers NO.
    [- /]       Target : Which DC to use.  Default:detect
    ---------------------options for trust attributes (Windows Server 2003    
    Sp1 Only                                                                  
    [- /] MitRealmName : MIT Realm which we want to enable RC4 trust on. [- /]  TrustEncryp : Trust Encryption to use; DES is default              
    [- /]  TrustEncryp :  is one of:                                          
    [- /]  TrustEncryp :        RC4 : RC4 Realm Trusts (default)              
    [- /]  TrustEncryp :        DES : go back to DES
    Wichtig: Verwenden Sie zum Zurücksetzen eines Kennworts für einen Microsoft Windows-Serveraccount nicht den Schalter -pass mit dem Befehl ktpass.
    Weitere Informationen finden Sie unter Windows 2003 Technical Reference - Ktpass overview. Sie müssen die Option "-mapUser" mit dem Befehl ktpass verwenden, um dem KDC die Erstellung eines Chiffrierschlüssels zu ermöglichen. Andernfalls scheitert der Validierungsprozess beim Empfang des SPNEGO-Tokens, und der Anwendungsserver fordert den Benutzer zur Eingabe eines Benutzernamens und eines Kennworts auf.
    Je nach Verschlüsselungstyp verwenden Sie das Tool ktpass auf eine der folgenden Arten, um die Kerberos-Chiffrierschlüsseldatei zu erstellen. Im folgenden Abschnitt werden die verschiedenen Verschlüsselungstypen beschrieben, die vom Tool "ktpass" verwendet werden. Es ist wichtig, dass Sie den Befehl "ktpass -?" ausführen, um zu bestimmen, welcher Wert für den Parameter "-crypto" von der jeweiligen Version des Toolkits für Ihre Microsoft Windows-Umgebung erwartet wird.
    • Für den Verschlüsselungstyp Single DES
      Führen Sie in einer Eingabeaufforderung den Befehl ktpass aus:
      ktpass -out c:\temp\myappserver.keytab
      -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM 
      -mapUser myappserv 
      -mapOp set 
      -pass was1edu
      -crypto DES-CBC-MD5 
      -pType KRB5_NT_PRINCIPAL
      +DesOnly
      Tabelle 1. ktpass für Verschlüsselungstyp Single DES verwenden .

      In dieser Tabelle wird beschrieben, wie Sie "ktpass" für den Verschlüsselungstyp "Single DES" verwenden.

      Option Erläuterung
      -out c:\temp\myappserver.keytab Der Schlüssel wird in diese Ausgabedatei geschrieben.
      -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM Die Verknüpfung des Benutzeranmeldenamens und des Realms muss in Großbuchstaben angegeben werden.
      -mapUser Der Schlüssel wird dem Benutzer myappserver zugeordnet.
      -mapOp Diese Option legt die Zuordnung fest.
      -pass was1edu Diese Option gibt das Kennwort für die Benutzer-ID an.
      -crypto DES-CBC-MD5 Diese Option verwendet den Verschlüsselungstyp Single DES.
      -pType KRB5_NT_PRINCIPAL Diese Option gibt den KRB5_NT_PRINCIPAL-Principalwert an. Geben Sie diese Option an, um die Ausgabe von Warnungen durch das Toolkit zu verhindern.
      +DesOnly Diese Option generiert nur DES-Verschlüsselungen.
    • Für den Verschlüsselungstyp RC4-HMAC
      Wichtig: Die Verschlüsselung RC4-HMAC wird nur unterstützt, wenn Sie Windows 2003 Server als KDC verwenden.
      Führen Sie in einer Eingabeaufforderung den Befehl ktpass aus:
      ktpass -out c:\temp\myappserver.keytab 
      -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM 
      -mapUser myappserver
      -mapOp set 
      –pass was1edu 
      -crypto RC4-HMAC
      -pType KRB5_NT_PRINCIPAL
      Tabelle 2. ktpass für Verschlüsselungstyp RC4-HMAC verwenden .

      In der folgenden Tabelle sind die ktpass-Optionen für die RC4-HMAC-Verschlüsselung mit Beschreibung aufgeführt.

      Option Erläuterung
      -out c:\temp\myappserver.keytab Der Schlüssel wird in diese Ausgabedatei geschrieben.
      -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM Die Verknüpfung des Benutzeranmeldenamens und des Realms muss in Großbuchstaben angegeben werden.
      -mapUser Der Schlüssel wird dem Benutzer myappserver zugeordnet.
      -mapOp Diese Option legt die Zuordnung fest.
      -pass was1edu Diese Option gibt das Kennwort für die Benutzer-ID an.
      -crypto RC4-HMAC Mit dieser Option wird der Verschlüsselungstyp RC4-HMAC ausgewählt.
      -pType KRB5_NT_PRINCIPAL Diese Option gibt den KRB5_NT_PRINCIPAL-Principalwert an. Geben Sie diese Option an, um die Ausgabe von Warnungen durch das Toolkit zu verhindern.
    • Für den Verschlüsselungstyp RC4-HMAC-NT:
      Führen Sie in einer Eingabeaufforderung den Befehl ktpass aus:
      ktpass -out c:\temp\myappserver.keytab
      -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM 
      -mapUser myappserver
      -mapOp set 
      -pass was1edu 
      -crypto RC4-HMAC-NT
      -pType KRB5_NT_PRINCIPAL
      Tabelle 3. ktpass für Verschlüsselungstyp RC4-HMAC verwenden . In dieser Tabelle ist die Verwendung von ktpass für RC4-HMAC-Verschlüsselungstypen beschrieben.
      Option Erläuterung
      -out c:\temp\myappserver.keytab Der Schlüssel wird in diese Ausgabedatei geschrieben.
      -princ HTTP/myappserver.austin.ibm.com@WSSEC.AUSTIN.IBM.COM Die Verknüpfung des Benutzeranmeldenamens und des Realms muss in Großbuchstaben angegeben werden.
      -mapUser Der Schlüssel wird dem Benutzer myappserver zugeordnet.
      -mapOp Diese Option legt die Zuordnung fest.
      -pass was1edu Diese Option gibt das Kennwort für die Benutzer-ID an.
      -crypto RC4-HMAC-NT Diese Option wählt den Verschlüsselungstyp RC4-HMAC-NT aus.
      -pType KRB5_NT_PRINCIPAL Diese Option gibt den KRB5_NT_PRINCIPAL-Principalwert an. Geben Sie diese Option an, um die Ausgabe von Warnungen durch das Toolkit zu verhindern.
    Die Kerberos-Chiffrierschlüsseldatei für den SPNEGO-TAI ist erstellt.
    Anmerkung: Eine Kerberos-Konfigurationsdatei für Chiffrierschlüssel enthält eine Liste von Schlüsseln, die zu Benutzerkennwörtern analog sind. Hosts müssen ihre Kerberos-Chiffrierschlüsseldateien unbedingt schützen. Dazu werden sie auf der lokalen Festplatte gespeichert, wo sie nur von berechtigten Benutzern gelesen werden können.
    Sie machen die Chiffrierschlüsseldatei für WebSphere Application Server verfügbar, indem Sie die Datei krb5.keytab von der Domänencontrollermaschine (LDAP-Maschine) auf die Maschine mit WebSphere Application Server kopieren.
    ftp> bin
    ftp> put c:\temp\KRB5_NT_SEV_HST\krb5.keytab

Ergebnisse

Ihr Active Directory-Domänencontroller ist jetzt ordnungsgemäß für die Verarbeitung von SSO-Anforderungen an WebSphere Application Server und den SPNEGO-TAI konfiguriert.


Symbol, das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsec_SPNEGO_config_dc
Dateiname:tsec_SPNEGO_config_dc.html