¿Qué es Web Bot Auth y cómo firma un bot sus peticiones?
Web Bot Auth es un protocolo, en borrador del IETF, con el que un bot o un agente de IA firma criptográficamente sus peticiones HTTP para que el sitio que las recibe compruebe quién las envía, sin fiarse del nombre que declara ni de su IP. Se apoya en las firmas de mensajes HTTP del RFC 9421 y en un directorio público de claves.
Lo esencial
- Web Bot Auth cambia el «dice ser este bot» por una prueba: una firma que solo puede generar quien tiene la clave privada.
- Es un borrador: el documento del grupo de trabajo del IETF es la versión 00 del 1 de septiembre de 2026 y caduca el 5 de marzo de 2027 si no se renueva.
- Cada petición firmada lleva tres cabeceras, Signature, Signature-Input y Signature-Agent, y las claves públicas se publican en /.well-known/http-message-signatures-directory.
- Google ya firma una parte de las peticiones de Google-Agent, en modo experimental, y pide seguir verificando también por IP, DNS inverso y user agent.
- El protocolo dice quién llama, no si conviene dejarle pasar: asignar reputación a los bots queda fuera del grupo de trabajo.
Hoy un bot se presenta con su user agent, un nombre que escribe él mismo. Por eso Google explica cómo verificar a sus rastreadores: para el caso de que alguien acceda a tu sitio haciéndose pasar por Google.[1]Google Search Central. Verifying Googlebot and other Google crawlers Web Bot Auth es la propuesta para cerrar ese hueco con criptografía: el bot firma cada petición y tu servidor, o tu CDN, comprueba la firma. A una tienda le importa por una razón práctica: la decisión de a quién dejar entrar la toma cada vez más un cortafuegos, y un agente que compra por un cliente y un scraper que se disfraza de él no deberían recibir el mismo trato.
Cómo funciona
La base es un estándar ya publicado, el RFC 9421 (febrero de 2024), que describe cómo crear, codificar y verificar firmas digitales sobre partes de un mensaje HTTP. Define dos cabeceras: Signature-Input, que dice qué partes del mensaje cubre la firma y con qué parámetros, y Signature, que lleva la firma. Su objetivo es dar integridad y autenticidad de extremo a extremo a esas partes, incluso cuando el mensaje pasa por intermediarios.[2]IETF, RFC Editor (febrero de 2024). RFC 9421: HTTP Message Signatures
Web Bot Auth es un perfil de ese estándar para el tráfico automatizado. El documento del grupo de trabajo, HTTP Message Signatures for automated traffic, firmado por Thibault Meunier (Cloudflare) y Sandor Major (Google), describe un protocolo para que los clientes HTTP automatizados se identifiquen criptográficamente, y añade tres piezas:[3]IETF, grupo de trabajo webbotauth (Meunier y Major, 1 de septiembre de 2026). HTTP Message Signatures for automated traffic (draft-ietf-webbotauth-httpsig-protocol-00)
- La cabecera
Signature-Agent, que apunta a una URL HTTPS donde están las claves del firmante. - Un directorio de claves en formato JWKS (JSON Web Key Set), publicado en
/.well-known/http-message-signatures-directorydel dominio del firmante, servido por HTTPS y solo con un 200. Es una ruta del directorio .well-known. - Unas reglas para la firma: la etiqueta
tag="web-bot-auth", la firma tiene que cubrir al menos el dominio de destino (@authorityo@target-uri), y lleva fecha de creación, fecha de caducidad (se recomienda un máximo de 24 horas) y el identificador de la clave. Unnonceopcional protege contra la reutilización de una petición firmada.
Para verificar, quien recibe la petición lee Signature-Agent, descarga el directorio de claves, busca la clave por su identificador y comprueba la firma según el RFC 9421.[3]IETF, grupo de trabajo webbotauth (Meunier y Major, 1 de septiembre de 2026). HTTP Message Signatures for automated traffic (draft-ietf-webbotauth-httpsig-protocol-00)
En qué punto está
El IETF creó un grupo de trabajo, webbotauth, para estandarizar métodos que autentiquen criptográficamente a los clientes automatizados y den más información sobre quién los opera. Su carta deja fuera, entre otras cosas, autenticar al usuario final de un agente, seguir a los bots o asignarles reputación, y distinguir de las personas a los bots que no participan. El calendario preveía las especificaciones de autenticación para el 30 de abril de 2026.[4]IETF Datatracker. Web Bot Auth (webbotauth): carta del grupo de trabajo
El documento de grupo llegó después: es la versión 00, del 1 de septiembre de 2026, y caduca el 5 de marzo de 2027. Los dos borradores individuales que lo precedieron, el de arquitectura y el del directorio, figuran como sustituidos, con su última versión del 2 de marzo de 2026.[5]IETF Datatracker. Web Bot Auth (webbotauth): documentos del grupo de trabajo[3]IETF, grupo de trabajo webbotauth (Meunier y Major, 1 de septiembre de 2026). HTTP Message Signatures for automated traffic (draft-ietf-webbotauth-httpsig-protocol-00) Y es un Internet-Draft: un documento de trabajo válido seis meses como máximo, que puede actualizarse, sustituirse o quedar obsoleto en cualquier momento.[3]IETF, grupo de trabajo webbotauth (Meunier y Major, 1 de septiembre de 2026). HTTP Message Signatures for automated traffic (draft-ietf-webbotauth-httpsig-protocol-00)
Quién lo usa ya
- Google. Firma con Web Bot Auth una parte de las peticiones de Google-Agent, el agente que usan los sistemas alojados en la infraestructura de Google para navegar por la web y hacer acciones a petición de un usuario. Lo marca como experimental, porque la especificación es un borrador que puede cambiar, y recomienda seguir comprobando también la IP, el DNS inverso y el user agent mientras extiende el tráfico firmado.[6]Google Crawling Infrastructure. Authenticate requests with Web Bot Auth (experimental) Como recogedor activado por usuarios, Google-Agent por lo general no sigue las reglas de robots.txt.[7]Google Crawling Infrastructure. Google's user-triggered fetchers
- Cloudflare. Usa Web Bot Auth como uno de los métodos para verificar bots y agentes firmados, exige claves Ed25519 y permite al operador del bot registrar su directorio de claves desde el panel. Según su documentación, el dueño del sitio no tiene que hacer nada: Cloudflare valida las firmas de los bots registrados.[8]Cloudflare, documentación de Bots. Web Bot Auth Su documentación clasifica los bots verificados según cómo se operan: directamente o a través de un intermediario.[9]Cloudflare, documentación de Bots. Signed agents
En una tienda
Así llegaría una petición firmada de Google-Agent a la ficha de una tienda ejemplo ficticio. La estructura sigue el ejemplo del borrador y el valor de Signature-Agent es el que documenta Google; las fechas, el identificador de la clave y la firma son inventados:[3]IETF, grupo de trabajo webbotauth (Meunier y Major, 1 de septiembre de 2026). HTTP Message Signatures for automated traffic (draft-ietf-webbotauth-httpsig-protocol-00)[6]Google Crawling Infrastructure. Authenticate requests with Web Bot Auth (experimental)
GET /productos/moka-inox-6 HTTP/1.1
Host: cafeteras-ejemplo.es
User-Agent: Mozilla/5.0 (X11; Linux x86_64) ... (compatible; Google-Agent)
Signature-Agent: g="https://agent.bot.goog"
Signature-Input: g=("@authority" "signature-agent";key="g");created=1791273600;expires=1791277200;keyid="ejemplo-clave";tag="web-bot-auth"
Signature: g=:ZmlybWEtZGUtZWplbXBsbw==:
Línea a línea: User-Agent es lo que el bot dice ser y no prueba nada. Signature-Agent dice dónde están sus claves: https://agent.bot.goog/.well-known/http-message-signatures-directory.[6]Google Crawling Infrastructure. Authenticate requests with Web Bot Auth (experimental) Signature-Input dice que la firma cubre el dominio de la tienda y la propia cabecera Signature-Agent, con una validez de una hora. Si alguien copia la petición para otra web, la firma deja de valer, porque cubría cafeteras-ejemplo.es. Si alguien inventa la firma, no la puede generar sin la clave privada.
Lo que se suele confundir
Tratar Web Bot Auth como un estándar terminado y quitar el resto de comprobaciones. Es un borrador del IETF,[3]IETF, grupo de trabajo webbotauth (Meunier y Major, 1 de septiembre de 2026). HTTP Message Signatures for automated traffic (draft-ietf-webbotauth-httpsig-protocol-00) Google solo firma una parte de las peticiones de un agente y pide mantener la verificación por IP, DNS inverso y user agent.[6]Google Crawling Infrastructure. Authenticate requests with Web Bot Auth (experimental) Un bot que no firma no es por eso un impostor: la firma es una prueba más, todavía parcial.
Cómo comprobarlo
- Pregunta a tu CDN o a tu plataforma si verifica Web Bot Auth. Si estás detrás de Cloudflare, la verificación la hace Cloudflare con los bots registrados.[8]Cloudflare, documentación de Bots. Web Bot Auth
- Busca la cabecera
Signature-Agenten los registros de tu servidor o de tu CDN, si guardan las cabeceras de la petición. Su valor te dice qué firmante declara la petición. - Abre un directorio de claves, por ejemplo el de Google en
https://agent.bot.goog/.well-known/http-message-signatures-directory, para ver qué publica un firmante.[6]Google Crawling Infrastructure. Authenticate requests with Web Bot Auth (experimental) - Mantén la verificación por DNS inverso y rangos de IP para Googlebot y el resto de rastreadores de Google.[1]Google Search Central. Verifying Googlebot and other Google crawlers
- Consulta el estado del borrador en el Datatracker del IETF antes de construir nada a medida: la versión vigente es la 00, de septiembre de 2026.[5]IETF Datatracker. Web Bot Auth (webbotauth): documentos del grupo de trabajo
Concepto cercano: user agent
El user agent es una declaración; Web Bot Auth es una prueba. Los dos viajan en la misma petición y responden a la misma pregunta, quién llama, con distinto grado de confianza: el primero lo escribe el cliente, la segunda solo la puede producir quien tiene la clave.[2]IETF, RFC Editor (febrero de 2024). RFC 9421: HTTP Message Signatures Ninguno de los dos decide qué hace tu tienda con esa visita. Eso sigue siendo cosa de tu robots.txt, de tus reglas de bloqueo de bots de IA y de tu negociación de contenido, que decide qué versión recibe.
Para seguir, la entrada sobre caché y CDN para bots explica qué pasa con esas peticiones antes de llegar a tu servidor, y la ruta de lectura de rastreo e indexación ordena el resto de términos.
Sinónimos
- English
- Web Bot Authentication, signed bot requests
- Español
- autenticación de bots, bots firmados
Fuentes
- [1] Google Search Central. Verifying Googlebot and other Google crawlers. Consultado el . ↑ ↑
- [2] IETF, RFC Editor (febrero de 2024). RFC 9421: HTTP Message Signatures. Consultado el . ↑ ↑
- [3] IETF, grupo de trabajo webbotauth (Meunier y Major, 1 de septiembre de 2026). HTTP Message Signatures for automated traffic (draft-ietf-webbotauth-httpsig-protocol-00). Consultado el . ↑ ↑ ↑ ↑ ↑ ↑
- [4] IETF Datatracker. Web Bot Auth (webbotauth): carta del grupo de trabajo. Consultado el . ↑
- [5] IETF Datatracker. Web Bot Auth (webbotauth): documentos del grupo de trabajo. Consultado el . ↑ ↑
- [6] Google Crawling Infrastructure. Authenticate requests with Web Bot Auth (experimental). Consultado el . ↑ ↑ ↑ ↑ ↑
- [7] Google Crawling Infrastructure. Google's user-triggered fetchers. Consultado el . ↑
- [8] Cloudflare, documentación de Bots. Web Bot Auth. Consultado el . ↑ ↑
- [9] Cloudflare, documentación de Bots. Signed agents. Consultado el . ↑
Historial de cambios
- Primera versión.
Esta definición se publica bajo licencia CC BY 4.0. Puedes reutilizar esta definición citando a Clione con un enlace a esta página.
Términos relacionados
Caché y CDN para bots
Cómo la caché HTTP y la CDN deciden qué ven Googlebot y los bots de IA en tu tienda: ETag, 304, max-age y los bloqueos que sacan páginas del índice.
Header Link rel=alternate
Qué es la cabecera HTTP Link con rel=alternate, cómo anuncia otra versión de una URL (otro idioma, un PDF, Markdown) y cómo comprobar que llega.
Negociación de contenido
Qué es la negociación de contenido en HTTP, cómo elige el servidor entre HTML, Markdown o idiomas con Accept y Vary, y qué cambia para los bots.
User agent
Qué es el user agent, cómo se lee la cadena de un navegador o de Googlebot, por qué no prueba quién visita tu tienda y cómo se comprueba en los registros.
Bloqueo de bots de IA
Qué es el bloqueo de bots de IA, qué agentes conviene dejar pasar en una tienda y por qué robots.txt, la CDN y la plataforma bloquean cosas distintas.
Directorio .well-known
Qué es /.well-known/, la ruta que la RFC 8615 reserva para los archivos que describen un sitio, qué recoge su registro en IANA y qué publica una tienda.
Haz que los bots entiendan tu catálogo
Clione completa cada ficha de producto con lo que los bots leen mejor: el grafo JSON-LD con sus datos estructurados, la meta description y las preguntas frecuentes. Tú revisas y pulsas Push; después comprobamos tu tienda en vivo para que todo siga publicado.