robot

robot

 

Une étape indispensable pour sécuriser votre wordpress consistera à intégrer un captcha à votre formulaire de login. Google apporte une belle solution élégante mais pas forcément simple à installer pour tout le monde.

1. Dans un premier temps vous devez obtenir une clé de site et une clé de réponse en déclarant votre site à cette adresse

https://www.google.com/recaptcha

2. Ensuite ajoutez l’élément captcha dans votre formulaire HTML

<div class="g-recaptcha" data-sitekey="clé de site"></div>

Il faut impérativement placer le code quelque part entre vos deux balises form pour pouvoir effectuer le contrôle du captcha côté serveur.

3. Pour que la nouvelle balise se transforme en captcha il vous faut intégrer la librairie javascript de google dans votre page. Usuellement à l’intérieur des balises head.

<script src='https://www.google.com/recaptcha/api.js'></script>

4. Dans notre cas nous allons effectuer le contrôle du captcha côté serveur en language PHP avec un appel curl.

En plaçant la balise du captcha  à l’intérieur des balises form un nouveau champs g-recaptcha-response sera crée à chaque utilisation de celui-ci que nous pourrons récupérer à l’aide de $_POST.

5. Voici comment demander à google si le captcha a été correctement rempli

$googleResponse = false;
$ch = curl_init("https://www.google.com/recaptcha/api/siteverify");
curl_setopt_array($ch, array(CURLOPT_POSTFIELDS => array("secret" => "clé de réponse", "response" => $_POST["g-recaptcha-response"]), CURLOPT_RETURNTRANSFER => true));
$googleResponse = curl_exec($ch);
if(curl_errno($ch) == false && json_decode($response)->success == true) {
    $googleResponse = true;
}
curl_close($ch);

La variable  $googleResponse dont la valeur sera true ou false vous permettra de certifier la requête comme provenant d’une personne physique

Lire également