Аутентификация запросов с помощью Web Bot Auth (экспериментальная функция)
Google тестирует применение Web Bot Auth, проекта IETF. Это новый криптографический протокол, который помогает сайтам подтверждать подлинность роботов. Мы тестируем его на ряде ИИ-агентов, размещенных на инфраструктуре Google. Из этого руководства вы узнаете, что такое протокол Web Bot Auth, каков его текущий статус и как реализовать проверку на этапе эксперимента.
Что такое Web Bot Auth?
Web Bot Auth – это экспериментальный криптографический протокол, который используется для аутентификации запросов, отправленных роботами. Вместо того чтобы полагаться исключительно на IP-адреса и заголовки, которые легко подделать, Web Bot Auth позволяет подтверждать подлинность запросов агентов с помощью криптографических подписей.
Использование Web Bot Auth помогает владельцам сайтов распознавать автоматизированный трафик и не позволяет злоумышленникам выдавать себя за проверенных агентов. Вот некоторые преимущества Web Bot Auth:
- Криптографическая точность. Забудьте о привязке агентов к IP-адресам и откажитесь от легко подделываемых заголовков в пользу надежной идентификации.
- Улучшенная наблюдаемость. Получайте более точные данные о том, как агенты взаимодействуют с вашим контентом.
- Перспективы на будущее. Помогите сформировать интернет-среду, в которой поставщики агентов и владельцы сайтов могут доверять друг другу и принимать взвешенные решения о предоставлении доступа.
Текущий статус Web Bot Auth: экспериментальная функция
В настоящее время Web Bot Auth – экспериментальная функция по следующим причинам:
- Web Bot Auth – это проект спецификации, разработанный рабочей группой WBA инженерного совета интернета (IETF). Со временем спецификация может меняться. По мере развития проекта Google продолжает участвовать в деятельности рабочей группы.
- Проверка роботов по IP-адресу и строке User-Agent сейчас является стандартом: вокруг этих методов десятилетиями строились системы, правила и рекомендации. Переход на новые стандарты требует времени и осторожности. Мы находимся на начальном этапе и все ещё анализируем технические характеристики протокола, а также то, как его внедрение может повлиять на сложившуюся экосистему.
Что это значит?
Экспериментальный статус означает следующее:
- Не все агенты пользователя Google поддерживают Web Bot Auth.
- Google пока подписывает не все запросы агентов, использующих этот протокол.
- Мы рекомендуем не полагаться только на Web Bot Auth и продолжать использовать IP-адреса, обратные записи DNS и строки User-Agent, поскольку внедрение подписанного трафика происходит постепенно.
Если вы хотите принять участие в эксперименте, ознакомьтесь с инструкциями о том, как распознавать и добавлять в белый список ИИ-агентов Google.
Как добавлять ИИ-агентов Google в белый список с помощью Web Bot Auth
Если вы разработчик или системный администратор и хотите добавить наших экспериментальных ИИ-агентов в белый список, вы можете реализовать проверку с помощью протокола Web Bot Auth.
Как использовать продукты и сервисы с поддержкой Web Bot Auth
Основные сервисы для выявления роботов, CDN и WAF поддерживают Web Bot Auth. Некоторые инфраструктурные сервисы позволяют найти агента пользователя Google-Agent и добавить его в белый список. Чтобы узнать, как это сделать, обратитесь к поставщику. Часть запросов, поступающих от Google-Agent, подписывается с помощью Web Bot Auth. В таких случаях они аутентифицируются как https://agent.bot.goog. Если поставщик поддерживает Web Bot Auth, скорее всего, проверка подлинности выполняется автоматически.
Как самостоятельно проверять запросы
Если вы хотите проверять подлинность наших запросов самостоятельно, изучите спецификацию архитектуры подписей HTTP-сообщений для автоматизированного трафика и примеры реализации на GitHub. В целом, основные этапы работы выглядят так:
- Получите набор открытых ключей нашего агента с сайта https://agent.bot.goog/.well-known/http-message-signatures-directory и сохраните их в кеше в соответствии с заголовком
Cache-Control. - HTTP-запросы, участвующие в проверке и отправленные на ваш сервер, будут содержать заголовок
Signature-Agentсо значениемg="https://agent.bot.goog"(обратите внимание на меткуg=). - Проверьте заголовок
Signatureв соответствии сSignature-Input, следуя стандарту подписей HTTP-сообщений (RFC 9421). Используйте заголовкиSignatureиSignature-Inputс меткойg. - Не забудьте предусмотреть проверку по IP-адресу, так как не все запросы содержат подпись.
Для запросов, критичных к задержкам, можно отправить ответ сразу, а проверку подписи выполнить позже в течение ее срока действия. В этом случае санкции будут применяться уже постфактум, и вы сможете распространить их на будущие запросы отправителя.
Что дальше?
- Обратитесь к своему хостинг-провайдеру или поставщику услуг безопасности, чтобы узнать, поддерживают ли они проверку с помощью Web Bot Auth.
- Следите за обновлениями технических спецификаций рабочей группы Web Bot Auth.
- Присоединитесь к списку рассылки IETF.
- Делитесь своим мнением через нашу форму обратной связи Web Bot Auth.