Sie lesen gerade die Dokumentation zu Apigee Edge.
Zur
Dokumentation zuApigee X wechseln. info
Dieses Dokument enthält eine Übersicht zur Konfiguration von TLS in Edge für zwei Funktionsbereiche:
- Zugriff auf Ihre API-Proxys von API-Clients. Konfigurieren Sie TLS mithilfe von virtuellen Hosts auf dem Edge Router.
- Zugriff auf Ihre Back-End-Dienste über Edge. Konfigurieren Sie TLS mithilfe von Zielendpunkten und Ziel servern im Edge Message Processor.
Beide Zugriffstypen werden unten dargestellt:

TLS-Optionen auf einem virtuellen Host oder Zielendpunkt/Zielserver festlegen
Ein virtueller Host kann durch ein XML-Objekt in folgendem Format dargestellt werden:
<VirtualHost name="secure">
...
<SSLInfo>
<Enabled>true</Enabled>
<ClientAuthEnabled>true</ClientAuthEnabled>
<KeyStore>ref://myKeystoreRef</KeyStore>
<KeyAlias>myKeyAlias</KeyAlias>
<TrustStore>ref://myTruststoreRef</TrustStore>
<IgnoreValidationErrors>false</IgnoreValidationErrors>
</SSLInfo>
</VirtualHost>Der Bereich des virtuellen Hosts, den Sie zum Konfigurieren von TLS ändern, wird durch das <SSLInfo> Tag definiert. Sie verwenden dasselbe Tag <SSLInfo>, um einen Zielendpunkt oder Zielserver zu konfigurieren.
In folgender Tabelle werden die TLS-Konfigurationselemente beschrieben, die vom <SSLInfo>-Tag verwendet werden:
| Element | Beschreibung |
|---|---|
| <Enabled> |
Aktiviert eine einseitige TLS-Verbindung zwischen Edge und dem API-Client oder zwischen Edge und dem Ziel Back-End. Für einen virtuellen Host müssen Sie einen Schlüsselspeicher definieren, der Zertifikat und privaten Schlüssel enthält. |
| <ClientAuthEnabled> |
Aktiviert die bidirektionale TLS zwischen Edge und dem API-Client oder zwischen Edge und dem Ziel Back-End. Für die Aktivierung der bidirektionalen TLS müssen Sie normalerweise einen Truststore auf Edge einrichten. |
| <KeyStore> | Der Schlüsselspeicher. |
| <KeyAlias> | Der Alias, der beim Hochladen eines Zertifikats und eines privaten Schlüssels in den Schlüsselspeicher angegeben wurde. |
| <TrustStore> | Der Truststore. |
| <IgnoreValidationErrors> | Falls wahr, ignoriert Edge TLS-Zertifikatsfehler. Gültig beim Konfigurieren der TLS für Zielserver und Zielendpunkte und beim Konfigurieren von virtuellen Hosts, die bidirektionale TLS verwenden. Der Standardwert ist "false". Wird das Back-End-System zusammen mit einem Zielendpunkt/Zielserver verwendet, kann, wenn das Back-End-System SNI nutzt und ein Zertifikat mit einem Subjekt-DN (Subject Distinguished Name) zurückgibt, der nicht mit dem Hostnamen übereinstimmt, der Fehler nicht ignoriert werden und die Verbindung schlägt fehl. |
| <CommonName> | Wenn angegeben, ein Wert, mit dem der allgemeine Name des Zielzertifikats validiert wird. Dieser Wert ist nur für TargetEndpoint- und TargetServer-Konfigurationen gültig. Er ist nicht für VirtualHost-Konfigurationen gültig. Standardmäßig wird der angegebene Wert genau mit dem allgemeinen Namen des Zielzertifikats verglichen.
Wenn Sie beispielsweise Optional kann Apigee den Abgleich mit Platzhaltern mithilfe des Attributs Ein allgemeiner Name, der in einem Zielzertifikat als <CommonName wildcardMatch="true">*.myhost.com</CommonName> |
Informationen zum Festlegen der <KeyStore> und <TrustStore> Elemente
Im Beispiel für einen virtuellen Host oben werden Keystore und Truststore durch Verweise im folgenden Format angegeben:
<KeyStore>ref://myKeystoreRef</KeyStore> <TrustStore>ref://myTruststoreRef</TrustStore>
Apigee empfiehlt dringend, dass Sie Verweise auf Schlüsselspeicher und Truststore verwenden. Ein Verweis ist eine Variable, die den Namen des Schlüsselspeichers oder Truststore enthält, statt den Namen des Schlüsselspeichers direkt anzugeben. In diesem Beispiel:
myKeystoreRefist eine Referenz, die den Namen des Schlüsselspeichers enthält. In diesem Beispiel lautet der Name des Schlüsselspeichers myKeystore.myTruststoreRefist eine Referenz, die den Namen des Truststore enthält. In diesem Beispiel lautet der Name des Truststore myTruststore.
Läuft ein Zertifikat ab, müssen Sie den virtuellen Host oder Zielendpunkt/Zielserver aktualisieren, um den Keystore oder Truststore mit dem neuen Zertifikat anzugeben. Der Vorteil eines Verweises besteht darin, dass Sie den Wert des Verweises ändern können, um den Schlüsselspeicher oder Truststore zu ändern, ohne den virtuellen Host oder Zielendpunkt/Zielserver selbst ändern zu müssen:
- Für Cloud-Kunden: Sie müssen sich nicht an den Apigee Edge-Support wenden, um den Wert des Verweises zu ändern.
- Für Private Cloud-Kunden: Sie müssen keine Edge-Komponenten wie Router und Message Processors neu starten, um den Wert des Verweises zu ändern.
Alternativ können Sie den Schlüsselspeicher- und den Truststore-Namen direkt angeben:
<KeyStore>myKeystore</KeyStore> <TrustStore>myTruststore</TrustStore>
Wenn Sie den Namen des Schlüsselspeichers oder Truststore direkt angeben, müssen sich Cloud-Kunden an den Apigee Edge-Support wenden und Private Cloud-Kunden bestimmte Edge-Komponenten neu starten, um das Zertifikat zu aktualisieren.
Eine dritte Option ist nur für Zielendpunkte/Zielserver die Verwendung von Flussvariablen:
<KeyStore>{ssl.keystore}</KeyStore>
<TrustStore>{ssl.truststore}</TrustStore> Ablaufvariablen funktionieren für Zielendpunkte/Zielserver, mit denen Sie den Schlüsselspeicher oder Truststore wie Verweise aktualisieren können. Sie funktionieren jedoch nicht mit virtuellen Hosts. Sie müssen bei jeder Anfrage Informationen zum Schlüsselspeicher, Alias und Truststore senden.
Einschränkungen bei der Verwendung von Verweisen auf Schlüsselspeicher und Truststore
Zahlende Cloud-Kunden und alle Private Cloud-Kunden, die TLS konfigurieren, müssen folgende Beschränkung berücksichtigen, wenn sie Verweise auf Schlüsselspeicher und Truststores verwenden:
- Sie können Schlüsselspeicher- und Truststore-Verweise nur auf virtuellen Hosts verwenden, wenn Sie die TLS für die Apigee-Router beenden.
- Wenn Sie einen Load-Balancer vor den Apigee-Routern haben und die TLS auf dem Load-Balancer beenden, können Sie keine Schlüsselspeicher- und Truststore-Verweise in virtuellen Hosts verwenden.
Wenn Ihr bestehender virtueller Host einen Schlüsselspeicher oder Truststore-Literal verwendet
Vorhandene virtuelle Hosts in Edge sind möglicherweise nicht für die Verwendung von Verweisen auf Schlüsselspeicher und Truststores konfiguriert. In diesem Fall können Sie den virtuellen Host so aktualisieren, dass er Verweise verwendet.
Edge for the Cloud
Um den virtuellen Host auf die Verwendung von Verweisen auf den Schlüsselspeicher umzustellen, müssen Sie mit dem Apigee Edge-Support zusammenarbeiten.
Edge for Private Cloud
So stellen Sie den virtuellen Host auf die Verwendung von Verweisen um:
- Aktualisieren Sie den virtuellen Host, um Verweise zu verwenden.
- Starten Sie die Router neu.
Verwendung des Apigee Freetrial-Zertifikats und -Schlüssels
Wenn Sie ein kostenpflichtiges Edge for Cloud-Konto haben und noch kein TLS-Zertifikat und -Schlüssel haben, können Sie einen virtuellen Host erstellen, der das Apigee Freetrial-Zertifikat und den Schlüssel verwendet. Das bedeutet, dass Sie den virtuellen Host erstellen können, ohne zuvor einen Schlüsselspeicher zu erstellen.
Ein XML-Objekt, das den virtuellen Host mit dem Apigee Freetrial-Zertifikat und dem entsprechenden Schlüssel definiert, übergeht die
<KeyStore> und <KeyAlias> Elemente und ersetzt sie durch das
<UseBuiltInFreeTrialCert> Element, wie unten dargestellt:
<VirtualHost name="myTLSVHost">
<HostAliases>
<HostAlias>myapi.apigee.net</HostAlias>
</HostAliases>
<Port>443</Port>
<SSLInfo>
<Enabled>true</Enabled>
<ClientAuthEnabled>false</ClientAuthEnabled>
</SSLInfo>
<UseBuiltInFreeTrialCert>true</UseBuiltInFreeTrialCert>
</VirtualHost>Wenn Sie die bidirektionale TLS nutzen, müssen Sie das <ClientAuthEnabled> Element dennoch auf
true festlegen und einen Truststore angeben. Nutzen Sie dazu einen Verweis mit dem <TrustStore> Element.
Weitere Informationen finden Sie unter Virtuelle Hosts für die Cloud konfigurieren.
Informationen zur TLS-Konfiguration
Zwei Hauptfaktoren bestimmen, wie Sie die TLS-Konfiguration durchführen:
- Sind Sie Edge Cloud- oder Private Cloud-Kunde?
- Wie möchten Sie abgelaufene oder bald ablaufende Zertifikate aktualisieren?
Optionen bei der Konfiguration von Clouds und Privaten Clouds Optionen
Die folgende Tabelle zeigt die verschiedenen Konfigurationsoptionen für Cloud- und Private Cloud Kunden:
| Private Cloud | Cloud | |
|---|---|---|
| Virtueller Host | Volle Kontrolle | Die vollständige Kontrolle ist nur für kostenpflichtige Konten verfügbar |
| Zielendpunkt/Zielserver | Volle Kontrolle | Volle Kontrolle |
Private Cloud-Kunden haben die vollständige Kontrolle über die Konfiguration von virtuellen Hosts und Zielendpunkten/Zielservern. Diese Kontrolle umfasst die Möglichkeit, virtuelle Hosts zu erstellen und zu löschen sowie alle Attribute für einen virtuellen Host festzulegen.
Alle Cloud-Kunden, sowohl zahlende als auch solche in der Probephase, haben die vollständige Kontrolle über die Konfiguration der Zielendpunkte/Zielserver. Darüber hinaus haben zahlende Cloud-Kunden die vollständige Kontrolle über virtuelle Hosts, einschließlich der TLS-Attribute.
Umgang mit abgelaufenen Zertifikaten
Wenn ein TLS-Zertifikat abläuft oder Ihre Systemkonfiguration so geändert wird, dass das Zertifikat nicht mehr gültig ist, muss das Zertifikat aktualisiert werden. Wenn Sie die TLS für einen virtuellen Host oder Zielendpunkt/Zielserver konfigurieren, sollten Sie vor der Konfiguration festlegen, wie Sie dieses Update durchführen.
Vorgehensweise bei abgelaufenem Zertifikat
In Edge werden Zertifikate an einem von zwei Orten gespeichert:
- Schlüsselspeicher : Enthält das TLS-Zertifikat und den privaten Schlüssel, um die Entität während des TLS-Handshakes zu identifizieren.
- Truststore: Enthält vertrauenswürdige Zertifikate auf einem TLS-Client, mit denen das dem Client dargestellte Zertifikat eines TLS-Servers validiert wird. Diese Zertifikate sind normalerweise selbstsignierte Zertifikate, von einer vertrauenswürdigen Zertifizierungsstelle signierte Zertifikate oder Zertifikate, die im Rahmen von bidirektionaler TLS-Authentifizierung verwendet werden.
Wenn ein Zertifikat in einem Schlüsselspeicher abläuft und Sie einen Verweis auf den Schlüsselspeicher verwenden, können Sie kein neues Zertifikat in den Schlüsselspeicher hochladen. Gehen Sie stattdessen so vor:
- Erstellen Sie einen neuen Schlüsselspeicher.
- Laden Sie ein neues Zertifikat mit demselben Aliasnamen wie dem des alten Schlüsselspeichers in den neuen Schlüsselspeicher hoch.
- Aktualisieren Sie den Verweis in Ihrem virtuellen Host oder Zielserver/Zielendpunkt, um den neuen Truststore zu verwenden.
Wenn ein Zertifikat in einem Truststore abläuft und Sie einen Verweis auf den Truststore verwenden:
- Erstellen Sie einen neuen Truststore.
- Laden Sie das neue Zertifikat in den neuen Truststore hoch. Der Aliasname spielt für Truststores keine Rolle. Hinweis: Wenn ein Zertifikat Teil einer Kette ist, müssen Sie entweder eine einzelne Datei mit allen Zertifikaten erstellen und diese Datei in einen einzelnen Alias hochladen oder alle Zertifikate in der Kette separat mit dem Truststore verknüpft werden.
- Aktualisieren Sie den Verweis in Ihrem virtuellen Host oder Zielserver/Zielendpunkt, um den neuen Truststore zu verwenden.
Zusammenfassung der Methoden zum Aktualisieren eines abgelaufenen Zertifikats
Die Methode, die Sie zur Angabe des Namens des Schlüsselspeichers oder des Truststores auf dem virtuellen Host oder Zielendpunkt/Zielserver nutzen, richtet sich nach der verwendeten Methode. Sie können Folgendes angeben:
- Verweise
- Direkte Namen
- Ablaufvariablen
Jede dieser Methoden hat unterschiedliche Auswirkungen auf den Aktualisierungsprozess, wie in der folgenden Tabelle beschrieben. Wie Sie sehen, bieten Verweise sowohl für Cloud- als auch für Private Cloud-Kunden die größte Flexibilität:
| Konfigurationstyp | Zertifikat aktualisieren/ersetzen | Private Cloud | Cloud |
|---|---|---|---|
| Referenz (empfohlen) |
Erstellen Sie für einen Schlüsselspeicher einen neuen Schlüsselspeicher mit einem neuen Namen und einem Alias mit
demselben Namen wie dem des alten Alias.
Erstellen Sie bei einem Truststore einen Truststore mit einem neuen Namen. |
Aktualisieren Sie den Verweis auf den Schlüsselspeicher oder Truststore.
Ein Neustart des Routers oder Message Processor ist nicht erforderlich. |
Aktualisieren Sie den Verweis auf den Schlüsselspeicher oder Truststore.
Sie müssen den Apigee-Support nicht kontaktieren. |
| Ablaufvariablen (nur Zielendpunkt) |
Erstellen Sie für einen Schlüsselspeicher einen neuen Schlüsselspeicher mit einem neuen Namen und einem Alias mit
demselben oder einem neuen Namen.
Erstellen Sie bei einem Truststore einen Truststore mit einem neuen Namen. |
Übergeben Sie bei jeder Anfrage die aktualisierte Ablaufvariable mit dem Namen des neuen Schlüsselspeichers, dem Alias oder des
Truststore.
Ein Neustart des Routers oder Message Processor ist nicht erforderlich. |
Übergeben Sie bei jeder Anfrage die aktualisierte Ablaufvariable mit dem Namen des neuen Schlüsselspeichers, dem Alias oder des
Truststore.
Sie müssen den Apigee-Support nicht kontaktieren. |
| Direkt | Erstellen Sie einen neuen Schlüsselspeicher, einen Alias oder einen Truststore. |
Aktualisieren Sie den virtuellen Host und starten Sie die Router neu.
Wenn der Truststore von einem Zielendpunkt/Zielserver verwendet wird, stellen Sie den Proxy neu bereit. |
Wenden Sie sich bei virtuellen Hosts an den Apigee Edge-Support, um die Router neu zu starten.
Wenn der Truststore von einem Zielendpunkt/Zielserver verwendet wird, stellen Sie den Proxy neu bereit. |
| Direkt | Löschen Sie den Schlüsselspeicher oder Truststore und erstellen Sie ihn noch einmal mit demselben Namen. |
Der virtuelle Host muss nicht aktualisiert werden, ein Neustart des Routers ist nicht erforderlich. Allerdings schlagen API-Anfragen fehl
bis der neue Schlüsselspeicher und der neue Alias festgelegt sind.
Wenn der Schlüsselspeicher für das bidirektionale TLS zwischen Edge und dem Backend-Dienst verwendet wird, starten Sie die Message Processors neu. |
Der virtuelle Host muss nicht aktualisiert werden. Allerdings schlagen API-Anfragen fehl, bis der neue Schlüsselspeicher und
Alias festgelegt sind.
Wenn der Schlüsselspeicher für das bidirektionale TLS zwischen Edge und dem Backend-Dienst verwendet wird, wenden Sie sich an den Apigee Edge-Support , um die Message Processors neu zu starten. |
| Direkt | Laden Sie nur für Truststores ein neues Zertifikat in den Truststore hoch. |
Wenn der Truststore von einem virtuellen Host verwendet wird, starten Sie die Router neu.
Wenn der Truststore von einem Zielendpunkt/Zielserver verwendet wird, starten Sie die Message Processors neu. |
Wenden Sie sich bei virtuellen Hosts an den Apigee Edge-Support, um die Edge-Router neu zu starten.
Wenn der Truststore von einem Zielendpunkt/Zielserver verwendet wird, wenden Sie sich an den Apigee Edge-Support , um die Message Processors neu zu starten. |