O reCAPTCHA v3 retorna uma pontuação para cada solicitação sem atrito do usuário. A pontuação se baseia nas interações com o site e permite que você faça o que precisa. Registre as chaves do reCAPTCHA v3 no Admin Console do reCAPTCHA.
Esta página explica como ativar e personalizar o reCAPTCHA v3 na sua página da Web.
Posicionamento no site
O reCAPTCHA v3 nunca interrompe os usuários. Portanto, ele pode ser executado a qualquer momento sem afetar a conversão. O reCAPTCHA funciona melhor quando tem mais contexto sobre as interações com seu site, que vêm da visualização de comportamentos legítimos e abusivos. Por esse motivo, recomendamos incluir a verificação reCAPTCHA em formulários ou ações, bem como o segundo plano das páginas para análise.
Você pode executar o reCAPTCHA em quantas ações desejar na mesma página.
Vincular o desafio a um botão automaticamente
O método mais fácil de usar o reCAPTCHA v3 na sua página é incluir o recurso JavaScript necessário e adicionar alguns atributos ao botão HTML.
Carregue a API JavaScript.
<script src="https://www.google.com/recaptcha/api.js"></script>
Adicione uma função de callback para gerenciar o token.
<script> function onSubmit(token) { document.getElementById("demo-form").submit(); } </script>
Adicione atributos ao botão HTML.
<button class="g-recaptcha" data-sitekey="reCAPTCHA_site_key" data-callback='onSubmit' data-action='submit'>Submit</button>
Invoque o desafio de forma programática
Se você quiser ter mais controle sobre quando o reCAPTCHA é executado, use o
método execute
no objeto grecaptcha
. Para fazer isso,
você precisa adicionar um parâmetro render
ao carregamento do script reCAPTCHA.
Carregue a API JavaScript com a chave do site.
<script src="https://www.google.com/recaptcha/api.js?render=reCAPTCHA_site_key"></script>
Chame
grecaptcha.execute
em cada ação que você quer proteger.<script> function onClick(e) { e.preventDefault(); grecaptcha.ready(function() { grecaptcha.execute('reCAPTCHA_site_key', {action: 'submit'}).then(function(token) { // Add your logic to submit to your backend server here. }); }); } </script>
Envie o token imediatamente para o back-end com a solicitação para verificar.
Como interpretar a pontuação
O reCAPTCHA v3 retorna uma pontuação (1,0 é muito provavelmente uma boa interação, 0,0 é muito provavelmente um bot). Com base na pontuação, é possível realizar ações variáveis no contexto do site. Cada site é diferente, mas abaixo estão alguns exemplos de como os sites usam a pontuação. Como nos exemplos abaixo, tome medidas nos bastidores em vez de bloquear o tráfego para proteger melhor seu site.
Caso de uso | Recomendação |
---|---|
Página inicial | Tenha uma visão coesa do tráfego no Admin Console ao filtrar as raspagens de informação. |
login | Com pontuações baixas, exija a autenticação de dois fatores ou a verificação de e-mail para evitar ataques de preenchimento de credenciais. |
social | Limite as solicitações de amizade não respondidas de usuários abusivos e envie comentários de risco para a moderação. |
E-commerce | Coloque vendas reais à frente dos bots e identifique transações arriscadas. |
O reCAPTCHA aprende vendo o tráfego real no seu site. Por esse motivo, as pontuações em um ambiente de preparo ou logo após a implementação podem diferir da produção. Como o reCAPTCHA v3 nunca interrompe o fluxo do usuário, primeiro é possível executar o reCAPTCHA sem agir e, em seguida, decidir os limites analisando seu tráfego no Admin Console. Por padrão, é possível usar um limite de 0,5.
Ações
O reCAPTCHA v3 introduz um novo conceito: ações. Ao especificar um nome de ação em cada lugar em que você executa o reCAPTCHA, você ativa os seguintes novos recursos:
- Um detalhamento dos dados das suas dez principais ações no Admin Console
- Análise de risco adaptável com base no contexto da ação, porque o comportamento abusivo pode variar.
É importante ressaltar que, ao verificar a resposta reCAPTCHA, você precisa verificar se o nome da ação é o esperado.
Resposta de verificação do site
Faça a solicitação para verificar o token de resposta, como no reCAPTCHA v2 ou o reCAPTCHA invisível.
A resposta é um objeto JSON:
{
"success": true|false, // whether this request was a valid reCAPTCHA token for your site
"score": number // the score for this request (0.0 - 1.0)
"action": string // the action name for this request (important to verify)
"challenge_ts": timestamp, // timestamp of the challenge load (ISO format yyyy-MM-dd'T'HH:mm:ssZZ)
"hostname": string, // the hostname of the site where the reCAPTCHA was solved
"error-codes": [...] // optional
}
Dicas
grecaptcha.ready()
executa a função quando a biblioteca reCAPTCHA é carregada. Para evitar disputas com oapi.js
, inclua oapi.js
antes dos scripts que chamam o grecaptcha ou continue usando o callback onload definido na API v2.- Tente chamar a chamada
execute
para ações interessantes ou confidenciais, como registro, redefinição de senha, compra ou reprodução. - Use
https://www.google.com/recaptcha/api.js?trustedtypes=true
para carregar código compatível com tipos confiáveis.