Skonfiguruj serwer proxy przekierowania

Serwery proxy przekazujące dalej zapewniają pojedynczy punkt, przez który wiele maszyn wysyła żądania do serwera zewnętrznego. Mogą egzekwować zasady bezpieczeństwa, rejestrować i analizować żądania oraz wykonywać inne działania, aby żądania były zgodne z Twoimi regułami biznesowymi. W Edge serwer proxy przekierowujący zwykle pośredniczy między serwerami proxy interfejsu API a zewnętrznym punktem docelowym TargetEndpoint (serwerem docelowym backendu).

Aby używać serwera proxy przekierowującego HTTP między Edge a TargetEndpoint, musisz skonfigurować ustawienia serwera proxy dla ruchu wychodzącego w procesorach komunikatów (MP). Te właściwości konfigurują procesory wiadomości tak, aby kierowały żądania docelowe z Edge do serwera proxy przekierowującego HTTP.

Aby skonfigurować procesor wiadomości na potrzeby przekierowywania proxy:

  1. Na procesorze wiadomości zmodyfikuj ten plik:
    /opt/apigee/customer/application/message-processor.properties

    Jeśli plik message-processor.properties nie istnieje, utwórz go.

  2. Zmodyfikuj plik, aby ustawić właściwości związane z serwerem proxy opisane w tabeli poniżej.
  3. Upewnij się, że plik właściwości należy do użytkownika „apigee”:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
  4. Zapisz zmiany w pliku właściwości.
  5. Uruchom ponownie procesor wiadomości, jak pokazano w tym przykładzie:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

W tej tabeli opisujemy właściwości w pliku message-processor.properties, których używasz do konfigurowania procesora wiadomości na potrzeby przekazywania żądań do serwera backendu:

Właściwość Opis
conf_http_HTTPClient.use.proxy

Zezwala na używanie serwera proxy przekierowania. Wartość domyślna to true, co oznacza, że możesz używać serwera proxy przekierowującego w warstwie serwera proxy interfejsu API, dołączając odpowiedni kod XML do konfiguracji pakietu.

Jeśli ustawisz tę wartość na false, nie będzie można używać serwera proxy przekierowującego.

conf_http_HTTPClient.use.tunneling

Domyślnie Edge używa tunelowania dla całego ruchu. Aby domyślnie wyłączyć tunelowanie, ustaw tę właściwość na „false”.

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

Ustawia hosta docelowego i port jako nagłówek Host. Domyślnie host i port serwera proxy są ustawione jako nagłówki Host. Tę właściwość można ustawić tylko w docelowym punkcie końcowym. Na przykład:

<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

Określa typ serwera proxy HTTP jako HTTP lub HTTPS. Domyślnie używany jest protokół „HTTP”.

conf/http.properties+HTTPClient.proxy.host

Określa nazwę hosta lub adres IP, pod którym działa serwer proxy HTTP.

conf/http.properties+HTTPClient.proxy.port

Określa port, na którym działa serwer proxy HTTP. Jeśli ta właściwość zostanie pominięta, domyślnie używany jest port 80 w przypadku HTTP i port 443 w przypadku HTTPS.

conf/http.properties+HTTPClient.proxy.user
conf/http.properties+HTTPClient.proxy.password

Jeśli serwer proxy HTTP wymaga uwierzytelniania podstawowego, użyj tych właściwości, aby podać szczegóły autoryzacji.

Na przykład:

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

Jeśli dla procesora wiadomości skonfigurowano przekierowanie proxy, cały ruch z serwerów proxy interfejsu API do docelowych backendów przechodzi przez określony serwer proxy HTTP. Jeśli ruch do określonego celu serwera proxy interfejsu API powinien trafiać bezpośrednio do celu backendu, z pominięciem serwera proxy przekierowania, ustaw tę właściwość w TargetEndpoint, aby zastąpić serwer proxy przekierowania HTTP:

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

Więcej informacji o ustawianiu właściwości TargetEndpoint, w tym o konfigurowaniu połączenia z docelowym punktem końcowym, znajdziesz w dokumentacji właściwości punktu końcowego.

Aby domyślnie wyłączyć przekazywanie proxy dla wszystkich elementów docelowych, ustaw tę właściwość w pliku message-processor.properties:

conf_http_HTTPClient.use.proxy=false

Następnie ustaw use.proxy na „true” w przypadku każdego elementu TargetEndpoint, który ma przechodzić przez serwer proxy przekierowujący HTTP:

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

Domyślnie Edge używa tunelowania do przesyłania ruchu do serwera proxy. Aby domyślnie wyłączyć tunelowanie, ustaw tę właściwość w pliku message-processor.properties:

conf_http_HTTPClient.use.tunneling=false

Jeśli chcesz wyłączyć tunelowanie dla konkretnego celu, ustaw właściwość use.proxy.tunneling w TargetEndpoint. Jeśli cel używa protokołu TLS/SSL, ta właściwość jest ignorowana, a wiadomość jest zawsze wysyłana przez tunel:

<Property name="use.proxy.tunneling">false</Property>

Aby Edge działał jako serwer proxy przekierowujący, który odbiera żądania z usług backendu i kieruje je do internetu poza firmą, najpierw skonfiguruj serwer proxy interfejsu API w Edge. Usługa backendu może następnie wysłać żądanie do serwera proxy interfejsu API, który może połączyć się z usługami zewnętrznymi.