Descripción general de las políticas del Proxy web seguro

En esta página, se describen los atributos de origen y los atributos de destino para las políticas del Proxy web seguro. Además, en esta página, se explica el proxy basado en reglas del Protocolo de control de transmisión (TCP) y cómo configurar reglas de proxy TCP para tu aplicación.

Las políticas del proxy web seguro se basan en los siguientes dos parámetros:

De forma predeterminada, el Proxy web seguro está configurado para rechazar cualquier tráfico web saliente (HTTP o HTTPS) a través del proxy, a menos que incluyas una regla específica en la política de tu instancia de Proxy web seguro.

Atributos de origen para las políticas

Usa los siguientes atributos para permitir que tu instancia de Secure Web Proxy identifique la fuente del tráfico:

Identidades admitidas

Puedes usar políticas de seguridad basadas en la identidad de la fuente (cuentas de servicio y etiquetas seguras) para proteger el tráfico web de varios servicios de Google Cloud . En la siguiente tabla, se muestra si se admiten varios servicios de Google Cloud cuando se usan políticas de seguridad basadas en la identidad de la fuente.

Google Cloud servicios Asistencia para cuentas de servicio Compatibilidad con etiquetas seguras
VM
Nodo de GKE
Contenedor de GKE 1 1
VPC directa para Cloud Run 1
Conector de Acceso a VPC sin servidores 2 2
Cloud VPN 1 1
Cloud Interconnect en las instalaciones 1 1
Balanceador de cargas de aplicaciones
Balanceador de cargas de red
1 No es compatible con Google Cloud.
2 La dirección IP de origen es única y se puede usar en su lugar.

En la siguiente tabla, se muestra si se admiten varias arquitecturas de nube privada virtual (VPC) cuando se usan políticas de seguridad basadas en la identidad de origen:

VPC Arquitectura de VPC Asistencia
Dentro de la VPC Entre proyectos (VPC compartida)
Dentro de la VPC Entre regiones
VPC cruzada Vínculo de intercambio de tráfico cruzado (VPC de intercambio de tráfico)
VPC cruzada Private Service Connect cruzado
VPC cruzada Radios de Cross Network Connectivity Center

Atributos de destino para las políticas

Con el Proxy web seguro, puedes configurar políticas para tu aplicación según los dominios de destino y las rutas de acceso de URL completas (si la inspección de TLS está habilitada).

Usa los siguientes atributos para permitir que tu instancia de Proxy web seguro determine el destino de tráfico permitido:

Para el tráfico de destino basado en HTTP, puedes usar el atributo de destino host() para tu aplicación.

Además, para el tráfico de destino basado en HTTPS, puedes usar varios atributos relacionados con el destino (como request.method) para tu aplicación.request.*

Para obtener más información sobre los atributos de destino que puedes usar para el tráfico HTTP y HTTPS, consulta Atributos.

Reglas de proxy TCP

Con tu instancia de proxy web seguro, puedes configurar reglas de proxy para el tráfico del Protocolo de control de transmisión (TCP), incluido el tráfico que no está asociado con protocolos web. Por ejemplo, puedes permitir o bloquear el tráfico de sitios web o aplicaciones que envían tráfico desde cualquier puerto que no sea 80 (HTTP) o 443 (HTTPS).

Si tu carga de trabajo (como tus aplicaciones y servicios) usa el proxy web seguro como siguiente salto, es beneficioso aplicar reglas de proxy TCP. Esto se debe a que el uso de un proceso de redireccionamiento basado en rutas dirige el tráfico que no es HTTP(S) ni web a tu instancia de Proxy web seguro. De esta manera, puedes bloquear el tráfico malicioso para que no llegue a tu aplicación y controlar qué aplicaciones o sitios web pueden acceder a tu red.

Configura reglas de proxy TCP para tu aplicación

Para implementar reglas de proxy TCP y crear una regla de permiso o bloqueo de tráfico para tu aplicación, debes especificar el puerto de destino. De manera opcional, puedes incluir cualquiera de los siguientes atributos SessionMatcher para refinar los criterios de la regla de bloqueo o permiso.

Atributo Tipo de atributo Descripción
source.ip cadena Dirección IP del cliente que envió la solicitud.
source.port cadena Es el puerto del cliente que envió la solicitud.
destination.port cadena Es el puerto upstream al que tu instancia de Proxy web seguro envía el tráfico.
source.matchTag(SECURE_TAG) booleano

True, si la fuente está asociada con SECURE_TAG.

El argumento es el ID permanente de la etiqueta segura, como source.matchTag('tagValues/123456').

source.matchServiceAccount(SERVICE_ACCOUNT) booleano True, si la fuente está asociada con SERVICE_ACCOUNT, como source.matchServiceAccount('x@my-project.iam.gserviceaccount.com').
inIpRange(IP_ADDRESS,
IP_RANGE)
booleano True, si IP_ADDRESS se encuentra dentro de IP_RANGE, como inIpRange(source.ip, '1.2.3.0/24') Las máscaras de subred para las direcciones IPv6 no pueden ser mayores que /64.

Limitaciones

Secure Web Proxy no admite la capacidad de configurar reglas de proxy TCP para aplicaciones del protocolo de datagramas de usuario (UDP). Como resultado, el proxy web seguro bloquea el tráfico de las aplicaciones basadas en UDP.

Reglas de coincidencia de host

Cuando configures las reglas de salida para tu instancia de Proxy web seguro, asegúrate de definir las reglas según el host de destino de las solicitudes salientes. También debes tener en cuenta cómo funciona la coincidencia de hosts según el modo de implementación de tu instancia de Proxy web seguro.

Modo de proxy explícito

  • Para las solicitudes HTTP sin encriptar, puedes usar la regla host() == "myownpersonaldomain.com" en SessionMatcher. El proxy web seguro valida esta regla en relación con el campo host del encabezado CONNECT de la solicitud HTTP.

  • Si deseas habilitar la inspección de TLS y establecer reglas basadas en Application Matcher, debes establecer una regla SessionMatcher que se evalúe como TRUE. Por ejemplo, puedes usar la regla host() == "myownpersonaldomain.com" en SessionMatcher y, luego, agregar la regla request.host() == "myownpersonaldomain.com" en ApplicationMatcher.

    Primero, el Proxy web seguro valida el SessionMatcher en relación con el campo host del encabezado CONNECT de la solicitud HTTP. Solo si la regla SessionMatcher es válida, el Proxy web seguro examina las reglas ApplicationMatcher.

Modo de próximo salto

  • Para las solicitudes HTTP sin encriptar, puedes usar la regla host() == "myownpersonaldomain.com" en SessionMatcher. El proxy web seguro valida esta regla en relación con el campo host del encabezado de solicitud HTTP estándar.

    Sin embargo, si la solicitud está encriptada con TLS, el proxy web seguro valida la misma regla con el encabezado de indicación de nombre del servidor (SNI) en la solicitud saliente.

  • Si deseas habilitar la inspección de TLS y establecer reglas basadas en ApplicationMatcher, debes establecer una regla SessionMatcher que se evalúe como TRUE. Por ejemplo, puedes usar la regla host() == "myownpersonaldomain.com" en SessionMatcher y, luego, agregar la regla request.host() == "myownpersonaldomain.com" en ApplicationMatcher.

    Primero, el proxy web seguro valida el SessionMatcher con el encabezado SNI en la solicitud saliente. Y solo si la regla SessionMatcher es válida, el Proxy web seguro examina las reglas ApplicationMatcher.