Authentifier des requêtes avec Web Bot Auth (état expérimental)
Google teste l'utilisation de Web Bot Auth, projet Internet de l’IETF et nouveau protocole cryptographique permettant aux sites Web de valider l’authenticité des robots. Nous testons ce protocole avec certains agents IA hébergés sur l’infrastructure de Google. Ce guide présente Web Bot Auth, son état actuel et la procédure de vérification pendant cette phase expérimentale.
Qu'est-ce que Web Bot Auth ?
Web Bot Auth est un protocole cryptographique expérimental utilisé pour authentifier les requêtes envoyées par des robots. Au lieu de s'en remettre uniquement aux en-têtes déclaratifs et aux adresses IP, Web Bot Auth permet aux agents de signer leurs requêtes de manière cryptographique.
L’utilisation de Web Bot Auth aide les propriétaires de sites à identifier le trafic automatisé sur leurs sites et empêche tout autre acteur d’usurper l’identité des agents de confiance. Web Bot Auth peut apporter les avantages suivants :
- Certitude cryptographique : allez au-delà des en-têtes qui renvoient à une identité vérifiée mais sont aisément falsifiables et dissociez l’identité des agents de leurs adresses IP.
- Meilleure observabilité : obtenez des informations plus claires sur la façon dont les agents interagissent avec votre contenu.
- Pérennité : contribuez à l’établissement d’un Web où les fournisseurs d’agents et les propriétaires de sites peuvent instaurer une relation de confiance mutuelle et prendre des décisions éclairées sur les méthodes d'accès.
État actuel de Web Bot Auth : expérimental
La mise en œuvre de Web Bot Auth par Google est actuellement à l'état expérimental pour les raisons suivantes :
- Web Bot Auth est une spécification en cours d’élaboration par le groupe de travail WBA de l’IETF et est susceptible d’évoluer. Google continue de participer activement aux travaux de ce groupe à mesure qu’ils avancent.
- La vérification des robots par user-agent et adresse IP est aujourd’hui la norme de facto autour de laquelle se définissent règles, systèmes et bonnes pratiques depuis des décennies. Faire évoluer ce cadre demande du temps et une approche rigoureuse, et nous n’en sommes qu’aux prémices. Nous évaluons encore les caractéristiques techniques de ce protocole et ses implications potentielles sur l’écosystème.
Qu'est-ce que cela signifie ?
L'état "expérimental" signifie que :
- tous les user-agents Google n'utilisent pas Web Bot Auth ;
- Google ne signe pas encore toutes les requêtes des agents utilisant le protocole ;
- nous vous recommandons de continuer à vous appuyer sur les adresses IP, le DNS inversé et les chaînes de user-agent en plus de Web Bot Auth, tandis que nous déployons progressivement les requêtes signées.
Si vous souhaitez participer à la phase expérimentale, nous vous expliquons comment reconnaître les agents IA de Google et les ajouter à votre liste d’autorisation.
Comment ajouter des agents IA de Google à une liste d'autorisation à l'aide de Web Bot Auth
Si vous êtes développeur ou administrateur système et souhaitez ajouter nos agents IA expérimentaux à votre liste d’autorisation, vous pouvez mettre en œuvre une vérification via le protocole Web Bot Auth :
- en utilisant un produit ou un service compatible avec Web Bot Auth ;
- en vérifiant les requêtes vous-même.
Utiliser un produit ou un service compatible avec Web Bot Auth
Les principaux CDN, WAF et services de détection de robots sont compatibles avec Web Bot Auth. Certains services d'infrastructure
permettent de rechercher le user-agent Google-Agent
et de l'ajouter à la liste d'autorisation. Contactez votre fournisseur pour connaître la procédure exacte. Un sous-ensemble
de requêtes émises par Google-Agent sont signées via Web Bot Auth ; dans ce
cas, elles sont authentifiées en tant que https://agent.bot.goog. Si votre fournisseur prend en charge
le protocole, il est probable qu'il effectue cette vérification automatiquement.
Valider des requêtes vous-même
Si vous souhaitez authentifier vous-même nos requêtes, consultez la spécification d’architecture des signatures de messages HTTP pour le trafic automatisé et les exemples de mise œuvre sur GitHub. Les étapes clés du protocole sont généralement les suivantes :
- Récupérez l'ensemble des clés publiques de notre agent à partir de https://agent.bot.goog/.well-known/http-message-signatures-directory
et mettez-les en cache conformément à l'en-tête
Cache-Control. - Pour les requêtes concernées envoyées à votre serveur, l'en-tête de requête HTTP
Signature-Agentsera défini surg="https://agent.bot.goog"(notez le libellég=). - Vérifiez l'en-tête
Signatureconformément àSignature-Input, en suivant la norme des signatures de messages HTTP (document RFC 9421). Utilisez les en-têtesSignatureetSignature-Inputportant le libellég. - N'oubliez pas de vous reporter à la vérification par adresse IP, car toutes les requêtes ne sont pas signées.
Pour les requêtes sensibles à la latence, vous pouvez renvoyer la réponse à l'avance et valider la signature dans sa fenêtre d'expiration. Dans ce cas, la sanction sera appliquée a posteriori et pourra s'appliquer aux futures requêtes de l'appelant.
Étapes suivantes
- Contactez votre fournisseur d'hébergement ou de sécurité pour savoir s'il prend en charge la vérification Web Bot Auth.
- Suivez l'évolution des spécifications techniques du groupe de travail Web Bot Auth.
- Participez à la discussion sur la liste de diffusion de l'IETF.
- Envoyez-nous vos commentaires via notre formulaire de commentaires sur Web Bot Auth.