Weiterleitungsproxys bieten einen zentralen Punkt, über den mehrere Maschinen Anfragen an einen externen Server senden. Sie können Sicherheitsrichtlinien erzwingen, Anfragen protokollieren und analysieren und andere Aktionen ausführen, sodass Anfragen Ihren Geschäftsregeln entsprechen. Mit Edge kann ein Weiterleitungs-Proxy Zwischen Ihren API-Proxys und einem externen TargetEndpoint (ein Back-End-Zielserver).
Um einen HTTP-Weiterleitungsproxy zwischen Edge und dem TargetEndpoint zu verwenden, müssen Sie Die Proxy-Einstellungen für ausgehenden Traffic bei den Message Processors (MPs) Diese Eigenschaften konfigurieren die MPs. um Zielanfragen von Edge an den HTTP-Weiterleitungs-Proxy weiterzuleiten.
So konfigurieren Sie einen MP für Weiterleitungsproxys:
- Bearbeite im MP folgende Datei:
/opt/apigee/customer/application/message-processor.properties
Falls die Datei
message-processor.properties
nicht vorhanden ist, erstellen Sie sie. - Bearbeiten Sie die Datei, um die in der folgenden Tabelle beschriebenen proxybezogenen Eigenschaften festzulegen.
- Achten Sie darauf, dass die Eigenschaftendatei dem Apigee gehört Nutzer:
chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- Speichern Sie die Änderungen an der Eigenschaftendatei.
- Starte das MP wie im folgenden Beispiel neu:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
In der folgenden Tabelle werden die Attribute des message-processor.properties
-Elements beschrieben.
-Datei, mit der Sie eine MP für das Weiterleiten eines Proxys an einen Back-End-Server konfigurieren:
Attribut | Beschreibung |
---|---|
conf_http_HTTPClient.use.proxy |
Erlaubt die Verwendung eines Forward-Proxys. Der Standardwert ist Wenn Sie diesen Wert auf |
conf_http_HTTPClient.use.tunneling |
Standardmäßig verwendet Edge Tunneling für den gesamten Traffic. Um das Tunneling standardmäßig zu deaktivieren, legen Sie diese Eigenschaft auf „false“ fest. |
use.proxy.host.header.with.target.uri |
Legt den Zielhost und den Zielport als <HTTPTargetConnection> <Properties> <Property name="use.proxy.host. header.with.target.uri">true </Property> </Properties> <URL>https://mocktarget.apigee.net/ my-target</URL> </HTTPTargetConnection> |
conf/http.properties+HTTPClient.proxy.type |
Gibt den Typ des HTTP-Proxys als HTTP oder HTTPS an. Standardmäßig wird „HTTP“ verwendet. |
conf/http.properties+HTTPClient.proxy.host |
Gibt den Hostnamen oder die IP-Adresse an, unter der der HTTP-Proxy ausgeführt wird. |
conf/http.properties+HTTPClient.proxy.port |
Gibt den Port an, auf dem der HTTP-Proxy ausgeführt wird. Wenn Sie dieses Attribut weglassen, wird standardmäßig Port 80 für HTTP und Port 443 für HTTPS verwendet. |
conf/http.properties+HTTPClient.proxy.user conf/http.properties+HTTPClient.proxy.password |
Wenn der HTTP-Proxy eine Basisauthentifizierung erfordert, verwenden Sie diese Eigenschaften, um Autorisierungsdetails. |
Beispiel:
conf_http_HTTPClient.use.proxy=true conf_http_HTTPClient.use.tunneling=false conf/http.properties+HTTPClient.proxy.type=HTTP conf/http.properties+HTTPClient.proxy.host=my.host.com conf/http.properties+HTTPClient.proxy.port=3128 conf/http.properties+HTTPClient.proxy.user=USERNAME conf/http.properties+HTTPClient.proxy.password=PASSWORD
Wenn für den MP Weiterleitungsproxys konfiguriert sind, wird der gesamte Proxys zu Back-End-Zielen durchlaufen den angegebenen HTTP-Weiterleitungs-Proxy. Wenn der Traffic für ein bestimmtes Ziel eines API-Proxys direkt zum Backend-Ziel geleitet werden soll, die den Weiterleitungsproxy umgehen, legen Sie das folgende Attribut im TargetEndpoint fest, um den HTTP-Weiterleitungsproxy zu überschreiben:
<Property name="use.proxy">false</Property>
Weitere Informationen zum Festlegen der TargetEndpoint-Attribute, einschließlich der Konfiguration der Verbindung zum Zielendpunkt, finden Sie unter Referenz für Zielpunktattribute.
Um Forward-Proxys standardmäßig für alle Ziele zu deaktivieren, legen Sie die folgende Eigenschaft in der
message-processor.properties
-Datei:
conf_http_HTTPClient.use.proxy=false
Setzen Sie dann use.proxy
auf „true“. für jeden TargetEndpoint, den Sie durchlaufen möchten,
einen HTTP-Weiterleitungs-Proxy:
<Property name="use.proxy">true</Property>
Standardmäßig verwendet Edge Tunneling für den Traffic zum Proxy. Um das Tunneling standardmäßig zu deaktivieren,
Legen Sie das folgende Attribut in der Datei message-processor.properties
fest:
conf_http_HTTPClient.use.tunneling=false
Wenn Sie Tunneling für ein bestimmtes Ziel deaktivieren möchten,
Attribut use.proxy.tunneling
im TargetEndpoint. Wenn das Ziel TLS/SSL verwendet,
wird dieses Attribut ignoriert und die Nachricht wird immer über einen Tunnel gesendet:
<Property name="use.proxy.tunneling">false</Property>
Damit Edge selbst als Weiterleitungs-Proxy fungiert und Anfragen von den Back-End-Diensten empfängt und sie an das Internet außerhalb des Unternehmens weiterleiten – richten Sie zuerst einen API-Proxy in Edge ein. Die Back-End-Dienst kann dann eine Anfrage an den API-Proxy senden, der dann eine Verbindung zu externen .