CAPTCHA

Catalogue des nœuds Actions
Sur cette page

Valider un CAPTCHA côté serveur : Cloudflare Turnstile, Google reCAPTCHA v2/v3 ou hCaptcha.

Utilisation et spécificités

Le token vient du formulaire client ; la validation utilise le secret côté serveur. Vérifiez hostname, action et le score pour reCAPTCHA v3. Le secret peut provenir d’un identifiant de variables.

Type technique : captcha. Runtime : nodulz.

Identifiants et prérequis

Créez l’identifiant dans la rubrique Identifiants de votre instance nodulz, puis sélectionnez-le dans le nœud. Les identifiants disponibles dépendent du propriétaire et du partage. Consultez le guide des identifiants pour les accès et la rotation.

Paramètres

Les noms ci-dessous correspondent aux clés techniques. Les valeurs par défaut ne constituent pas une configuration prête à exécuter : renseignez les champs requis par votre opération. Les chemins contenant [] décrivent les éléments d’une liste ; certains champs dépendent du mode sélectionné.

Paramètre Type Par défaut Valeurs / limites
provider enum "turnstile" turnstile, recaptcha_v2, recaptcha_v3, hcaptcha
credentialId string "" -
secretName string "CAPTCHA_SECRET" -
token string "{{ input.body[\"cf-turnstile-response\"] }}" -
remoteIp string "" -
siteKey string "" -
expectedHostname string "" -
expectedAction string "" -
minScore number 0.5 -; ≥ 0, ≤ 1
failOnInvalid boolean true -
timeoutMs number 10000 -; ≥ 100, ≤ 30000

Aide de configuration

credentialId
Identifiant de secrets
Créez un identifiant de type Variables secrètes contenant la clé secrète du fournisseur. Elle reste chiffrée dans Nodulz.
secretName
Nom de la variable secrète
Nom de la variable contenant la clé secrète dans cet identifiant, par exemple CAPTCHA_SECRET. Ne saisissez pas la clé ici.
token
Jeton CAPTCHA
Jeton envoyé par le formulaire. Utilisez une expression ou glissez le champ depuis les données du webhook.
expectedHostname
Domaine attendu
Recommandé : domaine exact du formulaire, sans protocole ni chemin. Un domaine différent ou absent sera refusé.
expectedAction
Action attendue
Action configurée dans le widget, comparée exactement. Obligatoire pour reCAPTCHA v3 ; facultative pour Turnstile.
minScore
Score minimum
reCAPTCHA v3 : accepte un score supérieur ou égal à ce seuil (0 à 1). Un score absent est refusé.
siteKey
Clé publique du site
hCaptcha : clé publique recommandée pour lier la vérification au widget attendu.
remoteIp
Adresse IP du visiteur
Facultatif. Utilisez uniquement une adresse déterminée par une source de confiance, pas une valeur libre du formulaire.
failOnInvalid
Arrêter si le CAPTCHA est refusé
Activé par défaut. Désactivez pour obtenir success=false, puis utilisez un nœud Si avant les actions protégées et une réponse webhook 403. Les erreurs réseau arrêtent toujours le nœud.

Configuration initiale

Exemple de configuration initiale du catalogue, à adapter avant exécution. Les secrets doivent rester dans les identifiants.

json
{
  "provider": "turnstile",
  "credentialId": "",
  "secretName": "CAPTCHA_SECRET",
  "token": "{{ input.body[\"cf-turnstile-response\"] }}",
  "expectedHostname": "",
  "expectedAction": "",
  "minScore": 0.5,
  "failOnInvalid": true
}

Vérification

Testez le nœud avec des données représentatives. Contrôlez sa sortie dans l’inspecteur et les logs, puis utilisez le mapping de l’éditeur pour les champs des nœuds suivants. Un test de déclencheur avec payload simulé ne valide pas la livraison du service externe.

Voir aussi : Expressions et données, Exécutions, Catalogue des nœuds.