Steuerung von X.509-Zertifikatidentitäten mit einem Key Manager

Der JSSE-Key-Manager (Java™ Secure Socket Extension) empfängt das Zertifikat, mit dem der Client oder Server bei einem SSL-Handshake identifiziert wird.

WebSphere Application Server stellt einen Standard-Key-Manager bereit, der ein Zertifikat aus einem Keystore auswählen kann, wenn Sie die folgenden SSL-Konfigurationseigenschaften definieren:
com.ibm.ssl.keyStoreClientAlias
Definiert den Aliasnamen, der für die Clientseite der Verbindung aus dem Keystore ausgewählt wird. Dieser Aliasname muss im Keystore enthalten sein.
com.ibm.ssl.keyStoreServerAlias
Definiert den Aliasnamen, der für die Serverseite der Verbindung aus dem Keystore ausgewählt wird. Dieser Aliasname muss im Keystore enthalten sein.
Wenn Sie die Administrationskonsole verwenden, werden diese beiden Eigenschaften automatisch gesetzt, weil der Standard-Key-Manager bereits konfiguriert ist.

Wenn Sie mit WebSphere Application Server arbeiten, können Sie für eine bestimmte SSL-Konfiguration immer nur jeweils einen Key Manager konfigurieren. Falls Sie die Logik für Zertifikatauswahl auf der Clientseite anpassen möchten, müssen Sie einen neuen eigenen Key Manager schreiben. Ein solcher angepasster Key Manager könnte eine Funktion bereitstellen, die den Benutzer dynamisch zur Auswahl eines Zertifikats auffordert. Sie können auch eine erweiterte Schnittstelle implementieren, sodass ein Key Manager während der Verbindungszeit Informationen bereitstellen kann. Weitere Informationen zur erweiterten Schnittstelle finden Sie in der Schnittstelle "com.ibm.wsspi.ssl.KeyManagerExtendedInfo". Weitere Informationen zur Entwicklung angepasster Key-Manager finden Sie unter Angepasste Key-Manager für SSL erstellen.

IbmX509-Standard-Key-Manager

Der IbmX509-Standard-Key-Manager wählt ein Zertifikat als Identität für einen SSL-Handshake aus. Der Key Manager wird aufgerufen, um die Clientauthentifizierung für einen der beiden Teilnehmer des SSL-Handshake zu aktivieren. Die Clientauthentifizierung wird häufig auf der Serverseite aktiviert, weniger häufig auf der Clientseite. Dies richtet sich nach den Client- und Serveranforderungen. Wenn auf der Clientseite kein Keystore konfiguriert und die SSL-Clientauthentifizierung aktiviert ist, kann der Key Manager kein Zertifikat auswählen und an den Server senden. Der Handshake muss demzufolge scheitern.

Der folgende Beispielcode zeigt die Key-Manager-Konfiguration in der Datei security.xml für einen IbmX509-Key-Manager.
<keyManagers xmi:id="KeyManager_1" name="IbmX509" 
provider="IBMJSSE2" algorithm="IbmX509" keyManagerClass="" 
managementScope="ManagementScope_1"/>
Die Klasse keyManagerClass wird nicht angegeben, weil der Key Manager vom Provider IBMJSSE2 bereitgestellt wird. Sie können jedoch angeben, ob der Key Manager eine eigene Klassenimplementierung ist. In diesem Fall müssen Sie die Klasse keyManager oder den Namen eines Algorithmus angeben, den WebSphere Application Server vom Java-Sicherheitsprovider-Framework starten kann.

Eigener Key Manager

Der folgende Beispielcode zeigt die Key-Manager-Konfiguration für eine angepasste Klasse in der Datei security.xml.
<keyManagers xmi:id="KeyManager_2" name="CustomKeyManager" 
keyManagerClass="com.ibm.ws.ssl.core.CustomKeyManager" 
managementScope="ManagementScope_1"/>
Die angepasste Klasse muss die Schnittstelle "javax.net.ssl.X509KeyManager" und optional die Schnittstelle "com.ibm.wsspi.ssl.KeyManagerExtendedInfo" implementieren, um zusätzliche Informationen von WebSphere Application Server abzurufen. Diese Schnittstelle ersetzt die Funktion des Standard-Key-Managers, denn Sie können nur jeweils einen Key Manager konfigurieren. Die Auswahl des zu verwendenden Aliasnamens aus dem konfigurierten Keystore fällt somit allein in die Zuständigkeit des angepassten Key Managers. Der Vorteil eines eigenen Key Managers ist, dass auf der Clientseite die Eingabe eines Aliasnamens angefordert werden kann. Wenn der Benutzer die Identität des Clientzertifikats kennt, kann er entscheiden, welches Zertifikat er verwenden möchte. Weitere Informationen finden Sie unter Angepasste Key-Manager für SSL erstellen.

Symbol, das den Typ des Artikels anzeigt. Konzeptartikel



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