<ph type="x-smartling-placeholder"></ph>
Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur
Apigee X-Dokumentation. Weitere Informationen
Ein Cloud-Kunde mit einem kostenpflichtigen Konto und alle Edge for Private Cloud-Kunden einen virtuellen Host in einer Organisation erstellen. Der Nutzer Das Erstellen des virtuellen Hosts muss in der Rolle des Organisationsadministrators oder in einer benutzerdefinierte Rolle mit Berechtigungen zum Ändern eines virtuellen Hosts. Nutzer mit anderen Rollen haben zum Erstellen virtueller Hosts autorisiert.
Einführungsvideo zu virtuellen Hosts ansehen
Virtuellen Host erstellen
Gehen Sie wie im Folgenden beschrieben vor, um den virtuellen Host zu erstellen. Welches Verfahren Sie tatsächlich verwenden, hängt davon ab, ob Sie Cloud- oder Private Cloud-Kunde sind. und ob TLS aktiviert ist:
- Erstellen Sie einen DNS-Eintrag und einen CNAME-Eintrag für Ihre öffentlich zugängliche Domain.
- Wenn Sie TLS auf dem virtuellen Host aktivieren:
- Erstellen und konfigurieren Sie einen Schlüsselspeicher mithilfe des hier beschriebenen Verfahrens: Schlüsselspeicher und Truststores.
- Laden Sie Ihr Zertifikat und Ihren Schlüssel in den Schlüsselspeicher hoch. Stellen Sie sicher, dass der in Ihrem cert entspricht dem Host-Alias, den Sie für den virtuellen Host verwenden möchten.
- Erstellen Sie mithilfe der Edge-Benutzeroberfläche oder -API einen Verweis auf den Schlüsselspeicher. Die Referenz
gibt den Namen des Schlüsselspeichers und den Referenztyp als
KeyStore
an. Weitere Informationen finden Sie unter Mit Referenzen arbeiten für zum Erstellen und Ändern von Referenzen. - Wenn Sie Zwei-Wege-TLS verwenden, erstellen Sie einen Truststore, laden Sie das Zertifikat hoch und erstellen einen Verweis auf den Truststore. Erstellen Sie den Truststore mithilfe des beschriebenen Verfahrens hier: Schlüsselspeicher und Truststores.
- Erstellen Sie den virtuellen Host mithilfe der Erstellen Sie Virtual Host API verwenden. Achten Sie beim Aktivieren von TLS darauf, den richtigen Schlüsselspeicherverweis anzugeben. Truststore-Referenz und Schlüsselalias.
- Wenn Sie bereits API-Proxys haben, fügen Sie den virtuellen Host dem ProxyEndpoint hinzu.
Der virtuelle Host wird allen neuen API-Proxys automatisch hinzugefügt. Weitere Informationen finden Sie unter
API-Proxy für die Verwendung eines virtuellen Hosts konfigurieren
Nach der Aktualisierung eines API-Proxys zur Verwendung des virtuellen Hosts und dem Erstellen des DNS-Eintrags und CNAME -Eintrag für den Host-Alias, können Sie wie unten gezeigt auf den API-Proxy zugreifen:
https://api.myCompany.com/v1/project-base-path/resource-path
Beispiel:
https://api.myCompany.com/v1/weather/forecastrss?w=12797282
Virtuellen Host mit der API oder Benutzeroberfläche erstellen
Sie können einen virtuellen Host mit der Edge API oder der Edge-Benutzeroberfläche erstellen.
In den meisten der folgenden Beispiele wird die Edge API verwendet. Um auf die Benutzeroberfläche zum Erstellen, Ändern und Löschen zuzugreifen virtuelle Hosts in der Edge-Benutzeroberfläche:
- Melden Sie sich bei apigee.com/edge an
Edge für Private Cloud-Kunden verwenden
http://ms-ip:9000
(lokal), wobei ms-ip der IP-Adresse oder DNS-Name des Verwaltungsserverknotens. - Wählen Sie in der linken Navigationsleiste Admin > Virtuelle Hosts aus.
- Wählen Sie die Umgebung aus, zum Beispiel prod oder test.
Das virtuelle werden die für die Umgebung definierten Hosts angezeigt. - Wählen Sie + Virtual Host (Virtueller Host) aus, um einen virtuellen Host zu erstellen, oder wählen Sie den Namen eines vorhandenen virtuellen Hosts, um ihn zu bearbeiten.
Virtuellen Host für HTTP erstellen
Edge für Private Cloud-Kunden können einen virtuellen Host mit HTTP erstellen.
Um einen virtuellen Host zu erstellen, der TLS nicht unterstützt, erstellen Sie ein XML-Objekt, das den virtueller Host. Beispielsweise definiert das folgende XML-Objekt einen virtuellen Host, der das HTTP- Protokoll:
<VirtualHost name="myVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Interfaces/> <Port>80</Port> </VirtualHost>
In dieser Definition haben Sie Folgendes getan:
- Geben Sie unter Name den Namen myVHost an. Verwenden Sie den Namen als Referenz den virtuellen Host in einem API-Proxy oder in einem API-Aufruf.
- Geben Sie den Host-Alias als api.myCompany.com an. Dies ist die öffentlich zugängliche Domain, die für den Zugriff auf Ihre APIs verwendet wird, wie in einer DNS-Definition und CNAME definiert. Datensatz.
- Geben Sie die port-Nummer als 80 an. Wenn keine Angabe gemacht wird, standardmäßig ist der Port auf 443 eingestellt.
Es gibt zusätzliche Eigenschaften, die Sie im virtuellen Host festlegen können. Eine Referenz für alle Properties finden Sie unter Referenz zu virtuellen Host-Attributen
Wenn Sie bereits API-Proxys haben, fügen Sie den virtuellen Host zum <HTTPConnection>
-Element hinzu
im Proxy-Endpunkt. Der virtuelle Host wird allen neuen API-Proxys automatisch hinzugefügt.
Siehe API-Proxy für die Verwendung eines virtuellen Hosts konfigurieren.
Wenn Sie einen neuen API-Proxy erstellen, der nicht über einen bestimmten virtuellen Host zugänglich sein soll,
müssen Sie den API-Proxy bearbeiten, um diesen virtuellen Host aus seinem ProxyEndpoint zu entfernen.
Sie können dann über diesen virtuellen Host auf einen API-Proxy zugreifen, indem Sie eine Anfrage an:
http://api.myCompany.com/proxy-base-path/resource-path https://api.myCompany.com/proxy-base-path/resource-path
Erstellen Sie den virtuellen Host mithilfe der Erstellen Sie Virtual Host API:
curl -X POST -H "Content-Type:application/xml" \ http://ms-IP:8080/v1/o/org_name/environments/env_name/virtualhosts \ -d '<VirtualHost name="myVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Interfaces/> <Port>80</Port> </VirtualHost>' \ -u sysAdminEmail:password
Virtuellen Host für One-Way-TLS erstellen
Das folgende XML-Objekt definiert einen virtuellen Host für One-Way-TLS:
<VirtualHost name="myTLSVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Port>443</Port> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>false</ClientAuthEnabled> <KeyStore>ref://myTestKeystoreRef</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> </SSLInfo> </VirtualHost>
In dieser Definition aktivieren Sie TLS, indem Sie das Element <Enable>
festlegen
auf „true“ und verwenden Sie die Elemente <KeyStore>
und <KeyAliase>
um den Schlüsselspeicher und das Schlüsselalias anzugeben, die von der TLS-Verbindung verwendet werden.
TLS/SSL Informationen zur Verwendung von TLS.
Schlüsselspeicher und Truststore-Name im virtuellen Host angeben
Wenn Sie einen virtuellen Host zur Unterstützung von TLS konfigurieren, geben Sie einen Schlüsselspeicher mithilfe einer reference beschrieben. Eine Referenz ist eine Variable, die den Namen des Schlüsselspeichers oder Truststore, anstatt den Schlüsselspeicher- oder Truststore-Namen direkt anzugeben, wie unten gezeigt:
<SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>false</ClientAuthEnabled> <KeyStore>ref://myTestKeystoreRef</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> </SSLInfo>
Der Vorteil einer Referenz besteht darin, dass Sie deren Wert ändern können, um aus dem Schlüsselspeicher, der vom virtuellen Host verwendet wird, in der Regel, weil das Zertifikat im aktuellen Schlüsselspeicher in naher Zukunft auslaufen. Wenn du den Wert der Referenz änderst, musst du nicht neu starten den Edge Router. Siehe Mit Referenzen arbeiten für zum Erstellen und Ändern von Referenzen.
Sie können nur einen Verweis auf den Schlüsselspeicher und Truststore verwenden. Sie können keinen Verweis auf den Alias verwenden. Wenn Sie den Verweis auf einen Schlüsselspeicher ändern, achten Sie darauf, dass der Aliasname des Zertifikats mit dem alten Schlüsselspeicher identisch ist.
Einschränkungen bei der Verwendung von Verweisen auf Schlüsselspeicher und Truststores
Sie müssen die folgende Einschränkung berücksichtigen, wenn Sie Verweise auf Schlüsselspeicher und Trust Stores:
- Sie können Schlüsselspeicher- und Truststore-Referenzen in virtuellen Hosts nur verwenden, wenn Sie SNI und beenden Sie SSL auf den Apigee-Routern.
- Wenn sich vor den Apigee-Routern ein Load-Balancer befindet und Sie TLS auf dem können Sie keine Keystore- und Truststore-Referenzen in virtuellen Hosts verwenden.
Virtuellen Host für Zwei-Wege-TLS erstellen
Um Zwei-Wege-TLS zu aktivieren, setzen Sie das Element <ClientAuthEnabled>
auf
true
und geben Sie einen Truststore an,
mithilfe einer Referenz mit dem <TrustStore>
-Element. Der Truststore
enthält den Zertifikatsaussteller des Clients und die erforderliche CA-Kette des Zertifikats. Der Kunde
muss außerdem korrekt für Zwei-Wege-TLS konfiguriert sein.
Um einen virtuellen Host für Zwei-Wege-TLS zu erstellen, erstellen Sie ein XML-Objekt, das die virtuelle Host:
<VirtualHost name="myTLSVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Port>443</Port> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>true</ClientAuthEnabled> <KeyStore>ref://myTestKeystoreRef</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> <TrustStore>ref://myTestTruststoreRef</TrustStore> </SSLInfo> </VirtualHost>
In dieser Definition haben Sie Folgendes getan:
- Aktivieren Sie Zwei-Wege-TLS, indem Sie
<ClientAuthEnabled>
auf „true“ setzen. - Geben Sie den Verweis auf den Truststore mit dem Element
<TrustStore>
an. Der Truststore enthält den Zertifikatsaussteller des Clients und die erforderliche CA-Kette des Zertifikats.
TLS/SSL Informationen zur Verwendung von TLS.
Virtuellen Host ändern
Ein Cloud-Kunde mit einem kostenpflichtigen Konto und alle Edge for Private Cloud-Kunden können die <ph type="x-smartling-placeholder"></ph> Aktualisieren Sie eine Virtual Host API, um einen virtuellen Host zu aktualisieren. Mit dieser API können Sie alle Eigenschaften für den virtuellen Host, wie unter Referenz zu virtuellen Host-Attributen beschrieben.
Aktualisieren Sie den virtuellen Host mithilfe der Aktualisieren Sie eine Virtual Host API. Wenn Sie die API verwenden, müssen Sie die vollständige Definition den virtuellen Host im Anfragetext, nicht nur die Elemente, die Sie ändern möchten.
In diesem Beispiel legen Sie den Wert des Attributs proxy_read_timeout
fest:
curl -X PUT -H "Content-Type:application/xml" \ https://api.enterprise.apigee.com/v1/o/org_name/e/env_name/virtualhosts/vhost_name \ -d '<VirtualHost name="myTLSVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Port>443</Port> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>false</ClientAuthEnabled> <KeyStore>ref://myTestKeystoreRef</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> </SSLInfo> <Properties> <Property name="proxy_read_timeout">50</Property> </Properties> </VirtualHost>' \ -u orgAdminEmail:password
Virtuellen Host löschen
Bevor Sie einen virtuellen Host aus einer Umgebung löschen können, müssen Sie alle API-Proxys aktualisieren, die auf den virtuellen Host, um den Verweis zu entfernen. Weitere Informationen finden Sie unter API-Proxy für die Verwendung eines virtuellen Host enthalten.
Löschen Sie den virtuellen Host mithilfe der Methode <ph type="x-smartling-placeholder"></ph> Löschen Sie eine Virtual Host API:
curl -X DELETE \ https://api.enterprise.apigee.com/v1/o/org_name/e/env_name/virtualhosts/vhost_name \ -u orgAdminEmail:password
Informationen zu einem virtuellen Host aufrufen
Sehen Sie sich wie unten beschrieben Informationen zu den virtuellen Hosts an, die in einer Umgebung definiert sind.
Edge
So zeigen Sie Informationen über einen virtuellen Host mithilfe der Edge-Benutzeroberfläche an:
- Melden Sie sich bei apigee.com/edge an.
Edge für Private Cloud-Kunden verwenden
http://ms-ip:9000
(lokal), wobei ms-ip der IP-Adresse oder DNS-Name des Verwaltungsserverknotens. - Wählen Sie Verwaltung > Virtual Hosts aus.
- Wählen Sie die Umgebung aus, zum Beispiel prod oder test.
Das virtuelle für die Umgebung definierten Hosts. Wenn der virtuelle Host für die Verwendung eines Schlüsselspeichers oder Truststores konfiguriert ist, Klicken Sie auf Anzeigen, um weitere Informationen zu sehen.
Wenn der virtuelle Host für die Verwendung von TLS/SSL konfiguriert ist, wird neben dem Namen des virtueller Host. Das bedeutet, dass ein TLS/SSL-Zertifikat, ein Schlüssel und eine Zertifikatskette in Edge und dem virtuellen Host zugeordnet. Um Informationen über die verfügbaren Zertifikate:
- Wählen Sie Verwaltung > Umgebung > TLS-Schlüsselspeicher.
- Wählen Sie die Umgebung aus (normalerweise
prod
odertest
). - Erweitern Sie die Schlüsselspeicher, um das Zertifikat anzusehen.
Classic Edge (Private Cloud)
So zeigen Sie Informationen über einen virtuellen Host mit der Classic Edge-Benutzeroberfläche an:
- Melden Sie sich in
http://ms-ip:9000
an. ms-ip ist hierbei IP-Adresse oder DNS-Name des Verwaltungsserverknotens. - Wählen Sie Verwaltung > Virtual Hosts aus.
- Wählen Sie die Umgebung aus, zum Beispiel prod oder test.
- Klicken Sie auf den Tab Virtuelle Hosts.
Das virtuelle für die Umgebung definierten Hosts. Wenn der virtuelle Host für die Verwendung eines Schlüsselspeichers oder Truststores konfiguriert ist, Klicken Sie auf Anzeigen, um weitere Informationen zu sehen.
Wenn der virtuelle Host für die Verwendung von TLS/SSL konfiguriert ist, wird neben dem Namen des virtueller Host. Das bedeutet, dass ein TLS/SSL-Zertifikat, ein Schlüssel und eine Zertifikatskette in Edge und dem virtuellen Host zugeordnet. Um Informationen über die verfügbaren Zertifikate:
- Wählen Sie Verwaltung > TLS-Zertifikate aus.
- Wählen Sie die Umgebung aus (normalerweise
prod
odertest
). - Erweitern Sie die Schlüsselspeicher, um das Zertifikat anzusehen.
Wird angezeigt einen virtuellen Host mit der Edge API
Sie können auch die Edge APIs verwenden, um Informationen über virtuelle Hosts anzusehen. Für Beispiel: Die List Virtual Hosts gibt eine Liste aller virtuellen Hosts zurück:
curl -X GET -H "accept:application/xml" \ https://api.enterprise.apigee.com/v1/o/org_name/environments/env_name/virtualhosts \ -u orgAdminEmail:pWord
Dabei ist orgAdminEmail:pWord der Nutzername und das Passwort des Organisationsadministrators und org_name/env_name geben an, Organisation und Umgebung, in der sich der virtuelle Host befindet. Beispielantwort:
[ "default", "secure" ]
Um Informationen zu einem bestimmten virtuellen Host anzuzeigen, verwenden Sie den Get Virtual Host API:
curl -X GET -H "accept:application/xml" \ https://api.enterprise.apigee.com/v1/o/org_name/environments/env_name/virtualhosts/vhost_name \ -u orgAdminEmail:pWord
Dabei ist vhost_name der Name dem virtuellen Host. Beispielsweise können Sie das vhost_name als „sicher“ angeben. bis Sehen Sie sich die Konfiguration des von Apigee erstellten sicheren virtuellen Standardhosts an:
<VirtualHost name="secure"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <Port>443</Port> <Properties/> <Interfaces/> <RetryOptions/> <SSLInfo> <ClientAuthEnabled>false</ClientAuthEnabled> <Enabled>true</Enabled> <KeyAlias>freetrial</KeyAlias> <KeyStore>ref://freetrial</KeyStore> <IgnoreValidationErrors>false</IgnoreValidationErrors> </SSLInfo> </VirtualHost>
API-Proxy für die Verwendung eines virtuellen Host
Wenn Sie einen neuen API-Proxy erstellen, konfiguriert Edge ihn automatisch so, dass alle verfügbaren virtuellen in der Organisation. Eine Anfrage an einen API-Proxy über einen virtuellen Host verwendet das folgende Format:
https://host-alias/proxy-base-path/resource-path
Wobei:
- host-alias ist in der Regel der DNS-Name des virtuellen Hosts.
- proxy-base-path wird beim Erstellen eines API-Proxys definiert und ist für jeden API-Proxy.
- resource-path ist der Pfad zu einer Ressource, auf die über den API-Proxy zugegriffen werden kann.
Von einem API-Proxy verwendete virtuelle Hosts steuern
In der XML-Konfiguration eines API-Proxys verwenden Sie das Tag virtualhost
, um die
name des virtuellen Hosts, der mit dem API-Proxy verknüpft ist:
<HTTPProxyConnection> <BasePath>/v1/my/proxy/basepath</BasePath> <VirtualHost>secure</VirtualHost> <VirtualHost>default</VirtualHost> </HTTPProxyConnection>
<VirtualHost>secure</VirtualHost>
bedeutet beispielsweise
kann ein Client den API-Proxy mit dem Host-Alias der "sicheren" virtueller Host.
Sie ändern die mit einem API-Proxy verknüpften virtuellen Hosts in der Regel in folgenden Fällen:
- Sie erstellen einen neuen virtuellen Host und haben bereits API-Proxys. Sie müssen alle vorhandenen APIs bearbeiten. um den neuen virtuellen Host hinzuzufügen.
- Sie erstellen einen neuen API-Proxy, der über einen bestimmten virtuellen Host nicht zugänglich sein soll. Sie müssen den API-Proxy bearbeiten, um diesen virtuellen Host aus seiner Definition zu entfernen.
So ändern Sie die mit einem API-Proxy verknüpften virtuellen Hosts:
-
Rufen Sie den API-Proxy-Editor wie unten beschrieben auf.
Edge
So greifen Sie über die Edge-Benutzeroberfläche auf den API-Proxy-Editor zu:
- Melden Sie sich bei apigee.com/edge an.
Edge für Private Cloud-Kunden verwenden
http://ms-ip:9000
(lokal), wobei ms-ip der IP-Adresse oder DNS-Name des Verwaltungsserverknotens. - Wählen Sie Entwickeln > API-Proxys.
- Wählen Sie den API-Proxy, den Sie bearbeiten möchten, in der Liste aus.
Classic Edge (Private Cloud)
So greifen Sie über die Classic Edge-Benutzeroberfläche auf den API-Proxy-Editor zu:
- Melden Sie sich in
http://ms-ip:9000
an. ms-ip ist hierbei IP-Adresse oder DNS-Name des Verwaltungsserverknotens. - Wählen Sie APIs > API-Proxys.
- Wählen Sie den API-Proxy, den Sie bearbeiten möchten, in der Liste aus.
- Melden Sie sich bei apigee.com/edge an.
- Klicken Sie auf den Tab Entwickeln.
- Wählen Sie unter Proxy-Endpunkte die Option Standard aus.
- Im Codebereich:
<ph type="x-smartling-placeholder">
- </ph>
- Entfernen Sie alle
<VirtualHost>
-Elemente für virtuelle Hosts, die vom API-Proxy nicht unterstützt werden. - Neues
<VirtualHost>
-Element hinzufügen durch den Namen des neuen virtuellen Hosts. Wenn der neue virtuelle Host beispielsweise Fügen Sie MyVirtualHost das folgende Tag hinzu:
<HTTPProxyConnection> <BasePath>/v1/my/proxy/basepath</BasePath> <VirtualHost>default</VirtualHost> <VirtualHost>secure</VirtualHost> <VirtualHost>MyVirtualHost</VirtualHost> </HTTPProxyConnection>
- Entfernen Sie alle
- Speichern Sie den API-Proxy. Wenn der API-Proxy bereitgestellt wurde, wird er beim Speichern mit der neuen Einstellung.
Festlegen der Basis-URL, die vom Edge-Benutzeroberfläche für einen API-Proxy
Die Edge-Benutzeroberfläche zeigt die URL eines API-Proxys basierend auf den Einstellungen im virtuellen Host an je nachdem, wo der Proxy bereitgestellt wird. Diese Anzeige kann die Router-Portnummer dem virtuellen Host.
In den meisten Fällen ist die in der Edge-Benutzeroberfläche angezeigte URL die richtige URL zum Erstellen externer Anfragen an den Proxy. Bei einigen Konfigurationen ist die angezeigte URL jedoch nicht korrekt. Für Beispiel: Jede der folgenden Konfigurationen kann dazu führen, dass die angezeigte URL entsprechen der tatsächlichen URL, die für externe Anfragen an den Proxy verwendet wurde:
- SSL-Terminierung erfolgt an einem Load-Balancer
- Portzuordnung zwischen einem Load-Balancer und Apigee-Routern
- Einen Load Balancer, der mit Pfadumschreibung konfiguriert ist
Edge unterstützt ein Attribut auf dem virtuellen Host namens <BaseUrl>
, mit dem
überschreiben Sie die von der Edge-Benutzeroberfläche angezeigte URL. Hier ein Beispiel für das virtuelle Hostobjekt
mit dem Attribut <BaseUrl>
.
In diesem Beispiel lautet der Wert „http://myCo.com“ in der Edge-Benutzeroberfläche angezeigt wird:
<VirtualHost name="myTLSVHost"> <HostAliases> <HostAlias>api.myCompany.com</HostAlias> </HostAliases> <BaseUrl>http://myCo.com</BaseUrl> <Port>443</Port> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>false</ClientAuthEnabled> <KeyStore>ref://myTestKeystoreRef</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> </SSLInfo> </VirtualHost>
Der Wert von <BaseUrl>
muss das Protokoll enthalten (d. h. „http://“ oder
„https://“).
Wenn <BaseUrl>
nicht festgelegt ist, wird die von der Edge-Benutzeroberfläche gerenderte Standard-URL
angezeigt wird, während das tatsächliche Host-Alias "http://myCo.com" lautet.