Entender os recursos de integração do reCAPTCHA para o Google Cloud Armor e determinar qual deles é mais adequado ao seu caso de uso.
O reCAPTCHA oferece os seguintes recursos que podem ser usados para integração com o Google Cloud Armor:
Visão geral dos recursos
As integrações do reCAPTCHA para o Google Cloud Armor são compatíveis com tokens de ação, tokens de sessão e páginas de teste.
É possível usar um ou mais recursos do reCAPTCHA para o Google Cloud Armor em um único aplicativo. Por exemplo, é possível aplicar um token de sessão para todas as páginas e, com base na pontuação do token de sessão, redirecionar solicitações suspeitas para a página de teste reCAPTCHA. Além disso, é possível usar um token de ação para ações de alto perfil, como finalização de compra. Para mais informações, consulte os exemplos.
A tabela a seguir mostra uma breve comparação dos recursos disponíveis do reCAPTCHA para o Google Cloud Armor:
| Categoria de comparação | Tokens de ação reCAPTCHA | Tokens de sessão reCAPTCHA | Página de teste do reCAPTCHA |
|---|---|---|---|
| Caso de uso | Use para proteger ações do usuário, como login ou postagens de comentários. | Usado para proteger toda a sessão do usuário no domínio do site. | Use quando suspeitar de atividade de spam direcionada ao seu site e precisar
filtrar bots.
Esse método interrompe a atividade do usuário porque ele precisa verificar um teste de CAPTCHA. |
| Plataformas compatíveis | Sites e aplicativos para dispositivos móveis | Sites | Sites |
| Esforço de integração do cliente | Média
Integração manual do lado do cliente. |
Média
Instale o JavaScript do reCAPTCHA manualmente ou por injeção no WAF. |
Baixa
Intersticial acionado por políticas de segurança. |
| Precisão da detecção | Maior
Os indicadores específicos de cliente, servidor e ação estão disponíveis. |
Alta
Os indicadores específicos do cliente e do servidor estão disponíveis. |
Média
Os indicadores específicos do cliente e do servidor estão disponíveis. Os indicadores do cliente só estão disponíveis em uma página intersticial. |
| Versão compatível do reCAPTCHA | Chaves de caixa de seleção e baseadas em pontuação do reCAPTCHA | Chaves baseadas em pontuação do reCAPTCHA | Chaves baseadas em teste reCAPTCHA incorporadas em uma página intersticial |
Tokens de ação reCAPTCHA
É possível usar tokens de ação do reCAPTCHA para proteger interações importantes do usuário, como finalização de compra em páginas da Web e em aplicativos para dispositivos móveis.
O fluxo de trabalho de tokens de ação do reCAPTCHA consiste nas seguintes etapas:
- Quando um usuário final aciona uma ação protegida pelo reCAPTCHA, a página da Web ou o aplicativo para dispositivos móveis envia sinais coletados no navegador para o reCAPTCHA para análise.
- O reCAPTCHA envia um token de ação para a página da Web ou o aplicativo para dispositivos móveis.
- Anexe esse token de ação ao cabeçalho da solicitação que você quer proteger.
- Quando o usuário final solicita acesso com o token de ação, o Google Cloud Armor decodifica e valida os atributos do token de ação em vez do aplicativo de back-end.
- O Google Cloud Armor aplica ações com base nas regras de política de segurança configuradas.
O diagrama de sequência a seguir mostra o fluxo de trabalho dos tokens de ação do reCAPTCHA para sites:
O diagrama de sequência a seguir mostra o fluxo de trabalho dos tokens de ação do reCAPTCHA para aplicativos para dispositivos móveis:
Tokens de sessão reCAPTCHA
É possível usar tokens de sessão do reCAPTCHA quando você quer proteger
toda a sessão do usuário no domínio do site. Com um token de sessão, é possível
reutilizar um token válido em solicitações por um período especificado, para que você não
precise chamar execute() para cada ação do usuário, reduzindo o atrito do usuário e o
número de chamadas para execute().
Para que o reCAPTCHA aprenda sobre o padrão de navegação dos usuários finais, recomendamos que você use um token de sessão do reCAPTCHA em todas as páginas da Web do seu site.
O fluxo de trabalho de tokens de sessão reCAPTCHA consiste nas seguintes etapas:
- O navegador carrega o JavaScript do reCAPTCHA.
- O JavaScript do reCAPTCHA define um token de sessão como um cookie no navegador do usuário final depois de chamar
execute(). - O armazenamento do navegador do usuário final armazena o cookie, e o JavaScript do reCAPTCHA o atualiza a cada 30 minutos, desde que o JavaScript do reCAPTCHA permaneça ativo.
- Quando o usuário solicita acesso com o cookie, o Google Cloud Armor valida esse cookie e aplica ações com base nas regras da política de segurança.
O diagrama de sequência a seguir mostra o fluxo de trabalho dos tokens de sessão do reCAPTCHA:
Página de teste do reCAPTCHA
Use o recurso de página de teste reCAPTCHA para redirecionar solicitações recebidas no reCAPTCHA e determinar se cada solicitação é potencialmente fraudulenta ou legítima.
Essa aplicação de um redirecionamento e um possível teste de CAPTCHA interrompem a atividade do usuário. Recomendamos usar isso para filtrar bots quando suspeitar de atividade de spam direcionada ao site.
Quando um usuário final (usuário) acessa seu site pela primeira vez, os seguintes eventos ocorrem:
- Na camada do Google Cloud Armor, a solicitação do usuário é redirecionada para a página de teste reCAPTCHA.
- O reCAPTCHA responde com uma página HTML incorporada ao JavaScript do reCAPTCHA.
- Quando a página de teste reCAPTCHA é renderizada, o reCAPTCHA avalia a interação do usuário. Se necessário, o reCAPTCHA apresenta um desafio CAPTCHA ao usuário.
Dependendo do resultado da avaliação, o reCAPTCHA faz o seguinte:
- Se a interação do usuário for aprovada na avaliação, o reCAPTCHA emitirá um cookie de isenção. O navegador anexa esse cookie de isenção às solicitações subsequentes do usuário no site até que o cookie expire. Por padrão, o cookie de isenção expira após três horas.
- Se a interação do usuário não for aprovada na avaliação, o reCAPTCHA não emitirá um cookie de isenção.
O reCAPTCHA recarrega a página da Web com o cookie de isenção se o usuário acessá-la usando uma chamada GET/HEAD. Se o usuário acessar a página da Web usando uma chamada POST/PUT, o usuário precisará clicar no link de atualização da página.
O Google Cloud Armor isenta as solicitações que têm um cookie de isenção válido de serem redirecionadas novamente e concede acesso ao seu site.
O diagrama de sequência a seguir mostra o fluxo de trabalho da página de teste reCAPTCHA: