Registros por solicitud de Google Cloud Armor para el nombre de la política de seguridad, la prioridad de la regla de coincidencia acción asociada y la información relacionada se registran como parte del registro para balanceadores de cargas de aplicaciones externos y balanceadores de cargas de red de proxy externos. El registro para los servicios de backend nuevos está inhabilitado de forma predeterminada, por lo que debes habilitar el registro a fin de ingresar la información de registro completa para Google Cloud Armor.
Los registros de Google Cloud Armor forman parte de los registros de Cloud Load Balancing. Esto significa que la generación de registros de Google Cloud Armor la tasa de muestreo configurada para tu balanceador de cargas. Si reduces la tasa de muestreo para el balanceador de cargas, tus registros de solicitudes de Google Cloud Armor se muestrean en que redujo el porcentaje. Además, si usas la referencia de servicio entre proyectos, se generan registros en el proyecto host o de servicio que incluye el frontend y el mapa de URL del balanceador de cargas. Por lo tanto, recomendamos que los administradores del proyecto de frontend otorguen permisos de lectura de registros y métricas a los administradores del proyecto de backend.
Con el registro, puedes ver todas las solicitudes evaluadas por un agente de Google Cloud Armor
política de seguridad de Google y el resultado o la acción que se tomó en función de la prioridad más alta
regla coincidente. Por ejemplo, para ver las solicitudes rechazadas, puedes usar filtros como
jsonPayload.enforcedSecurityPolicy.outcome="DENY"
o
jsonPayload.statusDetails="denied_by_security_policy"
Para habilitar el registro de un balanceador de cargas de aplicaciones externo, consulta Registro y supervisión del balanceador de cargas de aplicaciones externo. Para el balanceador de cargas de red del proxy externo, puedes usar Google Cloud CLI comandos como se mostró en la sección anterior Registro y supervisión del balanceador de cargas de aplicaciones externo . No puedes habilitar el registro para el balanceador de cargas de red del proxy externo con la consola de Google Cloud.
Además, puedes establecer diferentes niveles de registro para evaluar si tus políticas de seguridad y sus reglas funcionan según lo previsto. Para obtener información completa, consulta Registro detallado.
Entradas de registro de la política de seguridad
Las siguientes entradas de registro en el explorador de registros son para la política de seguridad y el registro de reglas de Google Cloud Armor. Las entradas incluyen la siguiente estructura en jsonPayload
. Los detalles de la solicitud HTTP aparecen en el mensaje httpRequest
.
statusDetails
(string): Una descripción textual del código de respuesta.redirected_by_security_policy
: La solicitud se redireccionó mediante una regla de redireccionamiento; ya seaGOOGLE_RECAPTCHA
oEXTERNAL_302
.denied_by_security_policy
: El balanceador de cargas rechazó una solicitud debido a una política de seguridad de Google Cloud Armor.body_denied_by_security_policy
: El balanceador de cargas rechazó el cuerpo de una solicitud debido a una política de seguridad de Google Cloud Armor.
enforcedSecurityPolicy
: La regla de la política de seguridad que se aplicó.name
(string): El nombre de la política de seguridad.priority
(número): La prioridad de la regla coincidente en la política de seguridad.adaptiveProtection
: información sobre la regla de protección adaptable implementada de forma automática, si corresponde.autoDeployAlertId
: el ID de alerta de los eventos que detectó la protección adaptable.
configuredAction
(string): el nombre de la acción configurada en la regla coincidente, por ejemplo:ALLOW
,DENY
,GOOGLE_RECAPTCHA
,EXTERNAL_302
,THROTTLE
(para una regla de limitación),RATE_BASED_BAN
(para una regla de bloqueo basada en la frecuencia).rateLimitAction
: Información sobre la acción de límite de frecuencia cuando se detecta una coincidencia con una regla de limitación o una de bloqueo basada en la velocidad.key
(string): Valor de la clave de límite de frecuencia (hasta 32 bytes). Este campo se omite si el tipo de clave esALL
, o si el tipo de clave esHTTP-HEADER
oHTTP-COOKIE
y el encabezado o cookie especificado no está presente en la solicitud.outcome
(string): Los valores posibles son los siguientes:"RATE_LIMIT_THRESHOLD_CONFORM"
si está por debajo del umbral del límite de frecuencia configurado."RATE_LIMIT_THRESHOLD_EXCEED"
si supera el umbral del límite de frecuencia configurado."BAN_THRESHOLD_EXCEED"
si supera el umbral de bloqueo configurado.
outcome
(string): El resultado de la ejecución de la acción configurada, por ejemplo,ACCEPT
,DENY
,REDIRECT
,EXEMPT
.preconfiguredExprIds
(string): El ID de todas las expresiones de reglas de WAF preconfiguradas que activaron la regla.threatIntelligence
: información sobre las listas de direcciones IP coincidentes de la Inteligencia contra amenazas, si corresponde.categories
: (cadena) con los nombres de la lista de direcciones IP coincidentes.
previewSecurityPolicy
: Se propaga si la solicitud coincide con una regla configurada para la vista previa (presente solo cuando una regla de vista previa hubiera tenido prioridad sobre la regla aplicada).name
(string): el nombre de la política de seguridadpriority
(número): La prioridad de la regla coincidente en la política de seguridad.configuredAction
(string): el nombre de la acción configurada en la regla coincidente, por ejemplo:ALLOW
,DENY
,GOOGLE_RECAPTCHA
,EXTERNAL_302
,THROTTLE
(para una regla de limitación),RATE_BASED_BAN
(para una regla de bloqueo basada en la frecuencia).rateLimitAction
: Información sobre la acción de límite de frecuencia cuando se detecta una coincidencia con una regla de limitación o una de bloqueo basada en la velocidad.key
(string): Valor de la clave de límite de frecuencia (hasta 32 bytes). Este campo se omite si el tipo de clave esALL
, o si el tipo de clave esHTTP-HEADER
oHTTP-COOKIE
y el encabezado o cookie especificado no está presente en la solicitud.outcome
(string): Los valores posibles son los siguientes:"RATE_LIMIT_THRESHOLD_CONFORM"
si está por debajo del umbral del límite de frecuencia configurado."RATE_LIMIT_THRESHOLD_EXCEED"
si supera el umbral del límite de frecuencia configurado."BAN_THRESHOLD_EXCEED"
si supera el umbral de bloqueo configurado.
outcome
(string): El resultado de la ejecución de la acción configurada.outcome
(string): El resultado de la ejecución de la acción configurada, por ejemplo,ACCEPT
,DENY
,REDIRECT
,EXEMPT
.preconfiguredExprIds
(string): El ID de todas las expresiones de reglas de WAF preconfiguradas que activaron la regla.threatIntelligence
: información sobre las listas de direcciones IP coincidentes de la Inteligencia contra amenazas, si corresponde.categories
: (cadena) con los nombres de la lista de direcciones IP coincidentes.
enforcedEdgeSecurityPolicy
(vista previa): La regla de la política de seguridad perimetral que se aplicó.name
(string): El nombre de la política de seguridad.priority
(número): La prioridad de la regla coincidente en la política de seguridad.configuredAction
(string): El nombre de la acción configurada en la regla coincidente, por ejemplo,ALLOW
,DENY
.outcome
(string): El resultado de la ejecución de la acción configurada, por ejemplo,ACCEPT
,DENY
.
previewEdgeSecurityPolicy
(Vista previa): Se propaga si una solicitud coincide con una regla de política de seguridad perimetral configurada para la vista previa (presente solo cuando una regla de vista previa hubiera tenido prioridad sobre la regla aplicada).name
(string): El nombre de la política de seguridad.priority
(número): La prioridad de la regla coincidente en la política de seguridad.configuredAction
(string): El nombre de la acción configurada en la regla coincidente, por ejemplo,ALLOW
,DENY
.outcome
(string): El resultado de la ejecución de la acción configurada, por ejemplo,ACCEPT
,DENY
.
Visualiza registros
Puedes ver los registros de una política de seguridad de Google Cloud Armor solo en la consola de Google Cloud.
Console
En la consola de Google Cloud, ve a Políticas de Google Cloud Armor.
Haz clic en
Acciones.Selecciona Ver registros.
Solicitar el registro de datos
Cuando se usa con Google Cloud Armor, jsonPayload
tiene las siguientes funciones adicionales
:
securityPolicyRequestData
: datos que pertenecen a la solicitud mientras se procesa mediante una política de seguridad, sin importar qué regla coincide finalmente.recaptchaActionToken
: Datos relacionados con un token de acción de reCAPTCHA.score (float)
: Una puntuación de legitimidad del usuario incorporada en un token de acción de reCAPTCHA. Solo está presente cuando se trata de un reCAPTCHA El token de acción se adjunta a la solicitud y se decodifica correctamente. según una regla de política de seguridad. Para obtener más información, consulta Aplicar la evaluación de reCAPTCHA.
recaptchaSessionToken
: Datos relacionados con un token de sesión de reCAPTCHA.score (float)
: Una puntuación de legitimidad del usuario incorporada en un token de sesión de reCAPTCHA. Solo está presente cuando se trata de un reCAPTCHA El token de sesión se adjunta a la solicitud y se decodifica correctamente. según una regla de política de seguridad.
tlsJa3Fingerprint
: una huella digital TTL/SSL de JA3 si el cliente se conecta conHTTPS
,HTTP/2
oHTTP/3
. Solo está presente si la huella dactilar está disponible y hay una política de seguridad que evalúa la solicitud (sin importar si una expresión en la política coincide con la solicitud).
Ejemplos de registros
El siguiente es un ejemplo de detalles de registro de una regla de regulación que bloquea una solicitud:
jsonPayload: { enforcedSecurityPolicy: { priority: 100 name: "sample-prod-policy" configuredAction: "THROTTLE" outcome: "DENY" rateLimitAction: { key:"sample-key" outcome:"RATE_LIMIT_THRESHOLD_EXCEED" } } @type: "type.googleapis.com/google.cloud.loadbalancing.type.LoadBalancerLogEntry" statusDetails: "denied_by_security_policy" } httpRequest: {8} resource: {2} timestamp: "2021-03-17T19:16:48.185763Z"
El siguiente es un ejemplo de los detalles de registro de una regla de bloqueo basada en la tarifa que bloquea una solicitud:
jsonPayload: { @type: "type.googleapis.com/google.cloud.loadbalancing.type.LoadBalancerLogEntry" enforcedSecurityPolicy: { priority: 150 name: "sample-prod-policy" outcome: "DENY" configuredAction: "RATE_BASED_BAN" rateLimitAction: { key:"sample-key" outcome:"BAN_THRESHOLD_EXCEED" } } statusDetails: "denied_by_security_policy" } httpRequest: {8} resource: {2} timestamp: "2021-03-17T19:27:17.393244Z"
¿Qué sigue?
Obtén más información para solucionar problemas de Google Cloud Armor.