Visão geral das políticas de firewall do reCAPTCHA

Este documento fornece uma visão geral das políticas de firewall reCAPTCHA.

Uma política de firewall reCAPTCHA é um conjunto de regras que correspondem aos atributos de condição para proteger seu site contra spam e abuso. Cada regra é avaliada para o tráfego de entrada. As regras são avaliadas na mesma ordem em que são adicionadas na política.

Componentes da política de firewall do reCAPTCHA

Uma regra da política de firewall reCAPTCHA consiste nos seguintes componentes:

  • path: um caminho do URL ao qual a regra da política de firewall se aplica. Por exemplo, /login.
  • condition: uma condição da política. Uma condição de política é uma expressão CEL (Common Expression Language) que precisa ser resolvida como um valor booleano. Por exemplo, recaptcha.score >= 0.5.
  • action: uma ação que o provedor de serviços WAF precisa executar quando a condição da política é atendida. Para mais informações, consulte as ações da política.

Quando uma solicitação recebida corresponde a uma condição de política para o caminho especificado, o provedor de serviços WAF permite, bloqueia ou redireciona a solicitação, com base na ação especificada. A regra padrão é permitir o acesso.

Um exemplo de política de firewall reCAPTCHA

O exemplo de política de firewall reCAPTCHA do exemplo a seguir contém uma regra que é aplicada à ação login. Ela bloqueia o acesso se a pontuação for menor que 0,5.

     policy {
          path: login.php
          condition: recaptcha.score < 0.5
          action: block
        }

Atributos da condição da política de firewall do reCAPTCHA

A tabela a seguir lista os atributos do token reCAPTCHA que podem ser usados para definir condições nas políticas de firewall reCAPTCHA.

Nome do atributo Tipo de dados Descrição
recaptcha.token.valid boolean Se o token recebido é válido. Um token será válido se não estiver incorreto ou tiver expirado, mesmo que a pontuação seja baixa.
recaptcha.token.action string O nome da ação fornecido na geração do token. Preenchido apenas para tokens de ação. Esse é o parâmetro action que é transmitido para grecaptcha.enterprise.execute() quando o token é criado. Para mais informações, consulte Nomes de ação.
recaptcha.score float A pontuação de um token reCAPTCHA. Uma pontuação válida varia de 0,0 a 1,0. A pontuação 1,0 indica que a interação apresenta risco baixo e é provavelmente legítima, enquanto 0,0 indica que a interação apresenta alto risco e pode ser fraudulenta. Para mais informações, consulte Como interpretar pontuações.
recaptcha.assessment_type integer O tipo de avaliação que foi feita. assessment_type é definido de acordo com a chave reCAPTCHA para WAF transmitida com a solicitação.

Para comparar o valor de recaptcha.assessment_type na expressão CEL, use uma das constantes abaixo:

  • AssessmentType.ACTION
  • AssessmentType.SESSION
  • AssessmentType.CHALLENGEPAGE
  • AssessmentType.EXPRESS
Por exemplo, para comparar uma avaliação do token de ação, use AssessmentType.ACTION.
http.ip string O endereço IP da solicitação recebida.
http.path string O caminho do URI da solicitação.
http.domain string O domínio do URI solicitado.

Ações da política de firewall do reCAPTCHA

A tabela a seguir lista as várias ações que podem ser especificadas nas regras da política de firewall do reCAPTCHA:

Ação de política Descrição Resultado da ação
allow Permite o acesso à página solicitada. A solicitação recebida do usuário não é interrompida no back-end.
block Nega o acesso à página solicitada. Um erro HTTP 403 (proibido) é retornado ao usuário.
redirect Redireciona a solicitação recebida do usuário para a página de desafio do reCAPTCHA. A página de desafio reCAPTCHA avalia a solicitação do usuário e anexa um cookie com base na avaliação. Mais tarde, a solicitação do usuário é redirecionada novamente para a página original.
substitute Veicula uma página diferente da solicitada para uma solicitação fraudulenta do usuário. O caminho solicitado é substituído por um caminho diferente ao enviar a solicitação para o back-end. O usuário continua vendo o URL original.
set_header Define um cabeçalho personalizado e permite que a solicitação do usuário recebida continue para o back-end. Então, o back-end pode acionar uma proteção personalizada. Um cabeçalho é anexado à solicitação do usuário. Seu back-end usa esse cabeçalho para acionar uma proteção ou análise personalizada.

A seguir