Os registos por pedido do Google Cloud Armor para o nome da política de segurança, a prioridade da regra de correspondência, a ação associada e as informações relacionadas são registados como parte do registo para equilibradores de carga de aplicações externos e equilibradores de carga de rede de proxy externos. O registo para novos serviços de back-end está desativado por predefinição, pelo que tem de ativar o registo para registar informações de registo completas para o Cloud Armor.
Os registos do Cloud Armor fazem parte dos registos do Cloud Load Balancing. Isto significa que a geração de registos do Cloud Armor está sujeita à taxa de amostragem de registos configurada para o seu equilibrador de carga. Se reduzir a taxa de amostragem do balanceador de carga, os registos de pedidos do Cloud Armor são amostrados a essa taxa reduzida. Além disso, se usar a referência de serviços entre projetos, os registos são gerados no projeto anfitrião ou de serviço que inclui o frontend e o mapa de URLs do seu equilibrador de carga. Por conseguinte, recomendamos que os administradores no projeto de front-end concedam autorizações para ler registos e métricas aos administradores no projeto de back-end.
Através do registo, pode ver todos os pedidos avaliados por uma política de segurança do Cloud Armor e o resultado ou a ação realizada com base na regra correspondente de prioridade mais alta. Por exemplo, para ver pedidos recusados, pode usar filtros como
jsonPayload.enforcedSecurityPolicy.outcome="DENY"
ou
jsonPayload.statusDetails="denied_by_security_policy"
.
Além disso, pode definir diferentes níveis de registo para ajudar a avaliar se as suas políticas de segurança e respetivas regras estão a funcionar conforme esperado. Para obter informações completas, consulte o artigo Registo detalhado.
Entradas do registo da política de segurança
As seguintes entradas de registo no Explorador de registos destinam-se ao registo de regras e políticas de segurança do Cloud Armor. As entradas incluem a seguinte estrutura
em jsonPayload
. Os detalhes do pedido HTTP são apresentados na mensagem httpRequest
.
statusDetails
: uma descrição textual do código de resposta.redirected_by_security_policy
: o pedido foi redirecionado por uma regra de redirecionamento,GOOGLE_RECAPTCHA
ouEXTERNAL_302
.denied_by_security_policy
: um pedido foi recusado pelo balanceador de carga devido a uma política de segurança do Cloud Armor.body_denied_by_security_policy
: um corpo do pedido foi recusado pelo equilibrador de carga devido a uma política de segurança do Cloud Armor.
enforcedSecurityPolicy
: a regra da política de segurança que foi aplicada.name
: o nome da política de segurança.priority
: uma prioridade numérica da regra correspondente na política de segurança.adaptiveProtection
: informações sobre a regra de proteção adaptativa implementada automaticamente, se aplicável.autoDeployAlertId
: o ID do alerta dos eventos que a proteção adaptativa detetou.
configuredAction
: o nome da ação configurada na regra correspondente, por exemplo,ALLOW
,DENY
,GOOGLE_RECAPTCHA
,EXTERNAL_302
,THROTTLE
(para uma regra de limitação) eRATE_BASED_BAN
(para uma regra de proibição baseada na taxa).rateLimitAction
: informações sobre a ação de limite de taxa quando é encontrada uma regra de limitação ou uma regra de proibição baseada em taxas.key
: valor da chave do limite de taxa (até 36 bytes). Este campo é omitido se o tipo de chave forALL
ou se o tipo de chave forHTTP-HEADER
ouHTTP-COOKIE
e o cabeçalho ou o cookie especificado não estiver presente no pedido.outcome
: os valores possíveis são os seguintes:"RATE_LIMIT_THRESHOLD_CONFORM"
se estiver abaixo do limite de taxa configurado."RATE_LIMIT_THRESHOLD_EXCEED"
se estiver acima do limite de taxa configurado"BAN_THRESHOLD_EXCEED"
se estiver acima do limite de proibição configurado.
outcome
: o resultado da execução da ação configurada, por exemplo,ACCEPT
,DENY
,REDIRECT
eEXEMPT
.preconfiguredExprIds
: os IDs de todas as expressões de regras de WAF pré-configuradas que acionaram a regra.threatIntelligence
: informações sobre as listas de endereços IP correspondentes do Google Threat Intelligence, se aplicável.categories
: os nomes das listas de endereços IP correspondentes.
addressGroup
: informações sobre os grupos de moradas correspondentes, se aplicável.names
: os nomes dos grupos de moradas com correspondência.
previewSecurityPolicy
: preenchido se um pedido corresponder a uma regra configurada para pré-visualização (presente apenas quando uma regra de pré-visualização teria tido prioridade sobre a regra aplicada).name
: o nome da política de segurançapriority
: uma prioridade numérica da regra correspondente na política de segurança.configuredAction
: o nome da ação configurada na regra correspondente, por exemplo,ALLOW
,DENY
,GOOGLE_RECAPTCHA
,EXTERNAL_302
,THROTTLE
(para uma regra de limitação) eRATE_BASED_BAN
(para uma regra de proibição baseada na taxa).rateLimitAction
: informações sobre a ação de limite de taxa quando é encontrada uma regra de limitação ou uma regra de proibição baseada em taxas.key
: valor da chave do limite de taxa (até 36 bytes). Este campo é omitido se o tipo de chave forALL
ou se o tipo de chave forHTTP-HEADER
ouHTTP-COOKIE
e o cabeçalho ou o cookie especificado não estiver presente no pedido.outcome
: os valores possíveis são os seguintes:"RATE_LIMIT_THRESHOLD_CONFORM"
se estiver abaixo do limite de taxa configurado."RATE_LIMIT_THRESHOLD_EXCEED"
se estiver acima do limite de taxa configurado"BAN_THRESHOLD_EXCEED"
se estiver acima do limite de proibição configurado.
outcome
: o resultado da execução da ação configurada, por exemplo,ACCEPT
,DENY
,REDIRECT
eEXEMPT
.preconfiguredExprIds
: os IDs de todas as expressões de regras de WAF pré-configuradas que acionaram a regra.threatIntelligence
: informações sobre as listas de endereços IP correspondentes das informações sobre ameaças, se aplicável.categories
: os nomes das listas de endereços IP correspondentes.
addressGroup
: informações sobre os grupos de moradas correspondentes, se aplicável.names
: os nomes dos grupos de moradas com correspondência.
enforcedEdgeSecurityPolicy
: a regra da política de segurança de edge que foi aplicada.name
: o nome da política de segurança.priority
: a prioridade da regra correspondente na política de segurança.configuredAction
: o nome da ação configurada na regra de correspondência, por exemplo,ALLOW
,DENY
.outcome
: o resultado da execução da ação configurada, por exemplo,ACCEPT
,DENY
.
previewEdgeSecurityPolicy
: preenchido se um pedido corresponder a uma regra de política de segurança de limite configurada para pré-visualização. A entrada de registopreviewEdgeSecurityPolicy
só está presente quando uma regra de pré-visualização tem prioridade sobre a regra aplicada.name
: o nome da política de segurança.priority
: uma prioridade numérica da regra correspondente na política de segurança.configuredAction
: o nome da ação configurada na regra de correspondência, por exemplo,ALLOW
,DENY
.outcome
: o resultado da execução da ação configurada, por exemplo,ACCEPT
,DENY
.
Ver registos
Só pode ver os registos de uma política de segurança do Cloud Armor na Google Cloud consola.
Consola
Na Google Cloud consola, aceda a Políticas do Cloud Armor.
Clique em
Ações.Selecione Ver registos.
Peça o registo de dados
Quando usado com o Cloud Armor, jsonPayload
tem o seguinte campo adicional:
securityPolicyRequestData
: dados relativos ao pedido enquanto estão a ser processados por uma política de segurança, independentemente da regra que seja correspondida eventualmente.recaptchaActionToken
: dados relacionados com um token de ação do reCAPTCHA.score
: uma pontuação de legitimidade do utilizador incorporada num token de ação do reCAPTCHA. Só está presente quando um token de ação do reCAPTCHA é anexado ao pedido e é descodificado com êxito com base numa regra da política de segurança. Para mais informações, consulte o artigo Aplique a avaliação do reCAPTCHA.
recaptchaSessionToken
: dados relacionados com um token de sessão do reCAPTCHA.score
: uma pontuação de legitimidade do utilizador incorporada num token de sessão do reCAPTCHA. Só está presente quando um token de sessão do reCAPTCHA é anexado ao pedido e é descodificado com êxito com base numa regra da política de segurança.
tlsJa4Fingerprint
: uma impressão digital JA4 TTL/SSL se o cliente se ligar usandoHTTPS
,HTTP/2
ouHTTP/3
. Só está presente se a impressão digital estiver disponível e existir uma política de segurança que avalie o pedido (independentemente de uma expressão na política corresponder ao pedido).tlsJa3Fingerprint
: uma impressão digital JA3 TTL/SSL se o cliente se ligar através deHTTPS
,HTTP/2
ouHTTP/3
. Só está presente se a impressão digital estiver disponível e existir uma política de segurança que avalie o pedido (independentemente de uma expressão na política corresponder ao pedido).
Exemplos de registos
Segue-se um exemplo de detalhes do registo de uma regra de limitação que bloqueia um pedido:
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"
Segue-se um exemplo de detalhes do registo de uma regra de proibição baseada em taxas que bloqueia um pedido:
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"
O que se segue?
- Saiba mais acerca da resolução de problemas do Cloud Armor.