Utiliser reCAPTCHA dans les Forms adaptatives using-reCAPTCHA-in-adaptive-forms
Adobe recommande d’utiliser les composants principauxde capture de données modernes et extensibles pour créer de nouveaux formulaires adaptatifsou ajouter des formulaires adaptatifs à des pages AEM Sites. Ces composants représentent une avancée significative dans la création de formulaires adaptatifs, ce qui garantit des expériences utilisateur impressionnantes. Cet article décrit l’ancienne approche de la création de formulaires adaptatifs à l’aide de composants de base.
Pour les formulaires adaptatifs basés sur les composants principaux, Cliquez ici.
CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart, Test public de Turing complètement automatisé ayant pour but de différencier les personnes humaines des ordinateurs) est un programme couramment utilisé dans les transactions en ligne pour différencier les personnes humaines des programmes automatisés ou des robots. Il présente un test et évalue la réponse de l’utilisateur ou de l’utilisatrice pour déterminer s’il s’agit d’une personne humaine ou d’un robot qui interagit avec le site. Cela empêche l’utilisateur ou l’utilisatrice de continuer si le test échoue et permet de sécuriser les transactions en ligne en empêchant les robots d’envoyer du spam ou des éléments malveillants.
AEM Forms as a Cloud Service prend en charge les solutions CAPTCHA suivantes :
Configurer le service reCAPTCHA de Google google-reCAPTCHA
Les auteurs de formulaires peuvent utiliser le service reCAPTCHA de Google pour implémenter reCAPTCHA dans les Forms adaptatifs. Il offre des fonctionnalités avancées de CAPTCHA pour protéger votre site. Pour plus d’informations sur le fonctionnement de reCAPTCHA, consultez Google reCAPTCHA. AEM Forms prend en charge reCAPTCHA v2 et reCAPTCHA Enterprise. Toute autre version n’est pas prise en charge. Notez également que reCAPTCHA dans Adaptive Forms n’est pas pris en charge en mode hors ligne sur l’application AEM Forms. Selon vos besoins, vous pouvez configurer le service reCAPTCHA pour activer :
Configuration de reCAPTCHA Enterprise steps-to-implement-reCAPTCHA-enterprise-in-forms
-
Créez ou sélectionnez un projet Google Cloud et activez reCAPTCHA Enterprise API.
-
Procurez-vous l’ ID de projet et créez une clé d’API et une clé de site pour les sites web.
-
Créez un conteneur de configurations pour les services cloud.
-
Accédez à Outils > Général > Navigateur de configuration.
-
Sélectionnez un dossier ou créez-en un, puis activez le dossier pour les configurations cloud en procédant comme suit :
- Dans l’explorateur de configurations, sélectionnez le dossier, puis Propriétés.
- Dans la boîte de dialogue Propriétés de configuration, activez Configurations cloud.
- Sélectionnez Enregistrer et fermer pour enregistrer la configuration et fermer la boîte de dialogue.
-
-
Configurez le service cloud pour reCAPTCHA Enterprise.
- Sur votre instance de création Experience Manager, accédez à > Cloud Services.
- Sélectionnez reCAPTCHA. La page de configuration s’ouvre. Sélectionnez le conteneur de configuration que vous avez créé et sélectionnez Créer.
- Sélectionnez la version reCAPTCHA Enterprise et spécifiez le nom, l’ID de projet, la clé du site et la clé API (Obtenu à l’étape 2) pour le service d’entreprise reCAPTCHA.
- Sélectionnez le type de clé, le type de clé doit être identique à la clé de site que vous avez configurée dans le projet Google Cloud, par exemple, Cochez la clé de site ou Clé de site basée sur le score.
- Spécifiez un score seuil compris entre 0 et 1. Les scores supérieurs ou égaux aux scores de seuil indiquent une interaction humaine, sinon il s’agit d’une interaction avec un robot.
- Sélectionnez Créer pour créer la configuration du service cloud.
Une fois que le service reCAPTCHA Enterprise est activé, il peut être utilisé dans les formulaires adaptatifs. Voir Utilisation du CAPTCHA dans les formulaires adaptifs.
Configurer Google reCAPTCHA v2 steps-to-implement-reCAPTCHA-v2-in-forms
-
Obtenir la paire de clés de l’API reCAPTCHA de Google. Elle comprend une clé de site et une clé secrète.
-
Créez un conteneur de configurations pour les services cloud.
-
Accédez à Outils > Général > Navigateur de configuration.
-
Sélectionnez un dossier ou créez-en un, puis activez le dossier pour les configurations cloud en procédant comme suit :
- Dans l’explorateur de configurations, sélectionnez le dossier, puis Propriétés.
- Dans la boîte de dialogue Propriétés de configuration, activez Configurations cloud.
- Sélectionnez Enregistrer et fermer pour enregistrer la configuration et fermer la boîte de dialogue.
-
-
Configurez le service cloud pour reCAPTCHA v2.
- Sur votre instance de création AEM, accédez à > Services cloud.
- Sélectionnez reCAPTCHA. La page de configuration s’ouvre. Sélectionnez le conteneur de configuration que vous avez créé et sélectionnez Créer.
- Sélectionnez la version reCAPTCHA v2 , spécifiez le nom, la clé du site et la clé secrète pour le service reCAPTCHA (Obtenu à l’étape 1) et sélectionnez Créer pour créer la configuration du service cloud.
- Dans cette boîte de dialogue, spécifiez le site et les clés secrètes obtenues à l’étape 1. Sélectionnez Enregistrer les paramètres puis OK pour terminer la configuration.
Une fois que le service reCAPTCHA est configuré, il peut être utilisé dans les formulaires adaptatifs. Pour plus d’informations, voir Utilisation du CAPTCHA dans les formulaires adaptatifs.
Utilisation de Google reCAPTCHA dans les formulaires adaptatifs using-reCAPTCHA
Pour utiliser Google reCAPTCHA dans un formulaire adaptatif :
-
Ouvrez un formulaire adaptatif en mode d’édition.
note note NOTE Assurez-vous que le conteneur de configurations sélectionné lors de la création du formulaire adaptatif contient le service cloud reCAPTCHA. Vous pouvez également changer les propriétés du formulaire adaptatif pour modifier le conteneur de configuration associé au formulaire. -
À partir du navigateur du composant, faites glisser et déposez le composant Captcha sur le formulaire adaptatif.
note note NOTE - L’utilisation de plusieurs composants Captcha dans un formulaire adaptatif n’est pas prise en charge. En outre, il n’est pas recommandé d’utiliser le CAPTCHA dans un panneau marqué pour le chargement différé ou dans un fragment.
- reCaptcha est sensible au temps et expire dans environ deux minutes. Par conséquent, il est recommandé de placer le composant Captcha juste avant le bouton Soumettre dans le formulaire adaptatif.
-
Sélectionnez le composant Captcha que vous avez ajouté et sélectionnez pour modifier ses propriétés.
-
Indiquez un titre pour le widget CAPTCHA. La valeur par défaut est Captcha. Sélectionnez Masquer le titre si vous ne voulez pas que le titre apparaisse.
-
Dans le menu déroulant Service Captcha, sélectionnez reCAPTCHA pour activer le service reCAPTCHA si vous l’avez configuré comme décrit dans Service reCAPTCHA de Google.
-
Sélectionnez une configuration dans la liste déroulante Paramètres pour reCAPTCHA Enterprise ou reCAPTCHA v2
- Si vous sélectionnez la version reCAPTCHA Enterprise, le type de clé peut être checkbox ou score basé sur. Il est basé sur votre sélection lorsque vous configurez la clé de site pour les sites Web :
note note NOTE - Dans la configuration cloud avec type de clé comme case à cocher, le message d’erreur personnalisé s’affiche en tant que message intégré en cas d’échec de la validation du captcha.
- Dans la configuration cloud avec type de clé comme score basé sur, le message d’erreur personnalisé s’affiche sous forme de message contextuel si la validation du captcha échoue.
- Vous pouvez sélectionner la taille normale et la taille compacte.
- Vous pouvez sélectionner une référence de liaison, dans référence de liaison les données envoyées sont des données liées, sinon il s’agit de données non liées. Vous trouverez ci-dessous des exemples XML de données non liées et de données liées (avec une référence de liaison telle que SSN), respectivement, lorsqu’un formulaire est soumis.
code language-xml <?xml version="1.0" encoding="UTF-8" standalone="no"?> <afData> <afUnboundData> <data> <captcha16820607953761> <captchaType>reCaptchaEnterprise</captchaType> <captchaScore>0.9</captchaScore> </captcha16820607953761> </data> </afUnboundData> <afBoundData> <Root xmlns:xfa="http://www.xfa.org/schema/xfa-data/1.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <PersonalDetails> <SSN>371237912</SSN> <FirstName>Sarah </FirstName> <LastName>Smith</LastName> </PersonalDetails> <OtherInfo> <City>California</City> <Address>54 Residency</Address> <State>USA</State> <Zip>123112</Zip> </OtherInfo> </Root> </afBoundData> <afSubmissionInfo> <stateOverrides/> <signers/> <afPath>/content/dam/formsanddocuments/captcha-form</afPath> <afSubmissionTime>20230608034928</afSubmissionTime> </afSubmissionInfo> </afData>
code language-xml <?xml version="1.0" encoding="UTF-8" standalone="no"?> <afData> <afUnboundData> <data/> </afUnboundData> <afBoundData> <Root xmlns:xfa="http://www.xfa.org/schema/xfa-data/1.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <PersonalDetails> <SSN> <captchaType>reCaptchaEnterprise</captchaType> <captchaScore>0.9</captchaScore> </SSN> <FirstName>Sarah</FirstName> <LastName>Smith</LastName> </PersonalDetails> <OtherInfo> <City>California</City> <Address>54 Residency</Address> <State>USA</State> <Zip>123112</Zip> </OtherInfo> </Root> </afBoundData> <afSubmissionInfo> <stateOverrides/> <signers/> <afPath>/content/dam/formsanddocuments/captcha-form</afPath> <afSubmissionTime>20230608035111</afSubmissionTime> </afSubmissionInfo> </afData>
Si vous sélectionnez la version reCAPTCHA v2 :
- Vous pouvez sélectionner la taille Normal ou Compact pour le widget reCAPTCHA.
- Vous pouvez sélectionner l'option Invisible pour afficher le défi CAPTCHA uniquement en cas d'activité suspecte.
Le service reCAPTCHA est activé sur le formulaire adaptatif. Vous pouvez prévisualiser le formulaire et voir CAPTCHA fonctionner. Le badge protégé par reCAPTCHA, affiché ci-dessous, s’affiche sur les formulaires protégés.
-
Enregistrez les propriétés.
Affichage ou masquage du composant CAPTCHA en fonction de règles show-hide-captcha
Vous pouvez choisir d’afficher ou de masquer le composant CAPTCHA en fonction des règles que vous appliquez à un composant d’un formulaire adaptatif. Sélectionnez le composant, sélectionnez , puis sélectionnez Créer pour créer une règle. Pour plus d’informations sur la création de règles, voir la section Éditeur de règles.
Par exemple, le composant CAPTCHA ne doit s’afficher dans un formulaire adaptatif que si la valeur du champ Valeur monétaire du formulaire est supérieure à 25 000.
Sélectionnez le champ Valeur monétaire dans le formulaire et créez les règles suivantes :
Valider le CAPTCHA validate-captcha
Vous pouvez valider le CAPTCHA dans un formulaire adaptatif lorsque vous envoyez le formulaire ou que vous basez la validation CAPTCHA sur des actions et conditions des utilisateurs.
Valider le CAPTCHA lors de l’envoi du formulaire validation-form-submission
Pour valider automatiquement un CAPTCHA lorsque vous envoyez un formulaire adaptatif :
- Sélectionnez le composant CAPTCHA et sélectionnez pour afficher les propriétés du composant.
- Dans la section Valider le CAPTCHA, sélectionnez Valider le CAPTCHA lors de l’envoi du formulaire.
- Sélectionnez pour enregistrer les propriétés du composant.
Validation du CAPTCHA sur les actions et conditions des utilisateurs validate-captcha-user-action
Pour valider un CAPTCHA en fonction des conditions et des actions des utilisateurs et des utilisatrices :
- Sélectionnez le composant CAPTCHA et sélectionnez pour afficher les propriétés du composant.
- Dans la section Valider le CAPTCHA, sélectionnez Valider le CAPTCHA sur une action utilisateur.
- Sélectionnez pour enregistrer les propriétés du composant.
Experience Manager Forms fournit une API ValidateCAPTCHA
pour valider le CAPTCHA à l’aide de conditions prédéfinies. Vous pouvez appeler l’API à l’aide d’une action d’envoi personnalisée ou en définissant des règles sur les composants d’un formulaire adaptatif.
Voici un exemple d’API ValidateCAPTCHA
permettant de valider le CAPTCHA à l’aide de conditions prédéfinies :
if (slingRequest.getParameter("numericbox1614079614831").length() >= 5) {
GuideCaptchaValidatorProvider apiProvider = sling.getService(GuideCaptchaValidatorProvider.class);
String formPath = slingRequest.getResource().getPath();
String captchaData = slingRequest.getParameter(GuideConstants.GUIDE_CAPTCHA_DATA);
if (!apiProvider.validateCAPTCHA(formPath, captchaData).isCaptchaValid()){
response.setStatus(400);
return;
}
}
L’exemple signifie que l’API ValidateCAPTCHA
valide le CAPTCHA dans le formulaire uniquement si le nombre de chiffres dans la zone numérique spécifiée par l’utilisateur lors du remplissage du formulaire est supérieur à 5.
Option 1 : utiliser l’API Experience Manager Forms ValidateCAPTCHA pour valider le CAPTCHA à l’aide d’une action d’envoi personnalisée
Effectuez les étapes suivantes pour utiliser l’API ValidateCAPTCHA
pour valider le CAPTCHA à l’aide d’une action d’envoi personnalisée :
- Ajoutez le script qui inclut l’API
ValidateCAPTCHA
à l’action d’envoi personnalisée. Pour plus d’informations sur les actions d’envoi personnalisées, voir Création d’une action d’envoi personnalisée pour les formulaires adaptatifs. - Sélectionnez le nom de l’action d’envoi personnalisée dans la liste déroulante Action d’envoi des propriétés Envoi d’un formulaire adaptatif.
- Sélectionnez Soumettre. Le CAPTCHA est validé en fonction des conditions définies dans l’API
ValidateCAPTCHA
de l’action d’envoi personnalisée.
Option 2 : utiliser l’API Experience Manager Forms ValidateCAPTCHA pour valider le CAPTCHA sur une action de l’utilisateur avant d’envoyer le formulaire
Vous pouvez également appeler l’API ValidateCAPTCHA
en appliquant des règles à un composant d’un formulaire adaptatif.
Par exemple, vous ajoutez un bouton Valider le CAPTCHA dans un formulaire adaptatif et créez une règle pour appeler un service lors d’un clic sur un bouton.
La figure suivante illustre comment vous pouvez appeler un service lors d’un clic sur le bouton Valider le CAPTCHA :
Vous pouvez appeler la servlet personnalisée qui inclut l’API ValidateCAPTCHA
à l’aide de l’éditeur de règles et activer ou désactiver le bouton d’envoi du formulaire adaptatif en fonction du résultat de la validation.
De même, vous pouvez utiliser l’éditeur de règles pour inclure une méthode personnalisée pour valider le CAPTCHA dans un formulaire adaptatif.
Modifier le domaine de service reCAPTCHA reCAPTCHA-service-domain
Le service reCAPTCHA utilise https://www.recaptcha.net/
comme domaine par défaut. Vous pouvez modifier les paramètres pour définir https://www.google.com/
ou tout nom de domaine personnalisé pour le chargement, le rendu et la validation du service reCAPTCHA.
Définissez la propriété af.cloudservices.recaptcha.domain de la configuration du formulaire adaptatif et du canal web de communication interactive pour spécifier https://www.google.com/
ou tout autre nom de domaine personnalisé. Le fichier JSON suivant affiche un exemple :
{
"af.cloudservices.recaptcha.domain": "https://www.google.com/"
}
Pour définir les valeurs d’une configuration, générez des configurations OSGi à l’aide du SDK AEM et déployez la configuration sur votre instance de Cloud Service.
Voir également see-also
- Créer un formulaire adaptatif AEM
- Ajouter un formulaire adaptatif AEM à une page AEM Sites
- Appliquer des thèmes à un formulaire adaptatif AEM
- Ajouter des composants à un formulaire adaptatif AEM
- Utiliser reCAPTCHA dans un formulaire adaptatif AEM
- Générer une version PDF (document d’enregistrement) d’un formulaire adaptatif AEM
- Traduire un formulaire adaptatif AEM
- Activer Adobe Analytics sur un formulaire adaptatif pour suivre son utilisation
- Connecter un formulaire adaptatif à Microsoft SharePoint
- Connecter un formulaire adaptatif à Microsoft Power Automate
- Connecter un formulaire adaptatif à Microsoft OneDrive
- Connecter un formulaire adaptatif au stockage Blob Azure Microsoft
- Connecter un formulaire adaptatif à Salesforce
- Utiliser Adobe Sign dans un formulaire adaptatif AEM
- Ajouter un nouveau paramètre régional pour un formulaire adaptatif
- Envoyer des données de formulaire adaptatif à une base de données
- Envoyer des données de formulaire adaptatif à un point d’entrée REST
- Envoyer des données de formulaire adaptatif à un workflow AEM
- Utiliser le Portail Formulaires pour répertorier des formulaires adaptatifs AEM sur un site web AEM
- Ajouter des contrôles de version, des commentaires et des annotations à un formulaire adaptatif
- Comparer des formulaires adaptatifs