Neste documento, apresentamos uma visão geral das políticas de firewall do reCAPTCHA.
As políticas de firewall do reCAPTCHA são uma lista de regras configuráveis que correspondem a atributos de condição para proteger seu site contra spam e abuso.
Componentes da política de firewall do reCAPTCHA
Uma regra de política de firewall do reCAPTCHA consiste nos seguintes componentes:
path
: um caminho de URL a que a regra da política de firewall se aplica. Por exemplo,/login
. O caminho pode ser um padrão glob, como/*.html
.condition
: uma condição de 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 plug-in do WAF precisa executar quando a condição da política é atendida. Para mais informações, consulte ações de política.
Quando uma solicitação recebida corresponde ao caminho e à condição de uma política, o plug-in do reCAPTCHA para seu provedor de serviços de WAF aplica uma ação. As ações disponíveis incluem: permitir, bloquear ou redirecionar a solicitação para uma página de desafio intersticial.
As políticas são avaliadas em ordem, e apenas uma é ativada. Se nenhuma política corresponder, a regra padrão será permitir o acesso.
A política de firewall de exemplo do reCAPTCHA a seguir contém uma regra aplicada
à ação login
. Ele bloqueia o acesso se a pontuação for menor que 0,5.
policy {
path: login.php
condition: recaptcha.score < 0.5
action: block
}
Atributos de condição da política de firewall do reCAPTCHA
A tabela a seguir lista os atributos de token do reCAPTCHA que podem ser usados para definir condições nas políticas de firewall do reCAPTCHA.
Nome do atributo | Tipo de dado | Descrição |
---|---|---|
recaptcha.token.valid |
booleano | Se o token recebido é válido. Um token é válido se não estiver incorreto ou 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
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 do reCAPTCHA para WAF transmitida com
a solicitação.
Para comparar o valor de
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 de política de firewall do reCAPTCHA
A tabela a seguir lista as várias ações de política que podem ser especificadas nas regras de política de firewall do reCAPTCHA:
Ação da política | Descrição | Resultado da ação |
---|---|---|
allow |
Permite o acesso à página solicitada. | A solicitação de entrada do usuário é ininterrupta para seu back-end. |
block |
Nega o acesso à página solicitada. | Um erro HTTP 403 (proibido) é retornado ao usuário. |
redirect |
Redireciona a solicitação do usuário recebida para a página de teste do reCAPTCHA. | A página de desafio do 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 |
Serve 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 continue para o back-end. Em seguida, 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. |