Ausnahmebedingungen beim SSL-Handshakeverfahren vermeiden

Stellen Sie zum Vermeiden von Ausnahmebedingungen beim SSL-Handshakeverfahren sicher, dass das Zertifikat des Servers im Truststore des Clients vorhanden ist. Wenn das Zertifikat nicht im Truststore vorhanden ist und der Client ein Browser ist, wird ein Dialog mit einem Sicherheitsalert angezeigt. Ein Benutzer kann mithilfe des Dialogs das Zertifikat anzeigen und eine Entscheidung treffen, ob er fortfahren möchte.

Wenn ein Web-Service in einer Rich UI-Anwendung aufgerufen wird, stellt der EGL Rich UI-Proxy eine HTTP- oder HTTP-Verbindung zwischen dem Proxy und dem Web-Service her. Diese Verbindung ist von der Verbindung zwischen dem Browser und dem Proxy unabhängig. Wenn der Web-Service über ein HTTPS-Protokoll verfügt, wird für die Verbindung zwischen dem Proxy und dem Web-Service SSL verwendet. Da kein Browser für die Anzeige eines Sicherheitsalerts und die Aufforderung zur Eingabe einer Antwort zur Verfügung steht, muss sich das Zertifikat, das zum Server des Web-Service gehört, im Truststore des Servers des EGL Rich UI-Proxys befinden, bevor die Verbindung initiiert wird. Andernfalls kann ein Fehler im Handshakeverfahren auftreten.

Zum Abrufen einer Kopie des Zertifikats des Servers beim Aufrufen eines Web-Service einer dritten Partei geben Sie die URL des Web-Service über HTTPS in einen Browser ein. Die Art, auf die Sie das Zertifikat des Servers empfangen, unterscheidet sich je nach Browser. Eine übliche Möglichkeit sind die Schaltfläche zum Anzeigen des Zertifikats, die Registerkarte 'Details' und die Schaltfläche zum Kopieren in eine Datei. Speichern Sie das Zertifikat in einer Datei. Verwenden Sie zum Öffnen des Truststores Ihres EGL Rich UI-Proxys die Administrationskonsole und importieren Sie das gespeicherte Zertifikat als Unterzeichnerzertifikat.

Sie können alternativ eine Verbindung zum fernen SSL-Host und -Port herstellen und das Unterzeichnerzertifikat während des Handshakes über die Option 'Vom Port abrufen' erhalten. Wenn Sie versuchen, den SSL-fähigen Port 9444, den Sie in 'SSL-Beispiel' erstellt haben, zum Anfordern eines Web-Service zu verwenden, der in einer HTML-Datei aufgerufen wurde, die über den WebSphere-SSL-Standardport 9443 angefordert wurde, tritt ein Fehler im Handshakeverfahren auf. Importieren Sie zum Beheben dieses Problems das Zertifikat, das Port 9444 zugeordnet ist, in den Truststore, der Port 9443 zugeordnet ist:
  1. Starten Sie den WebSphere-Server der Version 6.1 oder 7.0, auf dem sich Ihr EGL Rich UI-Proxy befindet. Der Proxy wird an derselben Position implementiert wie die generierte HTML-Datei Ihrer Rich UI-Anwendung.
  2. Klicken Sie mit der rechten Maustaste auf den Server. Klicken Sie auf Administration > Administrationskonsole ausführen.
  3. Melden Sie sich an der Administrationskonsole an.
  4. Erweitern Sie 'Sicherheit' und klicken Sie auf Verwaltung von SSL-Zertifikaten und Schlüsseln.
  5. Klicken Sie unter 'Zugehörige Elemente' auf Keystores und Zertifikate.
  6. Klicken Sie auf den entsprechenden Truststore.
  7. Klicken Sie auf Unterzeichnerzertifikate.
  8. Klicken Sie auf Vom Port abrufen.
  9. Geben Sie folgende Werte an:
    Host
    localhost
    Port
    9444
    SSL-Konfiguration für abgehende Verbindung
    NodeDefaultSSLSettings
    Name des Keystores
    SampleCert
  10. Klicken Sie auf Unterzeichnerdaten abrufen > OK.
Starten Sie den Server erneut. Sie sollten nun einen Web-Service an Port 9444 von Port 9443 anfordern können, ohne einen Fehler im Handshakeverfahren zu empfangen.

Feedback