Este documento mostra exemplos de políticas de firewall reCAPTCHA que você pode com base na implementação dos recursos do reCAPTCHA WAF.
Exemplo 1: uma política de firewall reCAPTCHA com token de ação
É possível adicionar um token de ação reCAPTCHA para proteger uma ação do usuário, como um login. Para garantir que o cookie do reCAPTCHA seja emitido quando o usuário iniciar a ação de login, integre o script do token de ação do reCAPTCHA na página inicial.
Crie uma política de firewall reCAPTCHA com as seguintes regras:
- O caminho em que a regra precisa ser aplicada. Nesse caso,
login.php
. - Se o atributo de nome de ação do token de ação não corresponder à ação protegida do usuário ou se a pontuação for menor ou igual a 0,1, bloqueie o acesso.
gcloud recaptcha firewall-policies create \
--description="example1 policy" \
--path="/login.php" \
--condition="recaptcha.token.action != "login" || recaptcha.score <= 0.1" \
--actions="block"
A ilustração a seguir mostra um fluxo de trabalho que usa o token de ação reCAPTCHA e a política de firewall reCAPTCHA correspondente:
Exemplo 2: uma política de firewall reCAPTCHA com token de sessão
É possível adicionar um token de sessão reCAPTCHA às páginas que um usuário acessa para que o cookie é atualizado periodicamente, por exemplo, uma página de finalização da compra. Integre o script do token de sessão do reCAPTCHA para que o cookie reCAPTCHA seja emitido e atualizado no back-end do aplicativo antes que um usuário entre na página de finalização da compra. Na página de finalização da compra, integre o script do token de sessão do reCAPTCHA para que o cookie reCAPTCHA seja emitido e atualizado no back-end do aplicativo para evitar que ele expire.
Crie uma política de firewall reCAPTCHA com a seguinte regra:
- O caminho em que a regra precisa ser aplicada. Nesse caso,
checkout.html
. - Se a pontuação for menor ou igual a 0,1, bloqueie o acesso.
gcloud recaptcha firewall-policies create \
--description="example2 policy" \
--path="/checkout.html" \
--condition="recaptcha.score <=0.1" \
--actions="block"
A ilustração a seguir mostra um fluxo de trabalho que usa o recurso de token de sessão do reCAPTCHA e a política de firewall reCAPTCHA correspondente:
Exemplo 3: uma política de firewall reCAPTCHA com uma página de desafio
É possível adicionar o recurso da página de teste do reCAPTCHA quando você quer que o usuário seja redirecionado para uma página intermediária que determina se a solicitação do usuário é potencialmente fraudulenta ou legítima.
Para as páginas que você quer proteger, crie regras de política de firewall reCAPTCHA para redirecionar o usuário para a página do desafio:
- Para a página protegida, se o token não for válido, redirecione o usuário
para a página do desafio. Nesse caso,
index.html
. Se a pontuação for menor ou igual a 0,1, redirecione o usuário para a página de erro página.
gcloud recaptcha firewall-policies create \ --description="example3-1 policy" \ --path="/index.html" --condition="!recaptcha.token.valid" --actions="redirect"
gcloud recaptcha firewall-policies create \ --description="example3-2 policy" \ --path="/index.html" --condition="recaptcha.score <= 0.1" --actions="substitute { path: /bot_error }"
A ilustração a seguir mostra um fluxo de trabalho que usa o recurso da página de teste do reCAPTCHA e as políticas de firewall do reCAPTCHA correspondentes:
Exemplo 4: uma política de firewall reCAPTCHA com token de ação e página de desafio
Você pode usar mais de um recurso do reCAPTCHA WAF quando quiser usá-lo. diferentes níveis de proteção nas páginas da Web. Por exemplo, você pode usar o recurso de token de ação ou de sessão em uma página para avaliar o tráfego recebido usando as pontuações do reCAPTCHA e usar o recurso de página de teste em uma página em que você quer garantir que o usuário não seja um bot.
É possível adicionar um token de ação reCAPTCHA para proteger uma ação do usuário, como o login. Para garantir que o cookie do reCAPTCHA seja emitido quando o usuário iniciar a ação de login, integre o script do token de ação do reCAPTCHA na página antes da ação de login protegida. Por exemplo, a página inicial. Na página de download, redirecione o usuário para a página de desafio, use a regra da política de firewall reCAPTCHA.
Crie uma política de firewall reCAPTCHA com as seguintes regras:
- O caminho em que a regra precisa ser aplicada. Nesse caso,
login.php
. - Se o atributo "action name" do token de ação não corresponder à ação
protegida do usuário ou se o tipo de avaliação não for
ACTION
ou se a pontuação for menor ou igual a 0,1, bloqueie o acesso. - Para redirecionar o usuário para a página do desafio quando ele quiser fazer o download do conteúdo, adicionar uma regra de política de firewall para redirecionar o usuário.
- Se a pontuação for menor ou igual a 0,1 ou se o tipo de avaliação não for
CHALLENGEPAGE
e redirecione o usuário para a página de erro.
gcloud recaptcha firewall-policies create --description="example4-1 policy"
--path="/login.php" --condition="recaptcha.token.action != "login" || recaptcha.assessment_type != AssessmentType.ACTION || recaptcha.score <= 0.1" --actions="block"
gcloud recaptcha firewall-policies create --description="example4-2 policy"
--path="/content/example.pdf" --condition="recaptcha.assessment_type != AssessmentType.CHALLENGEPAGE" --actions="redirect"
gcloud recaptcha firewall-policies create --description="example4-3 policy"
--path="/content/example.pdf" --condition="recaptcha.score <= 0.1 || recaptcha.assessment_type != AssessmentType.CHALLENGEPAGE" --actions="substitute { path: /bot_error }"
A ilustração a seguir mostra um fluxo de trabalho que usa recursos da página de teste e um token de ação reCAPTCHA, além das políticas de firewall do reCAPTCHA correspondentes:
Exemplo 5: uma política de firewall reCAPTCHA com proteção expressa do WAF e página de teste
Você pode adicionar o recurso de proteção expressa do reCAPTCHA WAF quando quiser avaliar a interação do usuário sem atrito e, em seguida, redirecionar os usuários para a página do desafio se a pontuação for baixa; Por exemplo, para evitar o scraping de dados, você quer bloquear o tráfego para uma página de catálogo.
Crie uma política de firewall reCAPTCHA com a seguinte regra:
- O caminho em que a regra precisa ser aplicada.
- Se a pontuação for menor ou igual a 0,3, redirecione o usuário para o na página do desafio.
O exemplo a seguir cria uma política de firewall reCAPTCHA para redirecionar o tráfego
segmentação para /catalog1/itemlist.html
quando a pontuação for menor que 0,3.
gcloud recaptcha firewall-policies create \
--description="example5 policy" \
--path="/catalog1/itemlist.html" \
--condition="recaptcha.score <= 3" \
--actions="redirect"