Sie lesen gerade die Dokumentation zu Apigee Edge.
Apigee X-Dokumentation aufrufen info
Darstellung virtueller Hosts
Das XML-Objekt, mit dem Sie einen virtuellen Host definieren, basiert auf Ihrer Edge-Version: Cloud oder Private Cloud.
Wenn Sie ein Private Cloud-Kunde sind, müssen Sie darauf achten, dass Sie das richtige XML für Ihre Edge-Version verwenden.
Cloud und Private Cloud 4.17.01 und höher
<VirtualHost name="vhostName">
<Port>portNumber</Port>
<BaseUrl>http://myCo.com</BaseUrl>
<OCSPStapling>offOn</OCSPStapling>
<HostAliases>
<HostAlias>hostAlias</HostAlias>
</HostAliases>
<Interfaces>
<!-- Private Cloud only -->
<Interface>interfaceName</Interface>
</Interfaces>
<RetryOptions>
<RetryOption>option</RetryOption>
</RetryOptions>
<ListenOptions>
<ListenOption>option</ListenOption>
</ListenOptions>
<SSLInfo>
<Enabled>trueFalse</Enabled>
<ClientAuthEnabled>trueFalse</ClientAuthEnabled>
<KeyStore>ref://keystoreRef</KeyStore>
<KeyAlias>keyAlias</KeyAlias>
<TrustStore>ref://truststoreRef</TrustStore>
<IgnoreValidationErrors>trueFalse</IgnoreValidationErrors>
</SSLInfo>
<!-- UseBuiltInFreeTrialCert is for Edge Cloud only -->
<UseBuiltInFreeTrialCert>trueFalse</UseBuiltInFreeTrialCert>
<PropagateTLSInformation>
<!-- PropagateTLSInformation is Alpha in the Cloud only -->
<ConnectionProperties>trueFalse</ConnectionProperties>
<ClientProperties>trueFalse</ClientProperties>
</PropagateTLSInformation>
<Properties>
<Property name="proxy_read_timeout">timeout</Property>
<Property name="keepalive_timeout">timeout</Property>
<Property name="proxy_request_buffering">onOff</Property>
<Property name="proxy_buffering">onOff</Property>
<!-- ssl_protocols is Private Cloud only -->
<Property name="ssl_protocols">protocolList</Property>
<Property name="ssl_ciphers">cipherList</Property>
</Properties>
</VirtualHost>Private Cloud 4.16.01 bis 4.16.09
<VirtualHost name="vhostName">
<Port>portNumber</Port>
<HostAliases>
<HostAlias>hostAlias</HostAlias>
</HostAliases>
<Interfaces>
<Interface>interfaceName</Interface>
</Interfaces>
<SSLInfo>
<Enabled>trueFalse</Enabled>
<ClientAuthEnabled>trueFalse</ClientAuthEnabled>
<KeyStore>ref://keystoreRef</KeyStore>
<KeyAlias>keyAlias</KeyAlias>
<TrustStore>ref://truststoreRef</TrustStore>
<IgnoreValidationErrors>trueFalse</IgnoreValidationErrors>
</SSLInfo>
</VirtualHost>Private Cloud 4.15.07 und früher
<VirtualHost name="vhostName">
<Port>portNumber</Port>
<HostAliases>
<HostAlias>hostAlias</HostAlias>
</HostAliases>
<Interfaces>
<Interface>interfaceName</Interface>
</Interfaces>
<SSLInfo>
<Enabled>trueFalse</Enabled>
<ClientAuthEnabled>trueFalse</ClientAuthEnabled>
<KeyStore>keystore</KeyStore>
<KeyAlias>keyAlias</KeyAlias>
<TrustStore>truststore</TrustStore>
<IgnoreValidationErrors>trueFalse</IgnoreValidationErrors>
<Ciphers>
<Cipher>cipher</Cipher>
<Cipher>cipher</Cipher>
</Ciphers>
<Protocols>
<Protocol>protocol</Protocol>
<Protocol>protocol</Protocol>
</Protocols>
</SSLInfo>
</VirtualHost>Konfigurationseigenschaften für virtuelle Hosts
In der folgenden Tabelle sind die Attribute aufgeführt, mit denen Sie einen virtuellen Host konfigurieren:
| Attribute | Beschreibung | Standard | Erforderlich | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| VirtualHost |
Gibt den Namen des virtuellen Hosts an. Sie verwenden diesen Namen, um beim Konfigurieren eines API-Proxys auf den virtuellen Host zu verweisen. Die Zeichen, die Sie im Attribut „name“ verwenden können, sind auf A–Z0–9._\-$% beschränkt. |
– | Ja | ||||||||||||
| Port |
Gibt die vom virtuellen Host verwendete Portnummer an. Prüfe, ob der Port auf dem Edge-Router geöffnet ist. Wenn Sie in einem Cloud: Beim Erstellen eines virtuellen Hosts müssen Sie Port 443 angeben. Wenn keine Angabe erfolgt, wird standardmäßig Port 443 verwendet. Wenn Sie einen vorhandenen virtuellen Host haben, der einen anderen Port als 443 verwendet, können Sie den Port nicht ändern. Für Private Cloud-Releases 4.16.01 bis 4.17.05:Wenn Sie einen virtuellen Host erstellen, geben Sie den Router-Port an, der vom virtuellen Host verwendet wird. Beispiel: Port 9001. Standardmäßig wird der Router als Nutzer „apigee“ ausgeführt, der keinen Zugriff auf privilegierte Ports hat, in der Regel Ports 1024 und darunter. Wenn Sie einen virtuellen Host erstellen möchten, der den Router an einen geschützten Port bindet, müssen Sie den Router so konfigurieren, dass er als Nutzer mit Zugriff auf diese Ports ausgeführt wird. Weitere Informationen finden Sie unter Virtuellen Host einrichten. Für Private Cloud-Releases vor 4.16.01:Ein Router kann nur eine HTTPS-Verbindung pro virtuellem Host an einem bestimmten Port mit dem angegebenen Zertifikat überwachen. Daher können mehrere virtuelle Hosts nicht dieselbe Portnummer verwenden, wenn die TLS-Terminierung auf dem Router am angegebenen Port erfolgt. |
– | Ja | ||||||||||||
| BaseUrl | Überschreibt die URL, die in der Edge-Benutzeroberfläche für einen API-Proxy angezeigt wird, der auf dem virtuellen Host bereitgestellt wird. Nützlich, wenn Sie einen externen Load Balancer vor den Edge-Routern haben. Weitere Informationen finden Sie unter TLS-Zugriff auf eine API für die Private Cloud konfigurieren.
Der Wert von |
– | Nein | ||||||||||||
| OCSPStapling |
Ein OCSP-Client (Online Certificate Status Protocol) sendet eine Statusanfrage an einen OCSP-Responder, um festzustellen, ob das TLS-Zertifikat gültig ist. Die Antwort gibt an, ob das TLS-Zertifikat gültig und nicht widerrufen ist. Wenn OCSP-Stapling aktiviert ist, kann Edge als TLS-Server für einseitiges TLS den OCSP-Antwortdienst direkt abfragen und die Antwort dann im Cache speichern. Edge gibt diese Antwort dann an den TLS-Client zurück oder heftet sie an, wenn der TLS-Handshake erfolgt. Weitere Informationen finden Sie unter OCSP-Stapling auf Ihrem Server aktivieren. TLS muss aktiviert sein, damit OCSP-Stapling aktiviert werden kann. Setzen Sie den Wert auf |
deaktiviert | Nein | ||||||||||||
| HostAliases | |||||||||||||||
| HostAlias |
Der öffentlich sichtbare DNS-Name des virtuellen Hosts auf dem Router, optional einschließlich der Portnummer. Die Kombination aus Hostaliasname und Portnummer für den virtuellen Host muss für alle virtuellen Hosts in der Edge-Installation eindeutig sein. Das bedeutet, dass mehrere virtuelle Hosts dieselbe Portnummer verwenden können, wenn sie unterschiedliche Hostaliasse haben. Sie müssen einen DNS-Eintrag und einen CNAME-Eintrag erstellen, der mit dem Host-Alias übereinstimmt. Der Host-Alias muss mit dem String übereinstimmen, den der Client im Die Portnummer in Sie können mehrere Sie können den Platzhalter „*“ im Hostalias verwenden. Der Platzhalter „*“ darf nur am Anfang des Host-Alias (vor dem ersten „.“) stehen und darf nicht mit anderen Zeichen kombiniert werden.
Beispiel: Cloud: Wenn Sie einen vorhandenen virtuellen Host haben, der einen anderen Port als 443 verwendet, können Sie keinen Hostalias hinzufügen oder entfernen. Für Private Cloud:Wenn Sie den Hostalias mithilfe der IP-Adressen Ihrer Router und nicht mit DNS-Einträgen festlegen, fügen Sie für jeden Router einen separaten Hostalias hinzu und geben Sie die IP-Adresse des jeweiligen Routers und den Port des virtuellen Hosts an. |
– | Ja | ||||||||||||
| Schnittstellen | Nur für Edge for Private Cloud verfügbar. | ||||||||||||||
| Schnittstelle |
Gibt die Netzwerkschnittstellen an, an die Wenn Sie beispielsweise den Port nur an „en0“ binden möchten, geben Sie Folgendes an: <Interfaces> <Interface>en0</Interface> </Interfaces> Ermitteln Sie die auf Ihrem System verfügbaren Schnittstellen, indem Sie den Befehl „ifconfig -a“ ausführen. |
– | Alle Schnittstellen | ||||||||||||
| RetryOptions | Verfügbar für Edge Cloud und Private Cloud 4.18.01 und höher. | ||||||||||||||
| RetryOption |
Konfigurieren Sie, wie der Router für diesen virtuellen Host reagiert, wenn der Message Processor ausfällt. Sie können mehrere Werte mit
Wenn Sie mehrere Werte angeben, werden sie vom Router mit einem logischen ODER kombiniert. Beispiel: <RetryOptions> <RetryOption>http_599</RetryOption> <RetryOption>error</RetryOption> <RetryOption>timeout</RetryOption> <RetryOption>invalid_header</RetryOption> </RetryOptions> |
||||||||||||||
| ListenOptions | Verfügbar für Private Cloud 4.18.01 und höher sowie für Edge Cloud durch eine Anfrage an den Apigee Edge-Support. | ||||||||||||||
| ListenOption |
Wenn Sie einen ELB im TCP-Pass-Through-Modus verwenden, um Anfragen an die Edge-Router zu verarbeiten, behandelt der Router die IP-Adresse des ELB als Client-IP anstelle der tatsächlichen Client-IP. Wenn der Router die tatsächliche Client-IP-Adresse benötigt, aktivieren Sie Der Standardwert für Beispiel: <ListenOptions> <ListenOption>proxy_protocol</ListenOption> </ListenOptions> Wenn Sie |
||||||||||||||
| SSLInfo | |||||||||||||||
| Aktiviert |
Aktiviert unidirektionale TLS/SSL. Sie müssen einen Schlüsselspeicher definiert haben, der das Zertifikat und den privaten Schlüssel enthält. Für Cloud: Sie benötigen ein Zertifikat, das von einer vertrauenswürdigen Stelle wie Symantec oder VeriSign signiert wurde. Sie können kein selbst signiertes Zertifikat oder von einer selbst signierten Zertifizierungsstelle signierte Blattzertifikate verwenden. Für Cloud: Wenn Ihr vorhandener virtueller Host für die Verwendung eines anderen Ports als 443 konfiguriert ist, können Sie die TLS-Einstellung nicht ändern. Das bedeutet, dass Sie die TLS-Einstellung nicht von „Aktiviert“ in „Deaktiviert“ oder umgekehrt ändern können. |
falsch | Nein | ||||||||||||
| ClientAuthEnabled | Aktiviert die bidirektionale oder Client-TLS zwischen Edge (Server) und der App (Client), die die Anfrage sendet. Für die Aktivierung der bidirektionalen TLS müssen Sie einen Truststore auf Edge einrichten, der das Zertifikat des TLS-Clients enthält. | falsch | Nein | ||||||||||||
| KeyStore |
Der Name des Schlüsselspeichers in Edge. Apigee empfiehlt, dass Sie einen Verweis verwenden, um den Namen des Schlüsselspeichers anzugeben, damit Sie den Schlüsselspeicher ändern können, ohne die Router neu starten zu müssen. Weitere Informationen finden Sie unter Optionen für die TLS-Konfiguration. |
– | Ja, wenn „Aktiviert“ auf „true“ gesetzt ist | ||||||||||||
| KeyAlias | Der Alias, der beim Hochladen des Zertifikats und des privaten Schlüssels in den Schlüsselspeicher angegeben wurde. Sie müssen den Aliasnamen wörtlich angeben. Sie können keinen Verweis verwenden. Weitere Informationen finden Sie unter Optionen für die TLS-Konfiguration. | – | Ja, wenn „Aktiviert“ auf „true“ gesetzt ist | ||||||||||||
| TrustStore |
Der Name des Truststore auf Edge, der das Zertifikat oder die Zertifikatskette enthält, die für die bidirektionale TLS-Authentifizierung verwendet wird. Erforderlich, wenn Apigee empfiehlt, dass Sie einen Verweis verwenden, um den Truststore-Namen anzugeben, damit Sie den Truststore ändern können, ohne die Router neu starten zu müssen. Weitere Informationen finden Sie unter Optionen für die TLS-Konfiguration. |
– | Nein | ||||||||||||
| IgnoreValidationErrors |
Bei „true“ werden TLS-Zertifikatsfehler ignoriert. Das ist ähnlich wie die Option „-k“ für cURL. Diese Option ist gültig, wenn Sie TLS für Zielserver und Zielendpunkte konfigurieren und wenn Sie virtuelle Hosts konfigurieren, die bidirektionale TLS verwenden. 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. |
falsch | Nein | ||||||||||||
| Chiffren |
Nur für Edge for Private Cloud-Version 4.15.07 und früher. Gibt die vom virtuellen Host unterstützten Chiffren an. Wenn keine Chiffren angegeben sind, sind alle für die JVM verfügbaren Chiffren erlaubt. Fügen Sie die folgenden Elemente hinzu, um die Chiffren einzuschränken: <Ciphers> <Cipher>TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA</Cipher> <Cipher>TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256</Cipher> </Ciphers> |
Alle von der JVM unterstützten | Nein | ||||||||||||
| Protokolle |
Nur für Edge for Private Cloud-Version 4.15.07 und früher. Gibt die vom virtuellen Host unterstützten Protokolle an. Wenn keine Protokolle angegeben sind, sind alle für die JVM verfügbaren Protokolle zulässig. Fügen Sie die folgenden Elemente hinzu, um Protokolle einzuschränken: <Protocols> <Protocol>TLSv1</Protocol> <Protocol>TLSv1.2</Protocol> <Protocol>SSLv2Hello</Protocol> </Protocols> |
Alle von der JVM unterstützten | Nein | ||||||||||||
| UseBuiltInFreeTrialCert | Nur für Edge Cloud verfügbar. | ||||||||||||||
| UseBuiltInFreeTrialCert |
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-Zertifikat und den Schlüssel für den kostenlosen Testzeitraum verwendet. Das bedeutet, dass Sie den virtuellen Host erstellen können, ohne zuvor einen Schlüsselspeicher zu erstellen. Das kostenlose Apigee-Testzertifikat ist für die Domain Weitere Informationen finden Sie unter Virtuellen Host definieren, der das Apigee Freetrial-Zertifikat und den Schlüssel verwendet. |
falsch | Nein | ||||||||||||
| PropagateTLSInformation | Nur in der Alphaversion für Edge Cloud verfügbar. | ||||||||||||||
| ConnectionProperties |
Ermöglicht das Erfassen von TLS-Verbindungsinformationen durch Edge. Diese Informationen sind dann als Ablaufvariablen in einem API-Proxy verfügbar. Weitere Informationen finden Sie unter Zugriff auf TLS-Verbindungsinformationen in einem API-Proxy. |
falsch | Nein | ||||||||||||
| ClientProperties |
Aktiviert die Erfassung von Details zum Clientzertifikat, die von Edge in bidirektionaler TLS erfasst werden. Diese Informationen sind dann als Ablaufvariablen in einem API-Proxy verfügbar. Weitere Informationen finden Sie unter Zugriff auf TLS-Verbindungsinformationen in einem API-Proxy. |
falsch | Nein | ||||||||||||
| Properties | Verfügbar für Edge Cloud und Private Cloud 4.17.01 und höher. | ||||||||||||||
| proxy_read_timeout |
Legt die Zeitüberschreitungsdauer in Sekunden zwischen Message Processors und dem Router fest. Der Router trennt die Verbindung und gibt eine HTTP 504-Antwort zurück, wenn er vor Ablauf dieses Zeitraums keine Antwort vom Message Processor erhält. Der Wert von „proxy_read_timeout“ sollte größer als der vom Message Processor verwendete Ziel-Zeitlimitwert sein. So wird sichergestellt, dass für den Router kein Zeitlimit überschritten wird, bevor der Message Processor eine Antwort zurückgeben konnte. Das Standardziel-Zeitlimit für den Message Processor beträgt 55 Sekunden (55.000 Millisekunden), wie durch das |
57 | Nein | ||||||||||||
| keepalive_timeout |
Legt die Zeitüberschreitungsdauer in Sekunden zwischen dem Client und dem Router fest, wenn der Client eine Anfrage mit dem Keep-Alive-Header stellt. Der Router hält die Verbindung offen, bis die Dauer abgelaufen ist. Der Router schließt die Verbindung nicht, wenn er gerade auf eine Antwort vom Nachrichtenprozessor wartet. Das Zeitlimit beginnt erst, nachdem der Router die Antwort an den Client zurückgegeben hat. |
65 | Nein | ||||||||||||
| ssl_ciphers |
Legt die vom virtuellen Host unterstützten Chiffren fest und überschreibt die Standardchiffren, die auf dem Router festgelegt sind. Geben Sie eine durch Doppelpunkte getrennte Liste von Chiffren im folgenden Format an: <Property name="ssl_ciphers">HIGH:!aNULL:!MD5:!DH+3DES:!kEDH;</Property> Informationen zur Syntax und zu den von diesem Token zulässigen Werten finden Sie unter https://www.openssl.org/docs/man1.0.2/man1/ciphers.html. Dieses Token verwendet die OpenSSL-Chiffrenamen wie AES128-SHA256 und nicht die Java-/JSSE-Chiffrenamen wie TLS_RSA_WITH_AES_128_CBC_SHA256. |
HIGH:!aNULL:
!MD5: !DH+3DES: !kEDH |
Nein | ||||||||||||
| ssl_protocols |
Nur für Edge for Private Cloud verfügbar. Legt die vom virtuellen Host unterstützten TLS-Protokolle als durch Leerzeichen getrennte Liste fest und überschreibt die auf dem Router festgelegten Standardprotokolle. Hinweis: Wenn sich zwei virtuelle Hosts denselben Port teilen, muss für Geben Sie eine Liste mit durch Leerzeichen voneinander getrennten TLS-Protokollen im folgenden Format an: <Property name="ssl_protocols">TLSv1 TLSv1.2</Property> |
TLSv1 TLSv1.1 TLSv1.2 | Nein | ||||||||||||
| proxy_request_buffering |
Aktiviert (on) oder deaktiviert (off) das Puffern des Anfragetexts. Wenn das Puffern aktiviert ist, puffert der Router den gesamten Anfragetextkörper, bevor er ihn an den Message Processor sendet. Wenn ein Fehler auftritt, kann der Router einen anderen Message Processor verwenden. Wenn diese Option deaktiviert ist, wird das Puffern deaktiviert und der Anfragetext wird sofort nach dem Empfang an den Message Processor gesendet. Wenn ein Fehler auftritt, wiederholt der Router die Anfrage nicht an einen anderen Message Processor. |
am | Nein | ||||||||||||
| proxy_buffering | Aktiviert (on) oder deaktiviert (off) das Puffern der Antwort. Wenn die Pufferung aktiviert ist, puffert der Router die Antwort. Wenn das Puffern deaktiviert ist, wird die Antwort synchron an den Client weitergeleitet, sobald sie vom Router empfangen wird. | am | Nein | ||||||||||||