Konfigurowanie routingu serwera proxy

Ten dokument jest przeznaczony dla programistów, którzy chcą kierować cały ruch związany z tagowaniem po stronie serwera przez serwer proxy.

Zanim zaczniesz

Zanim będzie można skonfigurować routing serwera proxy, upewnij się, że masz:

  • Kontener serwera wdrożony w Cloud Run lub w ramach konfiguracji ręcznej.

  • Wdrożony serwer proxy, który obsługuje żądania HTTP CONNECT.

  • możliwość tworzenia listy dozwolonych konkretnego ruchu wychodzącego z serwera proxy, na przykład przy użyciu list VPC, zapory sieciowej lub list kontroli dostępu serwera proxy;

Konfigurowanie routingu serwera proxy

Cloud Run

Aby przekierować ruch do serwera proxy dla wdrożeń Cloud Run:

  1. Otwórz Cloud Run
  2. Wybierz instancję Cloud Run z tagowaniem po stronie serwera.
  3. Kliknij EDYTUJ I WDRÓŻ NOWĄ WERSJĘ. Otworzy się ekran wdrażania wersji.
  4. W sekcji Kontenery wybierz kontener serwera. Otworzy się nowy ekran z ustawieniami kontenera.
  5. Aby rozwinąć konfigurację usługi, wybierz kartę Zmienne i obiekty tajne. Kliknij przycisk Dodaj zmienną i dodaj tę zmienną środowiskową:

    1. Nazwa: HTTP_PROXY
    2. Wartość: identyfikator URI serwera proxy (np. https://proxy.example.com:3333 lub http://32.12.83.10)
  6. Kliknij Gotowe.

  7. Potwierdź zmiany i kliknij Wdróż.

Wdrażanie ręczne

Aby przekierować ruch do serwera proxy na potrzeby wdrożeń ręcznych:

  1. Zdefiniuj zmienną środowiskową dostępną do obrazu Dockera:

    1. Nazwa: HTTP_PROXY
    2. Wartość: identyfikator URI serwera proxy (np. https://proxy.example.com lub http://32.12.83.10:1234)
  2. Uruchom obraz Dockera z nową zmienną środowiskową.

    docker run -p 8080:8080 \
    -e CONTAINER_CONFIG=CONTAINER_CONFIG \
    -e HTTP_PROXY=PROXY_URL \
    gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable
    

Wynik: wdrożenie tagowania po stronie serwera wysyła cały ruch wychodzący do punktu końcowego serwera proxy określonego w zmiennej środowiskowej.

Weryfikowanie konfiguracji serwera proxy

Aby sprawdzić konfigurację żądań proxy, sprawdź zarówno Menedżera tagów Google, jak i konfigurację serwera proxy.

Aby zweryfikować żądania dotyczące serwerów proxy kontenera serwera:

  1. Otwórz Menedżera tagów Google

  2. Otwórz kontener serwera.

  3. Otwórz tryb Podgląd. Na karcie Prośby:

    1. Upewnij się, że klient odebrał przychodzące żądanie.
    2. Upewnij się, że tagi i zmienne wysyłają wychodzące żądania HTTP.
    3. Jeśli chcesz sprawdzić, czy żądanie zostało wysłane przez serwer proxy, kliknij żądanie HTTP i wyświetl szczegóły żądania HTTP.

Aby sprawdzić konfigurację serwera proxy:

  1. Sprawdź dzienniki sieci i serwera proxy. Powinny być dostępne przynajmniej żądania wysyłane do tych punktów końcowych:
  2. Sprawdź, czy są wysyłane żądania do innych punktów końcowych.
  3. W zależności od używanych przez Ciebie funkcji tagowania po stronie serwera możesz też zobaczyć żądania wysyłane do innych punktów końcowych, takich jak www.google-analytics.com, bigquery.googleapis.com lub punkty końcowe innej firmy. Umieść na liście dozwolonych wszystkie inne punkty końcowe wymagane do skonfigurowania tagowania.

Opcjonalnie: dodawanie ruchu wychodzącego z serwera proxy do listy dozwolonych

Jeśli blokujesz ruch wychodzący ze swojej sieci lub serwera proxy, musisz dodać do listy dozwolonych domeny Menedżera tagów Google, by instancja serwera tagowania działała. Sposób dodawania ruchu wychodzącego do listy dozwolonych zależy od środowiska sieciowego i oprogramowania serwera proxy. Zanim zaczniesz dodawać punkty końcowe do listy dozwolonych, upewnij się, że znasz topologię sieci.

Te domeny służą do pobierania, wyświetlania podglądu i debugowania kontenera Menedżera tagów Google:

  • https://www.googletagmanager.com
  • https://tagmanager.google.com
  • ${Preview server URL}

Jeśli hostujesz serwer podglądu w innej sieci niż serwer proxy lub stosujesz restrykcyjne reguły sieciowe, dodaj do listy dozwolonych ruch wychodzący z serwera proxy na serwer podglądu. Adres URL serwera podglądu jest definiowany podczas wdrażania kontenera serwera.

Opcjonalnie: korzystanie z uwierzytelniania PODSTAWOWEGO z serwerem proxy

Jeśli Twoja organizacja wymaga uwierzytelniania, możesz użyć uwierzytelniania PODSTAWOWEGO w przypadku wszystkich typów serwerów.

Aby użyć uwierzytelniania PODSTAWOWEGO, podaj dane uwierzytelniające (nazwę użytkownika i hasło) w adresie URL serwera proxy w tym formacie:

HTTP_PROXY=http(s)://USER_NAME:PASSWORD@PROXY_URL

Każde żądanie wysłane do serwera proxy powoduje ustawienie w nagłówku Proxy-Authorization nazwy użytkownika i hasła jako wartości Base64.

Jeśli korzystasz z Cloud Run, przechowuj dane logowania punktu końcowego serwera proxy w usłudze Secret Manager. Secret Manager przyznaje Cloud Run dostęp do obiektu tajnego w czasie uruchamiania i rozstrzyga wartość. Dowiedz się, jak skonfigurować obiekty tajne w Cloud Run.

Opcjonalnie: wyłączanie serwera proxy dla określonych hostów

Zmienna środowiskowa NO_PROXY umożliwia zdefiniowanie rozdzielanej przecinkami listy nazw hostów, których nie można wysłać przez serwer proxy.

Na przykład: NO_PROXY=example.com,169.254.169.254,diagnostics.example2.com:3131

Kontener Menedżera tagów Google nie przekazuje następujących żądań:

  • http://example.com, https://sub.example.com, https://other.example.com:123
  • http://169.254.169.254, https://169.254.169.254, http://169.254.169.254:123
  • http://diagonstics.example2.com:3131, https://diagonstics.example2.com:3131