Weiterleitungs-Proxys konfigurieren

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 verbindet ein Forward-Proxy normalerweise Ihre API-Proxys und einen externen Zielendpunkt (ein Back-End-Zielserver).

Um einen HTTP Forward-Proxy zwischen Edge und dem Zielendpunkt zu verwenden, müssen Sie die Einstellungen für ausgehenden Proxy auf den Message Processors (MPs) konfigurieren. Diese Properties konfigurieren die MPs so, dass Zielanfragen von Edge an den HTTP-Forward-Proxy weitergeleitet werden.

So konfigurieren Sie einen MP für die Weiterleitung von Proxys:

  1. Bearbeiten Sie auf der MP-Datei die folgende Datei:
    /opt/apigee/customer/application/message-processor.properties

    Wenn die Datei message-processor.properties nicht vorhanden ist, erstellen Sie sie.

  2. Bearbeiten Sie die Datei, um die proxybezogenen Eigenschaften festzulegen, die in der folgenden Tabelle beschrieben sind.
  3. Prüfen Sie, ob die Datei „properties“ dem Nutzer „apigee“ gehört:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
  4. Speichern Sie die Änderungen an der Datei mit den Eigenschaften.
  5. Starten Sie die MP neu, wie im folgenden Beispiel gezeigt:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

In der folgenden Tabelle werden die Attribute in der Datei message-processor.properties beschrieben, mit denen Sie einen MP für die Weiterleitung an ein Back-End-Server konfigurieren:

Attribut Beschreibung
conf_http_HTTPClient.use.proxy

Ermöglicht die Verwendung des Weiterleitungs-Proxys. Der Standardwert ist true. Dies bedeutet, dass Sie einen Weiterleitungs-Proxy auf der API-Proxy-Ebene verwenden können, indem Sie den entsprechenden XML-Code in Ihre Bundle-Konfiguration aufnehmen.

Wenn Sie diesen Wert auf false festlegen, kann kein Weiterleitungs-Proxy verwendet werden.

conf_http_HTTPClient.use.tunneling

Edge verwendet standardmäßig Tunneling für den gesamten Traffic. Wenn Sie das Tunneling standardmäßig deaktivieren möchten, setzen Sie dieses Attribut auf „false“.

use.proxy.host.header.with.target.uri

Legt den Zielhost und den Port als Host-Header fest. Standardmäßig werden der Proxyhost und der Port als Host-Header festgelegt. Sie können dieses Attribut nur im Zielendpunkt festlegen. Beispiel:

<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 Attribute, um Autorisierungsdetails bereitzustellen.

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 das Weiterleiten von Proxys für den MP konfiguriert ist, wird der gesamte Traffic von API-Proxys zu Back-End-Zielen durch den angegebenen HTTP-Weiterleitungs-Proxy geleitet. Wenn der Traffic für ein bestimmtes Ziel eines API-Proxys direkt zum Back-End-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.

Wenn Sie die Weiterleitung von Proxys für alle Ziele standardmäßig deaktivieren möchten, legen Sie die folgende Property in Ihrer message-processor.properties-Datei fest:

conf_http_HTTPClient.use.proxy=false

Setzen Sie dann use.proxy für jeden TargetEndpoint, den Sie durch einen HTTP Forward-Proxy führen möchten, auf „true“:

<Property name="use.proxy">true</Property>

Edge verwendet standardmäßig Tunneling für den Traffic zum Proxy. Wenn Sie das Tunneling standardmäßig deaktivieren möchten, legen Sie in der Datei message-processor.properties das folgende Attribut fest:

conf_http_HTTPClient.use.tunneling=false

Wenn Sie das Tunneling für ein bestimmtes Ziel deaktivieren möchten, legen Sie die Property use.proxy.tunneling im TargetEndpoint fest. 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 außerhalb des Unternehmens an das Internet weiterleitet, müssen Sie zuerst einen API-Proxy in Edge einrichten. Der Back-End-Dienst kann dann eine Anfrage an den API-Proxy senden, der sich dann mit externen Diensten verbinden kann.