# Web Bot Auth: кто именно пришёл на сайт

Ринат Султанов · Проверено 2026-11-05

Внешний агент представился закупщиком. Одной строки User-Agent недостаточно, чтобы ему поверить. Web Bot Auth использует криптографические подписи HTTP-запросов для подтверждения технической личности отправителя.

## Представьте

Это похоже на проверяемую подпись на конверте. Она помогает установить, кто отправил запрос. Но даже настоящая подпись не доказывает, что человек поручил этому отправителю купить товар на любую сумму.

## По шагам

1. Получите доверенный открытый ключ по согласованным правилам.
2. Проверьте подпись и подписанные части запроса.
3. Проверьте время и защиту от повторной отправки.
4. Отдельно проверьте права на запрашиваемое действие.

## Технические детали

Демонстрация проверяет настоящую Ed25519-подпись ограниченного профиля HTTP Message Signatures / Web Bot Auth: метод, домен, путь, Content-Digest и Signature-Agent. Ключ берётся только из доверенного списка демонстрации. Срок подписи ограничен 60 секундами; повтор отслеживается в памяти процесса.

## На сайте

Работает проверка учебных подписей. Ed25519 · ограниченный профиль

https://rinatsultan.com/agent-lab/security/

## Ограничения

Учебный ключ создаётся в памяти сервера и не даёт доступа к закрытым данным. Внешние URL ключей не загружаются. Боевой допуск сторонних агентов и подтверждение полномочий покупателя не включены. Это проверка ограниченного профиля, а не полная реализация всех вариантов Web Bot Auth.

## Следующая проверка

Для реального допуска определить доверенных издателей ключей, отдельную авторизацию действий и устойчивое к перезапуску хранилище защиты от повтора.

## Источники

- [Web Bot Auth в Cloudflare](https://developers.cloudflare.com/bots/reference/bot-verification/web-bot-auth/)
