Aprenda a implementar o reCAPTCHA  no Scriptcase, a API do Google para o famoso “EU NÃO SOU ROBÔ”.

Primeiramente o que é o reCAPTCHA?

O reCAPTCHA é um recurso com sistema de caixas de diálogos desenvolvido pela Universidade Carnegie Mellon em Pittsburgh e implementa um algoritmo aleatório muito utilizado em sistemas de autenticação, a fim de evitar ataques de “Brute Force”, ou seja, visa garantir que um “ser humano” está naquele momento interagindo com o sistema em tempo real. Em 2009 o Google adquiriu essa ferramenta e atualmente é amplamente usada, especialmente por New York Times e Google Books.

Scriptcase – Recursos Avançados

  • Para implementarmos o reCaptcha Google ao Scriptcase faremos uso de classes externas.
  • A api reCaptcha nos fornecerá código JavaScript a ser inserido na aplicação Scripcase.
  • Utilizamos uma  Classe PHP para capturar a resposta do reCAPTCHA ao qual podemos dar o tratamento necessário para evitar possíveis invasões.

Recursos avancados scriptcase recaptcha

Recaptcha Google checked

Google

Nesse link você obterá as chaves secreta e do site para confirmação da Api Google:

https://www.google.com/recaptcha

Chave da API do Google

Rótulo, tipo, domínios Recaptcha Google

Key, settings, advanced security recaptcha

Adicionando Recaptcha para o seu site passos 1 e 2

Scriptcase: Criando uma Aplicação de Controle

Adquira a biblioteca recaptchalib.php.

Crie um biblioteca externa no Scriptcse, sugiro criar como pública, com o nome: reCaptcha e adicione o arquivo php do link acima como recaptchalib.php

Crie uma aplicação de controle com dois campos como o exemplo, Assunto e Mensagem.

aplicação de controle recaptcha google

Adicionando a biblioteca reCAPTCHA

Insira o código abaixo no evento onscriptinit. Incluindo acesso a api javascript do Google e incorporahdo a Biblioteca Externa recaptchalib.php

?>
<script src=’https://www.google.com/recaptcha/api.js’></script>
<?php

sc_include_library(‘sys’,’reCaptcha’,’recaptchalib.php’); 

Capturando e tratando o retorno da API reCAPTCHA

Insira o código abaixo no evento onvalidate.

if (isset($_POST[‘g-recaptcha-response’])) {
$captcha_data = $_POST[‘g-recaptcha-response’];
}

if (!$captcha_data) {
sc_error_message(‘Garanta que você não é um robô, clique na caixa de seleção!’);
}else{

$secret = “### Sua Secret Key ###”;

$response = null;

$reCaptcha = new ReCaptcha($secret);

if ($_POST[“g-recaptcha-response”]) {
$response = $reCaptcha->verifyResponse(
$_SERVER[“REMOTE_ADDR”],
$_POST[“g-recaptcha-response”]
);
}

if ($response != null && $response->success) {
sc_alert(“Mensagem enviada com sucesso!”);
} else {
sc_error_message( “Usuário mal intencionado detectado. A mensagem não foi enviada.”);
}
}

Adicionando a caixa de confirmação robô/humano

Insira o código abaixo no ajuda/texto do campo Mensagem da Aplicação

<br>
<div class=”g-recaptcha” data-sitekey=”###sua sitekey###”></div>

caixa de confirmação robo humano recaptcha google

 

Entendendo o conceito

Como detectar se não é um Robô acessando sua aplicação?

Catpcha de imagens distorcidas tem se tornado cada vêz menos usual devido a dificuldade que o usuário/internauta tem para convencer que é um ser Humano acesdsando a refereida página.

A Api do Google tornou esse processo de confirmação mais fácil apenas com um click em uma caixa de verificação. Na verdade o Google já sabe que antes de chegar em determinada página que você já estava interagindo com o Browser.

Pode acontecer, quando a api desconfia do acesso, forçar a exibição de uma tela com imagens que somente um ser Humano reconheceria.

Atualizações recentes permitem deixar invisivel até a caixa de confirmação adicionando a seu botão de submissão do formulário o código para acesso a api.

Em suá área administrativa de geração das keys de validação é possível configurar o nível de segurança desejado, deixando mais simples ou mais complexa a verificação.

Você pode gostar de…

Scriptcase e os Web services

Nesta oportunidade estarei explicando como trabalhar com web services dentro do scriptcase, diretame...

Scriptcase usa MVC?

Talvez você em algum momento já possa ter pensado sobre essa questão,”será que o Scriptcase us...

Como implementar A2F usando desenvolvimento próprio em NodeJS em uma aplicação Scriptcase

No artigo anterior falamos sobre A2F com o Swivel como ferramente externa para integrar nossas aplic...

Comente este post

Receba novos posts, ofertas e muito mais toda semana.

Usaremos as informações fornecidas para lhe enviar newsletter e ofertas especiais por email. Você pode cancelar a inscrição quando quiser, clicando em um link no rodapé de qualquer e-mail que receber de nós, ou entrando em contato conosco pelo e-mail sales@scriptcase.net. Saiba mais sobre nossa Polícia de Privacidade.