← К заметкам

Заметки

Почему нельзя отключать проверку прав ради чат-бота

Бот может работать под техническим пользователем с широким доступом, а запрос к нему отправляет обычный сотрудник. Если вернуть данные по любому ID из сообщения, права технического пользователя превратятся в доступ для всех участников чата.

Проверка должна связывать отправителя с допустимым действием и объектом. Например, команда «покажи договор 123» требует проверки доступа автора сообщения к этому договору, а не только права бота прочитать таблицу.

Прямые выборки HL-блока и инфоблока в коробке не всегда применяют права прикладного раздела. Нельзя считать подключение пролога или Loader::includeModule() такой проверкой.

Для простого служебного бота лучше заранее ограничить набор команд и разрешённых чатов. Если нужен поиск по данным сотрудников, используйте подходящий API проверки прав и возвращайте только необходимые поля. Флаг отключения проверки прав не устраняет расхождение между автором команды и исполнителем запроса.