Webanwendung und Server für die Clientzertifikatsauthentifizierung konfigurieren

Sie können Ihre Webanwendung im Liberty-Profil mit der SSL-Clientauthentifizierung konfigurieren.

Vorbereitende Schritte

In diesem Abschnitt wird davon ausgegangen, dass Sie die SSL-Zertifikate bereits gemäß der Beschreibung im Abschnitt SSL-Zertifikate über die Befehlszeile erstellen erstellt haben.

Informationen zu diesem Vorgang

Clientzertifikatsauthentifizierung tritt auf, wenn die Serverseite anfordert, dass die Clientseite ein Zertifikat sendet. Ein WebSphere-Server kann in der SSL-Konfiguration für die Clientzertifikatsauthentifizierung konfiguriert werden. Fügen Sie hierzu das Liberty-Feature ssl-1.0 der Datei server.xml zusammen mit Code hinzu, der dem Server die Keystore-Informationen für die Authentifizierung übermittelt.

Ausführliche Informationen dazu, welche Aspekte von SSL unterstützt werden, finden Sie im Abschnitt Liberty-Features.

Vorgehensweise

  1. Stellen Sie sicher, dass der Implementierungsdeskriptor für Ihre Webanwendung Clientzertifikatsauthentifizierung als zu verwendende Authentifizierungsmethode angibt.
    Überprüfen Sie, ob der Implementierungsdeskriptor die folgenden Elemente enthält:
    <auth-method>CLIENT-CERT</auth-method>
    Anmerkung: Sie können ein Tool wie Rational Application Developer verwenden, um den Implementierungsdeskriptor zu erstellen.
  2. Optional: Erstellen Sie ein SSL-Zertifikat über die Befehlszeile. Nähere Informationen hierzu finden Sie im Abschnitt Befehl "securityUtility".
  3. Nehmen Sie die folgenden Zeilen in die Datei server.xml auf, um den Server zur Aktivierung der SSL-Clientauthentifizierung zu konfigurieren.
       <featureManager>
            <feature>ssl-1.0</feature>
       <featureManager>
    
       <ssl id="defaultSSLConfig" keyStoreRef="defaultKeyStore" 
            trustStoreRef="defaultTrustStore" clientAuthenticationSupported="true" />
       <keyStore id="defaultKeyStore" location="key.jks" type="JKS" password="defaultPWD" />
       <keyStore id="defaultTrustStore" location="trust.jks" type="JKS" password="defaultPWD" />
    • Wenn Sie clientAuthentication="true" angeben, fordert der Server an, dass ein Client ein Zertifikat sendet. Falls der Client kein Zertifikat hat oder falls der Server das Zertifikat nicht anerkennt, ist der Handshake jedoch nicht erfolgreich.
    • Wenn Sie clientAuthenticationSupported="true" angeben, fordert der Server an, dass ein Client ein Zertifikat sendet. Falls der Client kein Zertifikat hat oder falls der Server das Zertifikat nicht anerkennt, kann der Handshake trotzdem erfolgreich sein.
    • Wenn Sie weder clientAuthentication noch clientAuthenticationSupported angeben, oder wenn Sie clientAuthentication="false" oder clientAuthenticationSupported="false" angeben, fordert der Server während des Handshake kein Zertifikat vom Client an.
  4. Fügen Sie Ihrem Browser ein Clientzertifikat hinzu. Informationen zum Hinzufügen von Clientzertifikaten zu Ihrem Browser entnehmen Sie der Dokumentation zu Ihrem Browser.
  5. Stellen Sie sicher, dass der Server die verwendeten Clientzertifikate anerkennt.
  6. Stellen Sie sicher, dass die für die Clientauthentifizierung verwendeten Clientzertifikate einer Benutzeridentität in Ihrer Registry zugeordnet sind.
    • Bei der Basisregistry ist die Benutzeridentität der allgemeine Name (CN, Common Name) aus dem definierten Namen (DN, Distinguished Name) des Zertifikats.
    • Bei der LDAP-Registry (Lightweight Directory Access Protocol) muss der DN aus dem Clientzertifikat in der LDAP-Registry enthalten sein.
  7. Fügen Sie zum Verwenden der Basisauthentifizierung (nur Benutzer-ID und Kennwort) bei Fehlschlagen der Clientzertifikatsauthentifizierung der Datei server.xml die folgende Zeile hinzu.
    <webAppSecurity allowFailOverToBasicAuth="true" />
    Anmerkung: Wenn Sie allowFailOverToBasicAuth="false" angeben oder allowFailOvertoBasicAuth nicht angeben und die Clientzertifikatsauthentifizierung fehlschlägt, generiert die Anforderung eine Nachricht des Typs 403 Authentication error und der Client wird nicht zur Basisauthentifizierung aufgefordert.

Symbol das den Typ des Artikels anzeigt. Taskartikel

Nutzungsbedingungen für Information Center | Feedback


Symbol für Zeitmarke Letzte Aktualisierung: 25.08.2015
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_sec_clientcert
Dateiname: twlp_sec_clientcert.html