Funcionalidades para integração com o Google Cloud Armor

Este documento ajuda a compreender as funcionalidades do reCAPTCHA para o Google Cloud Armor e a determinar qual a funcionalidade que melhor se adequa ao seu exemplo de utilização.

O reCAPTCHA oferece as seguintes funcionalidades que pode usar para integrar com o Google Cloud Armor:

Descrição geral das funcionalidades

O reCAPTCHA para integrações do Google Cloud Armor suporta tokens de ação, tokens de sessão, página de desafio e reCAPTCHA express

Pode usar uma ou mais funcionalidades do reCAPTCHA for Google Cloud Armor numa única aplicação. Por exemplo, pode optar por aplicar um token de sessão a todas as páginas e, com base na pontuação do token de sessão, pode redirecionar pedidos suspeitos para a página de desafio do reCAPTCHA. Além disso, pode usar um token de ação para ações de perfil elevado, como o pagamento. Para mais informações, consulte exemplos.

A tabela seguinte mostra uma breve comparação das funcionalidades do reCAPTCHA para o Google Cloud Armor disponíveis:

Categoria de comparação Tokens de ação do reCAPTCHA Tokens de sessão do reCAPTCHA Página de desafio reCAPTCHA reCAPTCHA express
Exemplo de utilização Use para proteger ações do utilizador, como iniciar sessão ou publicar comentários. Use para proteger toda a sessão do utilizador no domínio do site. Use quando suspeitar de atividade de spam direcionada para o seu site e precisar de filtrar bots.

Este método interrompe a atividade de um utilizador porque este tem de validar um desafio CAPTCHA.

Use o reCAPTCHA express quando o seu ambiente não suportar a integração do JavaScript do reCAPTCHA ou dos SDKs para dispositivos móveis.
Plataformas suportadas Websites e apps para dispositivos móveis Websites Websites Todos os pedidos HTTP.

Incluindo: APIs, Websites, aplicações para dispositivos móveis e dispositivos de IoT, como TVs e consolas de jogos

Esforço de integração do cliente Médio

Integração manual do lado do cliente.

Médio

Instale o JavaScript do reCAPTCHA manualmente ou através da injeção no WAF.

Baixo

Anúncio intercalar acionado por políticas de segurança.

Baixo

Sem integração do cliente.

Precisão da deteção Mais elevado

Estão disponíveis sinais específicos do cliente, do servidor e da ação.

Elevado

Estão disponíveis sinais específicos do cliente e do servidor.

Médio

Estão disponíveis sinais específicos do cliente e do servidor. Os sinais do cliente só estão disponíveis numa página intersticial.

Baixo

Apenas estão disponíveis sinais do lado do servidor.

Versão do reCAPTCHA suportada Chaves baseadas em pontuação e de caixa de verificação do reCAPTCHA Chaves baseadas em pontuação do reCAPTCHA Chaves baseadas em desafios do reCAPTCHA incorporadas numa página intersticial Chaves expressas do reCAPTCHA

Tokens de ação do reCAPTCHA

Pode usar tokens de ação do reCAPTCHA para proteger interações importantes dos utilizadores, como o pagamento em páginas Web e em aplicações para dispositivos móveis.

O fluxo de trabalho dos tokens de ação do reCAPTCHA consiste nos seguintes passos:

  1. Quando um utilizador final aciona uma ação protegida pelo reCAPTCHA, a página Web ou a aplicação para dispositivos móveis envia sinais que são recolhidos no navegador para o reCAPTCHA para análise.
  2. O reCAPTCHA envia um token de ação para a página Web ou a aplicação para dispositivos móveis.
  3. Anexa este token de ação ao cabeçalho do pedido que quer proteger.
  4. Quando o utilizador final pede acesso com o token de ação, o Google Cloud Armor descodifica e valida os atributos do token de ação em vez da sua aplicação de back-end.
  5. O Google Cloud Armor aplica ações com base nas regras da política de segurança configuradas.

O diagrama de sequência seguinte mostra o fluxo de trabalho dos tokens de ação do reCAPTCHA para Websites:

O diagrama de sequência seguinte mostra o fluxo de trabalho dos tokens de ação do reCAPTCHA para aplicações para dispositivos móveis:

Tokens de sessão do reCAPTCHA

Pode usar tokens de sessão do reCAPTCHA quando quiser proteger toda a sessão do utilizador no domínio do site. Um token de sessão permite-lhe reutilizar uma avaliação reCAPTCHA existente durante um período especificado, para que não sejam necessárias mais avaliações para um utilizador específico, o que reduz a fricção do utilizador e o total de chamadas reCAPTCHA necessárias.

Para permitir que o reCAPTCHA aprenda sobre o padrão de navegação dos seus utilizadores finais, recomendamos que use um token de sessão do reCAPTCHA em todas as páginas Web do seu site.

O fluxo de trabalho dos tokens de sessão do reCAPTCHA consiste nos seguintes passos:

  1. O navegador carrega o JavaScript do reCAPTCHA a partir de reCAPTCHA.
  2. O JavaScript do reCAPTCHA define um token de sessão como um cookie no navegador do utilizador final após a avaliação.
  3. O navegador do utilizador final armazena o cookie e o JavaScript do reCAPTCHA atualiza o cookie a cada 30 minutos, desde que o JavaScript do reCAPTCHA permaneça ativo.
  4. Quando o utilizador pede acesso com o cookie, o Google Cloud Armor valida este cookie e aplica ações com base nas regras da política de segurança.

O diagrama de sequência seguinte mostra o fluxo de trabalho dos tokens de sessão do reCAPTCHA:

Página de desafio reCAPTCHA

Pode usar a funcionalidade de página de desafio do reCAPTCHA para redirecionar pedidos recebidos para o reCAPTCHA de modo a determinar se cada pedido é potencialmente fraudulento ou legítimo.

Esta aplicação de um redirecionamento e um possível desafio CAPTCHA interrompe a atividade de um utilizador. Recomendamos que a use para filtrar bots quando suspeitar de atividade de spam direcionada para o seu site.

Quando um utilizador final (utilizador) visita o seu site pela primeira vez, ocorrem os seguintes eventos:

  1. Na camada do Google Cloud Armor, o pedido do utilizador é redirecionado para a página de desafio do reCAPTCHA.
  2. O reCAPTCHA responde com uma página HTML incorporada com o JavaScript do reCAPTCHA.
  3. Quando a página de desafio é renderizada, o reCAPTCHA avalia a interação do utilizador. Se necessário, o reCAPTCHA apresenta um desafio CAPTCHA ao utilizador.
  4. Consoante o resultado da avaliação, o reCAPTCHA faz o seguinte:

    1. Se a interação do utilizador passar na avaliação, o reCAPTCHA emite um cookie de isenção. O navegador anexa este cookie de isenção aos pedidos subsequentes do utilizador ao mesmo site até o cookie expirar. Por predefinição, o cookie de isenção expira após três horas.
    2. Se a interação do utilizador não passar na avaliação, o reCAPTCHA não emite um cookie de isenção.
  5. O reCAPTCHA atualiza a página Web com o cookie de isenção se o utilizador aceder à página Web através de uma chamada GET/HEAD. Se o utilizador aceder à página Web através de uma chamada POST/PUT, tem de clicar no link de atualização na página.

  6. O Google Cloud Armor isenta os pedidos que tenham um cookie de isenção válido de serem redirecionados novamente e concede acesso ao seu site.

O diagrama de sequência seguinte mostra o fluxo de trabalho da página de desafio do reCAPTCHA:

O que se segue?