Contexte: mon site Web est assez simple, contenant une page principale avec une liste de liens (fournis par un service tiers) - chaque lien affiche une entrée de téléchargement de fichier avec un bouton de soumission. Dans cette fenêtre contextuelle, j'ai intégré le script Recaptcha et vérifié le jeton lors de la soumission du fichier. En raison de cette configuration multiple, j'ai choisi V3 pour aucune interaction utilisateur avec le mécanisme de vérification.
Maintenant, une question se pose - comment dois-je interpréter la réponse de Google de Google.
La documentation de Google pour V3 dit:
reCAPTCHA apprend en voyant du trafic réel sur votre site. Pour cette raison, les scores dans un environnement intermédiaire ou peu de temps après la mise en œuvre peuvent différer de la production. Comme reCAPTCHA v3 n'interrompt jamais le flux d'utilisateurs, vous pouvez d'abord exécuter reCAPTCHA sans prendre de mesures, puis décider des seuils en examinant votre trafic dans la console d'administration. Par défaut, vous pouvez utiliser un seuil de 0,5.
Il est assez clair pour moi, à partir de cette description, que le score
est ce qui compte - 0,0 pour le bot le plus probable, 1,0 pour le plus probable humain. Donc dans mon code, je vérifie que success == true
et score >= 0.5
Cependant - aucun des exemples V3 que je trouve en ligne pour la validation côté serveur ne prête attention au score. en voici 3. Les trois vérifient uniquement que la demande a abouti:
https://stackoverflow.com/a/54118106/3367818
https://stackoverflow.com/a/52633797/3367818
https://dzone.com/articles/adding-google-recaptcha-v3-to-your-laravel-app
Enfin, ma question est - est-ce une idée fausse du mécanisme de V3, ou est-ce que je manque quelque chose?
Merci.
Oui, vous devriez certainement vérifier la valeur du "score" dans la réponse de vérification de Google.
Ces trois exemples manquent de détails et sont en fait assez déroutants.
Le "succès" signifie simplement que vous avez envoyé une demande bien formée avec le bon jeton et le bon secret.
On dirait que vous vérifiez déjà la valeur de "score", donc c'est super, mais je voulais juste clarifier cela pour quiconque trouve cette question et est toujours un peu confus.