Schlüsselpaare für WS-Trust erstellen
WS-Trust Web-Service Security ist nur im Single-Modus möglich. |
Verwendung
Absicherung meist mehrerer Web-Services durch einen Security Token Service (STS) über zwei Schlüsselpaare
-
Schlüssel zur Authentifizierung eines Clients am STS-Server
-
Schlüssel zur Authentifizierung eines Clients am Web-Service
Funktionsweise
Beim initialen Aufruf eines Web-Service authentifiziert sich der Client zuerst am STS.
Nach erfolgreicher Authentifizierung erhält der aufrufende Service den öffentlichen Schlüssel des Web-Service vom STS, wodurch der Zugriff auf dem Web-Service ermöglicht wird.
Die Authentifizierung am STS erfolgt mit WS-Secure-Conversation nur einmalig.
Um mit einer einmaligen Authentifizierung am STS den Zugriff auf mehrere Web-Service zu ermöglichen, müssen alle Webservices dieser Gruppe dasselbe Schlüsselpaar nutzen.
Selbstsigniertes Security-Token-Service-/STS-Schlüsselpaar erstellen
Verwendung
Zur Authentifizierung eines Clients an einem Security Token Service
So gehen Sie vor
-
Generieren Sie ein Schlüsselpaar mit der
SubjectKeyIdentifier
-Erweiterung.Setzen Sie dazu die Optionen gemäß Ihren Anforderungen:
openssl req -x509 -days 9999 -nodes -newkey rsa:2048 -subj "/C=myCountry/ST=myState/L=myCity/O=myOrganization/OU=myDepartment/CN=myServerName" ‑keyout STS.key -out STS.crt -extensions v3_ca
-
Konvertieren Sie das im Schritt 1 generierte Schlüsselpaar in das PKCS12-Format, um es in den Java-Keystore importieren zu können. Dabei müssen Sie ein Passwort vergeben.
openssl pkcs12 -export -in STS.crt -inkey STS.key -out STS.p12
-
Importieren Sie die PKCS12-Datei in den Java-Keystore.
keytool -importkeystore -srckeystore STS.p12 -srcstoretype pkcs12 ‑srcalias 1 -srcstorepass <yourPassword> -destkeystore STS.keystore.jks ‑destalias tomcat -deststorepass <yourPassword>
-
Generieren Sie einen JKS-Truststore mit dem Service-Zertifikat. Als Passwort geben Sie das im Schritt 2 vergebene Passwort an.
keytool -importcert -keystore STS.truststore.jks -file STS.crt ‑alias tomcat -storepass inubit
Selbstsigniertes Service-Schlüsselpaar erstellen
Verwendung
Zur Authentifizierung eines Clients an einem STS-gesicherten Web-Service
So gehen Sie vor
-
Generieren Sie ein Schlüsselpaar mit der
SubjectKeyIdentifier
-Erweiterung.Setzen Sie dazu die Optionen gemäß Ihren Anforderungen:
openssl req -x509 -days 9999 -nodes -newkey rsa:2048 -subj "/C=myCountry/ST=myState/L=myCity/O=myOrganization/OU=myDepartment/CN=myServerName" ‑keyout SecuredService.key -out SecuredService.crt -extensions v3_ca
-
Konvertieren Sie das im Schritt 1 generierte Schlüsselpaar in das PKCS12-Format, um es in den Java-Keystore importieren zu können. Dabei müssen Sie ein Passwort vergeben.
openssl pkcs12 -export -in SecuredService.crt -inkey SecuredService.key ‑out SecuredService.p12
-
Importieren Sie die PKCS12-Datei in den Java-Keystore.
keytool -importkeystore -srckeystore SecuredService.p12 ‑srcstoretype pkcs12 -srcalias 1 -srcstorepass INUBIT ‑destkeystore SecuredService.keystore.jks -destalias tomcat ‑deststorepass <yourPassword>