Configura el enrutamiento del servidor proxy

Este documento está dirigido a los desarrolladores que desean enrutar todo el tráfico del etiquetado del servidor a través de un servidor proxy.

Antes de comenzar

Antes de configurar el enrutamiento del servidor proxy, asegúrate de tener lo siguiente:

  • Un contenedor de servidor implementado en Cloud Run o a través de una configuración manual.

  • Se implementó un servidor proxy que admite solicitudes de HTTP CONNECT.

  • La capacidad de incluir en la lista de entidades permitidas tráfico saliente específico del servidor proxy, por ejemplo, con VPC, Firewall o listas de control de acceso (ACL) de proxy

Configura el enrutamiento del servidor proxy

Cloud Run

Para reenviar tráfico a un proxy para implementaciones de Cloud Run, haz lo siguiente:

  1. Abrir Cloud Run
  2. Elige tu instancia de Cloud Run de etiquetado del servidor.
  3. Haz clic en EDITAR E IMPLEMENTAR NUEVA REVISIÓN. Se abrirá la pantalla de implementación de la revisión.
  4. En Contenedores, elige tu contenedor de servidor. Se abrirá una pantalla nueva con la configuración del contenedor.
  5. Para expandir la configuración del servicio, selecciona la pestaña Variables y Secrets. Haz clic en el botón Agregar variable y agrega la siguiente variable de entorno:

    1. Nombre: HTTP_PROXY
    2. Valor: URI del servidor proxy (p.ej., https://proxy.example.com:3333 o http://32.12.83.10)
  6. Haz clic en Listo.

  7. Confirma las revisiones y haz clic en Implementar.

Implementación manual

Para reenviar tráfico a un proxy para implementaciones manuales, haz lo siguiente:

  1. Define una variable de entorno a la que pueda acceder la imagen de Docker:

    1. Nombre: HTTP_PROXY
    2. Valor: URI del servidor proxy (p.ej., https://proxy.example.com o http://32.12.83.10:1234)
  2. Ejecuta tu imagen de Docker con la nueva variable de entorno.

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

Resultado: Tu implementación del etiquetado del servidor envía todo el tráfico saliente al extremo del proxy que especificaste en la variable de entorno.

Verifica la configuración del servidor proxy

Para verificar la configuración de tus solicitudes de proxy, revisa la configuración de Google Tag Manager y de tu servidor proxy.

Para verificar que tu contenedor del servidor reenvíe solicitudes de proxy, haz lo siguiente:

  1. Abre Google Tag Manager

  2. Abre el contenedor del servidor.

  3. Abre el modo Vista previa. En la pestaña Solicitudes, haz lo siguiente:

    1. Asegúrate de que tu cliente reclame la solicitud entrante.
    2. Asegúrate de que tus etiquetas y variables envíen correctamente solicitudes HTTP salientes.
    3. Para verificar si una solicitud se envió a través de un servidor proxy, haz clic en una solicitud HTTP para ver los detalles de la solicitud HTTP.

Para verificar la configuración del proxy, sigue estos pasos:

  1. Revisa los registros de tu red y del servidor proxy. Como mínimo, deberías ver solicitudes exitosas a los siguientes extremos:
  2. Verifica si hay solicitudes a otros extremos.
  3. Según las funciones de etiquetado del servidor que utilices, es posible que también veas solicitudes realizadas a otros extremos, como www.google-analytics.com, bigquery.googleapis.com o extremos de terceros. Incluye en la lista de entidades permitidas cualquier otro extremo que se necesite para tu configuración de etiquetado.

Opcional: Incluye en la lista de entidades permitidas el tráfico saliente de tu servidor proxy

Si bloqueas el tráfico saliente de tu red o de tu servidor proxy, debes incluir los dominios de Google Tag Manager en la lista de entidades permitidas para que funcione tu instancia del servidor de etiquetado. La forma en que permites el tráfico saliente depende de tu entorno de red y del software de proxy. Antes de comenzar a incluir los extremos en la lista de entidades permitidas, asegúrate de comprender la topología de tu red.

Los siguientes dominios se utilizan para recuperar, obtener una vista previa y depurar tu contenedor de Google Tag Manager:

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

Si alojas tu servidor de vista previa en una red diferente a la de tu servidor proxy o tienes reglas de red restrictivas, incluye en la lista de entidades permitidas el tráfico saliente del proxy al servidor de vista previa. La URL del servidor de vista previa se define cuando implementas tu contenedor de servidor.

Opcional: Usa la autenticación BÁSICA con tu servidor proxy

Si tu organización requiere autenticación, puedes usar la autenticación BÁSICA con todos los tipos de servidores.

Para usar la autenticación BÁSICA, incluye las credenciales (nombre de usuario y contraseña) como parte de la URL del servidor proxy en el siguiente formato:

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

Cada solicitud al proxy establece el nombre de usuario y la contraseña en el encabezado Proxy-Authorization como valores Base64.

Si usas Cloud Run, almacena las credenciales del extremo del proxy en Secret Manager. Secret Manager le da acceso a Cloud Run al secreto en el momento del inicio y resuelve el valor. Obtén más información para configurar secretos en Cloud Run.

Opcional: Inhabilita el proxy para hosts específicos

La variable de entorno NO_PROXY te permite definir una lista delimitada por comas de nombres de host que no se pueden enviar a través del servidor proxy.

Por ejemplo, dado lo siguiente: NO_PROXY=example.com,169.254.169.254,diagnostics.example2.com:3131

El contenedor de sGTM no reenvía ninguna de las siguientes solicitudes:

  • 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