Article original : How to Set Up reCAPTCHA v3 in a Laravel Project

Dans cet article, vous apprendrez comment configurer reCAPTCHA v3 dans votre projet Laravel. Cela peut être un peu délicat, alors je vais vous aider à simplifier le processus ici.

Qu'est-ce que reCaptcha ?

reCaptcha est un service Google fourni gratuitement qui vous aide à protéger vos sites web contre le spam et les attaques malveillantes.

La nouvelle version, V3, présente de nombreuses améliorations par rapport aux versions précédentes grâce aux nouveaux défis captcha. Elle retourne un score et des analyses que vous pouvez utiliser pour prendre des mesures appropriées pour votre site web.

Voici à quoi ressemble la version précédente de reCaptcha – mais avec la dernière version (v3), reCaptcha a beaucoup changé et offre une meilleure expérience utilisateur.

Image Version précédente de reCaptcha

Image Version précédente de reCaptcha

Ce que vous allez apprendre

À la fin de cet article, vous aurez appris les points suivants :

  1. Comment intégrer reCaptcha v3 dans votre projet Laravel
  2. Comment configurer un tableau de bord d'administration Google reCaptcha
  3. Comment consulter les scores et les analyses de reCaptcha de votre site pour vous aider à prendre de meilleures décisions de sécurité

Comment configurer reCaptcha dans un projet Laravel

Vous pouvez suivre ces étapes simples pour configurer reCaptcha sur votre projet.

  1. Installez ce projet Laravel si vous ne l'avez pas encore fait
  2. Dans le terminal, ajoutez le package open-source à votre projet avec Composer.
composer require biscolab/laravel-recaptcha
  1. Publiez le fichier recaptcha.php avec cette commande :
php artisan vendor:publish --provider="Biscolab\ReCaptcha\ReCaptchaServiceProvider"

Cela créera un fichier dans le répertoire de configuration, appelé config\recaptcha.php, où nous ajouterons plus de configurations reCaptcha.

  1. Visitez ce lien pour créer un compte administrateur reCaptcha pour vous-même.

Image Enregistrer reCaptcha v3

Pour créer l'administrateur reCaptcha, vous pouvez faire ce qui suit :

  • Ajoutez le nom de votre site dans l'étiquette – localhost ou examplesite.com
  • Sélectionnez v3 comme type de reCaptcha
  • Incluez les domaines dans la section des domaines (localhost ou examplesite.com)
  • Ajoutez l'adresse e-mail du propriétaire dans la section du propriétaire
  • Cochez la case "accepter les termes et conditions"

Juste une note – le localhost est uniquement destiné au développement local. Par conséquent, il doit être mis à jour avant de passer à un environnement de production.

  1. Ajoutez reCaptcha à votre site

Cliquez sur le bouton de soumission et enregistrez vos clés secrètes.

Image Ajout de reCaptcha à votre site dans le fichier .env

  1. Ajoutez les clés du site au fichier .env de votre projet :
RECAPTCHA_SITE_KEY=ADD_YOUR_SITE_KEY
RECAPTCHA_SECRET_KEY=ADD_YOUR_SECRET_KEY
RECAPTCHA_SITE=https://www.google.com/recaptcha/admin/

Puisque vous avez apporté des modifications au fichier .env, il est préférable de vider toutes les configurations mises en cache afin que les nouvelles modifications prennent effet. Utilisez php artisan optimize:clear dans votre terminal.

  1. Dans le fichier config > recaptcha.php, mettez à jour la propriété de la version à V3. Il est également important de noter que les clés api_site_key et api_secret_key générées via le tableau de bord d'administration seront référencées à partir de ce que nous avons défini dans le fichier .env du projet.
return [
    'version'                      => 'v3'
]

Vous pouvez maintenant vous rendre sur la page d'analyse de l'administrateur reCaptcha pour voir comment votre site se comporte, consulter vos scores et prendre des décisions lorsque vous êtes dans un environnement de production.

Image page d'analyse de reCaptcha

L'image ci-dessous montre que reCaptcha a été implémenté.

Image

Conclusion

À la fin de cet article, j'espère que vous trouverez plus facile de configurer reCaptcha et que vous aurez une meilleure compréhension de ce que c'est. Maintenant, vous devriez être en mesure de configurer la version la plus récente dans votre projet Laravel.

Ressources

  • Qu'est-ce que reCaptcha ?
  • Dépôt Laravel reCaptcha repo
  • Documentation Laravel reCaptcha docs