Безопасность

Минимальные полномочия

Токен ограничен одним ботом, а chat_id проверяется на принадлежность этому боту. Бот не может читать произвольные комнаты или действовать от имени владельца.

Безопасный webhook

Допускается только HTTPS и публичные IP. Redirect не выполняется; loopback, link-local и private ranges блокируются для защиты от SSRF.

Валидация

Проверяйте подпись до JSON parsing, отклоняйте старые timestamp, ограничивайте размер тела и храните обработанные event id. Секреты держите в менеджере секретов.

Изоляция в группе

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

Практика с SDK

Разрешайте webhook только по HTTPS, проверяйте подпись до JSON parsing и ограничивайте максимальный размер тела на reverse proxy.

Не используйте bot token в PWA или мобильном клиенте. Все SDK предназначены для доверенной серверной среды.

Примеры использования

import { verifyWebhook } from '@keychat/bots';

// Keep rawBody unchanged: verifyWebhook checks timestamp, HMAC and freshness.
const event = verifyWebhook(rawBody, request.headers, process.env.KEYCHAT_WEBHOOK_SECRET!);
© 2026. Key Chat.