Edge for Private Cloud Version 4.16.05
TLS (Transport Layer Security, dessen Vorgänger SSL) ist, ist die Standardsicherheitstechnologie zum Sicherstellen eines sicheren, verschlüsselten Messagings in Ihrer gesamten API-Umgebung, von Anwendungen über Apigee Edge bis hin zu Ihren Back-End-Diensten.
Unabhängig von der Umgebungskonfiguration für Ihre Verwaltungs-API – z. B. ob Sie einen Proxy, einen Router und/oder einen Load-Balancer vor Ihrer Verwaltungs-API verwenden (oder nicht) – können Sie mit Edge TLS aktivieren und konfigurieren und damit die Kontrolle über die Nachrichtenverschlüsselung in Ihrer lokalen API-Verwaltungsumgebung haben.
Für eine lokale Installation von Edge Private Cloud gibt es mehrere Orte, an denen Sie TLS konfigurieren können:
- Zwischen Router und Message Processor
- Für den Zugriff auf die Edge-Verwaltungs-API
- Für den Zugriff auf die Edge-Verwaltungs-UI
- Für den Zugriff von einer App auf Ihre APIs
- Für den Zugriff von Edge auf Ihre Back-End-Dienste
Im Folgenden wird beschrieben, wie Sie TLS für die ersten drei Elemente konfigurieren. Bei allen diesen Schritten wird davon ausgegangen, dass Sie eine JKS-Datei mit Ihrer TLS-Zertifizierung und Ihrem privaten Schlüssel erstellt haben.
Informationen zum Konfigurieren von TLS für den Zugriff von einer App auf Ihre APIs (siehe Schritt 4 oben) finden Sie unter TLS-Zugriff auf eine API für die Private Cloud konfigurieren. Informationen zum Konfigurieren von TLS für den Zugriff von Edge auf Ihre Back-End-Dienste finden Sie unter TLS von Edge zum Back-End (Cloud und Private Cloud) konfigurieren.
Eine vollständige Übersicht über das Konfigurieren von TLS on Edge finden Sie unter TLS/SSL.
JKS-Datei erstellen
Sie stellen den Schlüsselspeicher als JKS-Datei dar, in der der Schlüsselspeicher Ihr TLS-Zertifikat und den privaten Schlüssel enthält. Es gibt verschiedene Möglichkeiten, eine JKS-Datei zu erstellen, aber eine Möglichkeit besteht darin, die Dienstprogramme „openssl“ und „keytool“ zu verwenden.
Sie haben beispielsweise eine PEM-Datei namens server.pem, die Ihr TLS-Zertifikat enthält, und eine PEM-Datei namens private_key.pem, die Ihren privaten Schlüssel enthält. Erstellen Sie mit den folgenden Befehlen die PKCS12-Datei:
> openssl pkcs12 -export -clcerts -in server.pem -inkey private_key.pem -out keystore.pkcs12
Sie müssen die Passphrase für den Schlüssel, falls vorhanden, sowie ein Exportpasswort eingeben. Mit diesem Befehl wird eine PKCS12-Datei mit dem Namen keystore.pkcs12 erstellt.
Verwenden Sie den folgenden Befehl, um sie in eine JKS-Datei namens keystore.jks zu konvertieren:
> keytool -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks
Sie werden aufgefordert, das neue Passwort für die JKS-Datei und das vorhandene Passwort für die PKCS12-Datei einzugeben. Achten Sie darauf, dass Sie für die JKS-Datei dasselbe Passwort verwenden wie für die PKCS12-Datei.
Wenn Sie einen Schlüsselalias angeben müssen, z. B. beim Konfigurieren von TLS zwischen einem Router und dem Message Processor, fügen Sie dem Befehl „openssl“ die Option -name" hinzu:
> openssl pkcs12 -export -clcerts -in server.pem -inkey private_key.pem -out keystore.pkcs12 -name devtest
Fügen Sie dann die Option "-alias" in den Befehl keytool ein:
> keytool -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks -alias devtest
Verschleiertes Passwort generieren
Für einige Teile des Edge-TLS-Konfigurationsverfahrens müssen Sie ein verschleiertes Passwort in einer Konfigurationsdatei eingeben. Ein verschleiertes Passwort ist eine sicherere Alternative zur Eingabe eines Passworts im Nur-Text-Format.
Sie können ein verschleiertes Passwort in Java mithilfe der mit Edge installierten Jetty-JAR-Dateien erstellen. Verwenden Sie zum Bestätigen des verschleierten Passworts einen Befehl im folgenden Format:
> java -cp /<inst_root>/apigee/edge-gateway/lib/thirdparty/jetty-http-x.y.z.jar:/<inst_root>/apigee/edge-gateway/lib/thirdparty/jetty-util-x.y.z.jar org.eclipse.jetty.http.security.Password yourPassword
Dabei gibt x.y.z die Versionsnummer der Jetty-JAR-Dateien an, z. B. 8.0.4.v20111024. Dieser Befehl gibt das Passwort in folgendem Format zurück:
yourPassword OBF:58fh40h61svy156789gk1saj MD5:902fobg9d80e6043b394cb2314e9c6
Verwenden Sie beim Konfigurieren von TLS das von OBF angegebene verschleierte Passwort.
Weitere Informationen finden Sie in diesem Artikel.