Faça a integração com o Google Cloud Armor para Websites

Este documento mostra como integrar o reCAPTCHA para o Cloud Armor em Websites.

Para concluir a integração, tem de implementar uma ou mais funcionalidades do reCAPTCHA para o Cloud Armor e configurar as políticas de segurança do Cloud Armor.

Antes de começar

  1. Ative a API reCAPTCHA Enterprise.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  2. Planeie como quer implementar as funcionalidades do reCAPTCHA para o Cloud Armor para proteger o seu Website.

    1. Escolha uma ou mais funcionalidades da WAF que melhor se adequam ao seu exemplo de utilização.
    2. Identifique as páginas que quer proteger e o tipo de funcionalidade do Cloud Armor que quer implementar nessas páginas.

Implemente funcionalidades do reCAPTCHA para o Cloud Armor

Consoante os seus requisitos, pode usar uma ou mais funcionalidades do reCAPTCHA for Cloud Armor numa única aplicação.

Se quiser usar mais do que uma funcionalidade, tem de criar uma chave do reCAPTCHA para cada uma dessas funcionalidades e usá-las na sua aplicação. Por exemplo, se quiser usar tokens de ação do reCAPTCHA e a página de desafio do reCAPTCHA, tem de criar uma chave de token de ação e uma chave de página de desafio, e usá-las na sua aplicação.

Implemente tokens de ação do reCAPTCHA

Tem de ter o reCAPTCHA em execução nas suas páginas Web para gerar tokens de ação. Depois de o reCAPTCHA gerar um token de ação, anexa o token de ação a um cabeçalho de pedido predefinido sempre que precisar de proteger uma ação do utilizador, como checkout. Por predefinição, os tokens de ação são válidos durante 30 minutos, mas podem variar consoante o tráfego. Tem de anexar o token de ação a um cabeçalho de pedido predefinido antes de o token expirar, para que o Cloud Armor possa avaliar os atributos do token.

Para implementar um token de ação do reCAPTCHA, faça o seguinte:

  1. Crie uma chave action-token para o seu Website.

    Cloud Console

    1. Na Google Cloud consola, aceda à página reCAPTCHA.

      Aceder ao reCAPTCHA

    2. Verifique se o nome do seu projeto é apresentado no seletor de recursos na parte superior da página.

      Se não vir o nome do seu projeto, clique no seletor de recursos e, de seguida, selecione o seu projeto.

    3. Clique em Criar chave.
    4. No campo Nome a apresentar, introduza um nome a apresentar para a chave.
    5. Consoante a plataforma para a qual quer criar chaves do reCAPTCHA para o WAF, execute a ação adequada:
      1. Para o Tipo de aplicação, selecione Web.

        É apresentada a secção Lista de domínios.

      2. Para proteger a chave do reCAPTCHA para o seu domínio e subdomínios, certifique-se de que o botão Desativar validação de domínio está desativado.

        A desativação da validação de domínio representa um risco de segurança, uma vez que não existem restrições no site, pelo que a sua chave do reCAPTCHA pode ser acedida e usada por qualquer pessoa.

      3. Introduza o nome do domínio do seu Website:

        1. Na secção Lista de domínios, clique em Adicionar um domínio.
        2. No campo Domínio, introduza o nome do seu domínio.
        3. Opcional: para adicionar um domínio adicional, clique em Adicionar um domínio e introduza o nome de outro domínio no campo Domínio. Pode adicionar um máximo de 250 domínios.

          Para Websites, a chave do reCAPTCHA é exclusiva dos domínios e subdomínios que especificar. Pode especificar mais do que um domínio se publicar o seu Website a partir de vários domínios. Se especificar um domínio (por exemplo, examplepetstore.com), não precisa de especificar os respetivos subdomínios (por exemplo, subdomain.examplepetstore.com).

      4. Em Definições adicionais, ative o botão Vai implementar esta chave numa firewall de aplicações Web (WAF)?.
      5. Nas opções de Funcionalidade, selecione Ação.

      6. Opcional: ative o botão Vai usar desafios?.

      7. Clique em Criar chave.
      8. A chave recém-criada é apresentada na página Chaves do reCAPTCHA.

    gcloud

    Para criar chaves do reCAPTCHA, use o comando gcloud recaptcha keys create.

    Antes de usar qualquer um dos dados de comandos abaixo, faça as seguintes substituições:

    • INTEGRATION_TYPE: tipo de integração. Especifique score ou checkbox.
    • DISPLAY_NAME: nome da chave. Normalmente, um nome do site.
    • DOMAIN_NAME: domínios ou subdomínios de Websites autorizados a usar a chave.

      Especifique vários domínios como uma lista separada por vírgulas. Opcional: especifique --allow-all-domains para desativar a validação do domínio.

      A desativação da validação de domínio representa um risco de segurança, uma vez que não existem restrições no site, pelo que qualquer pessoa pode aceder e usar a sua chave do reCAPTCHA.

    • WAF_FEATURE: nome da funcionalidade da WAF. Especifique action-token.
    • WAF_SERVICE: nome do fornecedor de serviços do WAF. Especifique CA para o Cloud Armor.

    Execute o comando gcloud recaptcha keys create:

    Linux, macOS ou Cloud Shell

    gcloud recaptcha keys create \
    --web \
    --display-name=DISPLAY_NAME  \
    --integration-type=INTEGRATION_TYPE \
    --domains=DOMAIN_NAME \
    --waf-feature=WAF_FEATURE \
    --waf-service=WAF_SERVICE

    Windows (PowerShell)

    gcloud recaptcha keys create `
    --web `
    --display-name=DISPLAY_NAME  `
    --integration-type=INTEGRATION_TYPE `
    --domains=DOMAIN_NAME `
    --waf-feature=