Explainers

L'extension CaptchaAI et le Manifest V3 de Chrome

Périmètre sûr : Ce guide s'applique exclusivement à vos propres applications, environnements de QA, de préproduction ou de production, ou à des systèmes pour lesquels vous disposez d'une autorisation écrite. Il ne décrit ni l'automatisation de sites tiers, ni le contournement de protections, ni l'évasion d'anti-bot.

L'extension CaptchaAI résout les CAPTCHA d'un clic dans Chrome, et depuis Manifest V3, elle repose sur un service worker éphémère au lieu d'une page d'arrière-plan permanente. Ce détail d'architecture change la façon dont vous la déployez et la surveillez. Le vrai enjeu n'est pas le clic d'activation : c'est de traiter l'extension comme un workflow de navigateur reproductible, avec un état, un profil et un comportement prévisibles.

Ce que Manifest V3 change pour l'extension

Manifest V3 est le format d'extension de Chrome et Edge. Trois changements pèsent sur l'automatisation.

Changement Conséquence pour votre workflow
Service worker éphémère à la place de la page d'arrière-plan L'état ne vit plus en mémoire ; faites-le passer par chrome.storage.
Permissions d'hôte explicites Ne déclarez que les domaines dont votre suite de tests a réellement besoin.
Réseau via declarativeNetRequest Comportement plus prévisible et plus simple à auditer.

Qui déclenche, qui résout, qui vérifie

Une intégration se raisonne à trois acteurs, quel que soit le type de défi (reCAPTCHA v2, Cloudflare Turnstile…) :

Acteur Rôle
Le front Déclenche le défi CAPTCHA sur la page.
Le fournisseur CAPTCHA Produit le token de réponse.
Votre backend Vérifie le token avant d'accorder l'accès.

L'extension n'est qu'un maillon de cette chaîne : votre serveur reste seul juge du token.

Ce que vous contrôlez côté application

Comme propriétaire de l'application, trois leviers restent entre vos mains :

  • la configuration du widget CAPTCHA ;
  • la vérification serveur du token ;
  • la réponse appliquée selon le score.

C'est là que se joue la qualité de l'intégration, bien plus que dans les réglages de l'extension.

Vérifier le solde avant une exécution

Avant un lot de tests planifié — un job nocturne sur OVHcloud ou Scaleway — vérifiez le solde du compte pour qu'une exécution entière n'échoue pas sur un ERROR_ZERO_BALANCE. Ce contrôle appartient à votre suite de tests :

import os
import requests

API_KEY = os.environ['CAPTCHAAI_KEY']

def get_balance() -> float:
    resp = requests.post(
        'https://api.captchaai.com/getBalance',
        json={'clientKey': API_KEY},
        timeout=15,
    )
    resp.raise_for_status()
    return float(resp.json().get('balance', 0))

Ajoutez une alerte lorsque le solde passe sous un seuil défini.

Observabilité et journalisation

Instrumentez les appels CAPTCHA pour obtenir des métriques exploitables : durée d'obtention du token, code retour HTTP, identifiant de tâche et taille de la file d'attente. Ces signaux nourrissent vos tableaux de bord de QA.

Séparez les journaux par environnement et corrélez les identifiants à votre traçage distribué, par exemple OpenTelemetry : vous rejouez alors un scénario complet à partir d'un seul identifiant. Côté conformité, minimisez les données personnelles écrites dans les logs — des métadonnées techniques, jamais le contenu des formulaires.

Liste de contrôle avant la mise en production

  • Le périmètre reste limité à vos propres applications ou à des sources autorisées.
  • La clé CaptchaAI vit dans un secret d'intégration continue ou un coffre, jamais dans le code ni dans le paquet de l'extension.
  • Les durées d'appel et les codes retour sont tracés à chaque exécution.
  • Une stratégie de retry idempotent couvre les erreurs transitoires.
  • Les tests sont rejouables depuis votre intégration continue.

Limites et hors-périmètre

Cet article ne couvre pas l'automatisation de sites tiers. Si votre cas d'usage implique un site que vous ne possédez pas, validez d'abord les conditions d'utilisation et la base juridique.

FAQ

L'extension CaptchaAI est-elle compatible avec Manifest V3 ?

Oui, elle fonctionne dans le cadre Manifest V3 de Chrome et Edge. Retenez surtout la conséquence : l'état ne persiste plus en mémoire entre deux résolutions ; appuyez-vous sur chrome.storage et un profil de navigateur stable pour un comportement reproductible.

Où stocker la clé API utilisée par l'extension ?

Jamais dans le code ni dans le paquet publié. Placez-la dans un secret d'intégration continue ou un coffre, et injectez-la à l'exécution. Une clé exposée dans un artefact doit être régénérée depuis le tableau de bord.

Que faire si un token est refusé après résolution ?

Le plus souvent, il a été appliqué dans une session différente de celle qui a déclenché le défi. Gardez la résolution et la soumission du formulaire dans le même contexte de navigateur, avec les mêmes cookies.

Comment rester conforme au RGPD avec ce workflow ?

Minimisez les données collectées : ne journalisez que des métadonnées techniques. Documentez la base juridique de votre traitement et fixez une durée de conservation des logs.

Guides connexes

Traitez votre extension comme un workflow mesurable et reproductible, pas comme un simple clic. – Créez votre compte CaptchaAI.

Les commentaires sont désactivés pour cet article.