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

Памятка по выдаче прав - что считать критичным, почему бот отказывает и как проверить, у кого что есть.

Коротко о том, как мы советуем обращаться с доступом: что выдавать осторожно, почему бот иногда отказывает и как проверить, у кого что есть.

Это советы, а не гарантия. Бот выполняет то, что вы разрешили: выдали кому-то все права чата, а он к утру забанил половину участников - разбираться с этим будете вы.

Кому и сколько давать

Сначала личное право под задачу, роль - когда задач стало много. Про запас не выдавайте, ведь Старший администратор распоряжается ролями и правами всего чата.

С ролью владельца всё иначе. Выданный вами владелец сразу получает все права, отобрать их нельзя, а снять саму роль можете только вы как создатель чата, поэтому каждому желающему её лучше не раздавать.

Для новичка на пробном периоде советуем создать отдельную роль с низким уровнем и парой нужных прав. Прижился - повысите, не прижился - снимете одну роль, и весь доступ уйдёт вместе с ней.

Кто ушёл из команды, тот без доступа: роль через -разжаловать, личные права через -права сброс.

Критичные права

В справочнике такие права помечены значком, и по нему можно отфильтровать список. Чем они опасны:

  • управление ролями и правами: человек начинает распоряжаться доступом и может передать другим всё, что есть у него самого;
  • изменение настроек чата: человек задаёт лимит варнов и срок бана за него, норму активности и отвечает ли бот на чужие команды, то есть подкручивает правила, по которым чат наказывает сам;
  • бан и особенно чистка сообщений: удаляет участников и стирает их переписку без возможности вернуть;
  • амнистия: снимает сразу все баны за период;
  • иммунитет к фильтрам безопасности: сообщения такого участника не проверяются, и если его аккаунт угонят, рассылка пойдёт по чату свободно. У встроенных ролей администрации, от Модератора и выше, этот иммунитет есть по умолчанию;

Панель настроек бота остаётся у владельца и не выдаётся никому.

Смотрите и на админку телеграма: если у человека там уже есть, например, бан и удаление сообщений, такое же право у бота на безопасность не влияет, он и так всё это может через обычный инструментарий телеграма. Опасно, когда его получает обычный участник.

Права на роли и права стоит держать у одного-двух человек, которым вы доверяете чат целиком. Всё остальное можно раздавать точечно и без риска.

Когда бот откажет

Часть попыток бот просто не выполнит, и это страховка, а не поломка. В ответе всегда написана причина.

  • Нельзя выдать право, которого нет у вас самих. Хотите передать бан - сначала он должен быть у вас.
  • Нельзя менять роли и права тому, чей уровень равен вашему или выше, и нельзя редактировать права такой роли.
  • Нельзя выдать роль своего уровня или выше и создать роль с уровнем не ниже своего.
  • Роль владельца выдаёт только создатель чата, а самого владельца нельзя понизить, разжаловать или тронуть ему права.
  • Роль от уровня 80 бот сразу не выдаст: сначала покажет, что именно она даёт, и попросит подтвердить кнопкой. Соглашайтесь, только если уверены в человеке и понимаете, что передаёте. Отключить этот шаг нельзя.
  • Свои роли и права через эти команды не изменить, чтобы никто не поднял себя сам.

Если отказ выглядит неожиданно, скорее всего дело в уровнях: посмотрите -роль @юзер и сравните числа.

Проверить и откатить

-права @юзер покажет, что у человека есть и что выдано лично, -роль @юзер - его роли, кто их выдал и когда.

Лишнее убирается через -права и -роль, а если право оказалось ненужным всем сразу, снимите его у самой роли. Доступ действует в пределах одного чата, так что порядок наводится в каждом отдельно.