> For the complete documentation index, see [llms.txt](https://docs.thewalletcrew.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.thewalletcrew.io/guides-enrolment/fr/inscription/enrolment-form/validation-rules/cloudflare-turnstile.md).

# Cloudflare Turnstile

Renforcez la sécurité de l’inscription avec Cloudflare Turnstile pour vérifier le trafic humain.

Cloudflare Turnstile peut être activé pour réduire les inscriptions automatisées et les abus scriptés. Lorsqu’il est activé, le formulaire d’inscription inclut une vérification Turnstile et valide le jeton résultant côté serveur.

L’implémentation reste généralement invisible. Turnstile s’exécute en arrière-plan et ne devient interactif que lorsque Cloudflare exige une vérification supplémentaire.

{% hint style="warning" %}
La détection des bots ne peut pas être précise à 100 %. Turnstile fournit une atténuation de base des bots, pas une garantie. L’automatisation assistée par IA et les services avec intervention humaine rendent les abus de plus en plus difficiles à contrôler complètement. Cloudflare documente l’approche de Turnstile ici : [Documentation Cloudflare Turnstile](https://developers.cloudflare.com/turnstile/).
{% endhint %}

<div data-with-frame="true"><figure><img src="https://831874859-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlFokgwgJiwLXu7G8MVSJ%2Fuploads%2Ff0kYy1LxKGyayzyrap8v%2Fimage.png?alt=media&#x26;token=35bf8143-aa20-475b-afa7-7e9d7817b452" alt="Turnstile challenge displayed as a modal during enrolment" width="375"><figcaption><p>Vérification supplémentaire requise</p></figcaption></figure></div>

## Comment cela fonctionne

1. Lorsque le formulaire d’inscription se charge, Turnstile s’exécute en arrière-plan.
2. Lorsque le formulaire est envoyé, Turnstile peut demander une vérification interactive.
3. The Wallet Crew valide le jeton Turnstile côté serveur avant d’accepter l’inscription.

## Configuration

La configuration nécessite un widget Turnstile dans Cloudflare et les clés du widget. The Wallet Crew utilise la **clé du site** et la **clé secrète** pour valider les soumissions d’inscription.

{% stepper %}
{% step %}

### Créer et configurer un widget Turnstile dans Cloudflare

Créez un widget Turnstile dans le tableau de bord Cloudflare. Cloudflare fournit une **clé du site** (publique) et une **clé secrète** (privée) pour chaque widget.

* Guide officiel de configuration : [Cloudflare Turnstile « Commencer »](https://developers.cloudflare.com/turnstile/get-started/)
* Point d’accès au tableau de bord Cloudflare : [dash.cloudflare.com](https://dash.cloudflare.com/) (puis ouvrez **Turnstile**)

**La configuration par défaut est généralement suffisante. Veuillez consulter l’équipe informatique de la marque pour tout ajustement supplémentaire.**
{% endstep %}

{% step %}

### Récupérer la clé du site et la clé secrète

Dans Cloudflare, ouvrez la configuration du widget et copiez :

* **clé du site**
* **clé secrète**

Ces valeurs sont requises dans le Back Office de The Wallet Crew.
{% endstep %}

{% step %}

### Activer Turnstile dans The Wallet Crew

Demandez à l’équipe The Wallet Crew d’activer l’extension Cloudflare Turnstile pour le locataire.

Ouvrez ensuite la page des paramètres du Back Office et collez les clés :

<p align="center"><a href="https://admin.thewalletcrew.io/tenant/~/settings/security/turnstile" class="button secondary" data-icon="chevrons-right">Paramètres Turnstile</a></p>

<div data-with-frame="true"><figure><img src="https://831874859-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlFokgwgJiwLXu7G8MVSJ%2Fuploads%2FwsadprrFphFOkFvdVtmu%2Fimage.png?alt=media&#x26;token=e11367f2-30cf-46ce-8471-880ef0d743ef" alt="Turnstile settings in the Back Office." width="563"><figcaption><p>Paramètres Turnstile dans le Back Office.</p></figcaption></figure></div>
{% endstep %}
{% endstepper %}

## Notes

Turnstile est généralement invisible car il s’exécute en arrière-plan. Une vérification interactive n’est affichée que lorsque Cloudflare signale la session comme présentant un risque plus élevé.

La validation du jeton est toujours effectuée côté serveur par The Wallet Crew lorsque l’extension est activée.

### Limites et attentes

Turnstile améliore la protection de base, mais ne « résout » pas les bots. Les abus automatisés évoluent rapidement et reposent souvent sur des outils assistés par IA, des proxys résidentiels et des services avec intervention humaine. Cela rend la détection parfaite des bots irréaliste pour la plupart des flux d’inscription publics.

Cloudflare présente Turnstile comme une alternative sans friction aux CAPTCHA, et non comme une garantie que chaque bot sera bloqué. Combinez Turnstile avec d’autres contrôles lorsque l’inscription est critique pour l’activité.

Documentation officielle : [Documentation Cloudflare Turnstile](https://developers.cloudflare.com/turnstile/)

### Cookie de défi

Après une vérification Turnstile réussie, l’application peut définir un cookie de sécurité à durée de vie courte. Cela conserve l’état de protection contre les bots entre les requêtes et réduit les défis Turnstile répétés pendant la même session d’inscription.

Comment fonctionne ce cookie :

1. Le client soumet le formulaire d’inscription avec un jeton Turnstile valide.
2. Le serveur valide ce jeton auprès de Cloudflare.
3. Si la validation réussit, le serveur émet un cookie de preuve signé.
4. Lors des prochaines requêtes liées à l’inscription, le serveur vérifie ce cookie.
5. Si le cookie est toujours valide, le serveur peut ignorer une nouvelle vérification Turnstile pendant ce court intervalle.

Ce comportement est configurable dans le Back Office :

* La validité du cookie est définie en secondes, la valeur courante est de 600 secondes (10 minutes)
* Lorsqu’il est désactivé, le serveur n’émet pas ce cookie et une vérification Turnstile est requise pour chaque chemin de soumission.

#### Exigence légale : cookie de sécurité

Ce cookie doit figurer dans la politique de cookies (souvent sous « strictement nécessaires » / « cookies de sécurité »).

* Nom du cookie : `neo.<tenantId>.turnstile-proof` où `<tenantId>` est l’identifiant du locataire de The Wallet Crew
* Objectif : conserver l’état de protection contre les bots entre les requêtes et éviter les défis Turnstile répétés
* Catégorie : cookie de sécurité (généralement considéré comme strictement nécessaire)
* Durée de vie : configurable (secondes). Réglez sur 0 pour désactiver.
* Portée : soumission du formulaire d’inscription
* Attributs techniques :
  * `HttpOnly`
  * `Secure`
  * `SameSite=Lax`
  * `Path=/`

Ce cookie est utilisé uniquement pour la sécurité et la prévention de la fraude, et non pour l’analyse ou le marketing.

## FAQ

<details>

<summary>Turnstile affiche-t-il toujours un défi de type CAPTCHA ?</summary>

Non. Turnstile s’exécute souvent en arrière-plan. Un widget interactif n’est affiché que lorsque Cloudflare exige une vérification supplémentaire.

</details>

<details>

<summary>Turnstile suffit-il à bloquer complètement les bots ?</summary>

Non. Turnstile fournit une atténuation de base des bots, mais il n’est pas parfait. Les abus modernes peuvent utiliser une automatisation assistée par IA, des réseaux de proxys et une résolution avec intervention humaine.

La documentation officielle de Cloudflare couvre l’objectif et le comportement de Turnstile : [Documentation Cloudflare Turnstile](https://developers.cloudflare.com/turnstile/).

</details>

<details>

<summary>Quelles clés sont nécessaires de la part de Cloudflare ?</summary>

The Wallet Crew nécessite le widget Turnstile **clé du site** et la **clé secrète**.

Cloudflare explique ici comment créer un widget et récupérer ces valeurs : [Turnstile « Commencer »](https://developers.cloudflare.com/turnstile/get-started/).

</details>

<details>

<summary>Que se passe-t-il si le jeton Turnstile est manquant ou invalide ?</summary>

Lorsque l’extension est activée, la soumission d’inscription n’est acceptée que lorsqu’un jeton Turnstile valide est reçu et vérifié avec succès côté serveur. Les jetons invalides, expirés ou manquants sont considérés comme des soumissions non légitimes.

</details>

<details>

<summary>Comment tester que Turnstile est correctement configuré ?</summary>

Une validation rapide consiste à soumettre le formulaire d’inscription depuis une session de navigateur normale et à confirmer qu’il se termine sans friction. Une deuxième validation consiste à ouvrir le même flux dans un contexte plus strict (navigation privée, cookies tiers désactivés, VPN ou outils d’automatisation) et à confirmer que Turnstile se comporte toujours comme prévu.

Cloudflare documente les modèles de test recommandés et les étapes d’intégration dans le guide de configuration : [Turnstile « Commencer »](https://developers.cloudflare.com/turnstile/get-started/).

</details>

<details>

<summary>Quel domaine doit être configuré dans le widget Cloudflare ?</summary>

Ajoutez le **domaine personnalisé** qui héberge le formulaire d’inscription.

Cela se configure dans les paramètres du widget Turnstile dans Cloudflare. Le guide de configuration de Cloudflare couvre les détails de configuration du widget : [Turnstile « Commencer »](https://developers.cloudflare.com/turnstile/get-started/).

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.thewalletcrew.io/guides-enrolment/fr/inscription/enrolment-form/validation-rules/cloudflare-turnstile.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
