
Разбор · Опубликовали 08.10.2026
Роли пользователей сайта агенты добавляют вместе с запретами на сервере
Как разделить действия менеджера, редактора и администратора, поставить задачу ИИ-агентам и принять её по разрешённым и запрещённым операциям.
текст собран ИИ-агентами редакции под надзором автора · факты проверены по первоисточникам 08.10.2026
Роли пользователей сайта готовы, когда сервер разрешает сотруднику нужное действие и отклоняет чужое, даже если запрос пришёл в обход кнопки.
ИИ-агентам поручают роли вместе с проверками. Наш пример взят из админки vibecoding.ru: клиентского кейса внедрения этих ролей у нас пока нет.
Не хотите разбираться сами? Внедряем ИИ в ваш бизнес: задачи без лимита, одна цена в месяц, отмена в любой момент.
1. Роль задают действиями и данными, к которым они относятся.
Название «редактор» не отвечает, что можно делать. Править только свои черновики или чужие тоже? Публиковать сразу или после согласования?
Название «администратор» тоже не даёт всех прав. В справке ЮKassa добавлять пользователей могут владелец и управляющий, а администратор не может.
Руководитель согласует матрицу до разработки. В строке операция, в столбце роль, в клетке разрешение. «Свои заявки» и «все заявки» дают разный доступ.
Пример задания для админки, не наш клиентский кейс
Пример редакции, 8 октября 2026. Таблицу согласуют для своего процесса; разрешение на просмотр не означает разрешения на выгрузку.
2. Сервер проверяет право при каждом запросе.
Вход подтверждает личность, проверка доступа разрешает действие. Менеджер вошёл в админку, но право читать свою заявку не даёт права читать чужую.
Запрет исполняет сервер. OWASP рекомендует проверять каждый запрос и отказывать без заданного разрешения. Скрытая кнопка оставляет прямой путь к операции.
Сервер проверяет конкретный объект. Фильтра списка мало: чужая карточка тоже закрыта. Права берутся из доверенной учётной записи, а не из полей запроса.
Одинаковый экран ещё не означает одинаковую защиту
Пример приёмки редакции по OWASP Authorization Cheat Sheet и WSTG, проверены 8 октября 2026.
3. Наша админка научила проверять путь за пределами экрана.
Машина агентов собрала админку вместе с сайтом. Выбор разобран в статье о своей CRM. Пароль страницы не защищает отдельный запрос данных.
Разрешённое удаление тоже может повредить. Если администратор удалит соседнюю строку, запрет для менеджера не поможет. Нужны подтверждение и след изменения.
После поломок мы меняли механизм. Обе истории ниже относятся к vibecoding.ru. Матрица ролей выше остаётся примером задания, а не нашей внедрённой системой.
Две поломки и правила после них
07.07
Ревью нашло чтение служебных агрегатов напрямую, в обход пароля админки. Затронутые непубличные запросы перевели под общий серверный гейт.
13.07
При удалении записи случайно удалили соседнюю. Удаление стало действием с подтверждением, а событие сохраняет прежнее состояние.
Первичные записи журналов машины; исправление запросов подтверждено историей кода от 7 июля. Проверено 8 октября 2026.
Следы работы машины открыты на сайте. Это разработка собственной системы. Внедрение ролей в чужую компанию такими следами не подтверждается.
4. Агенту отдают согласованную матрицу вместе с проверками.
Руководитель утверждает полномочия, инженер ведёт машину агентов. Агент добавляет проверки в код. Кому разрешено видеть все заявки, решает компания.
В постановке задачи агенту границу «готово» записывают заранее. Здесь каждую клетку матрицы подтверждает разрешённая операция или отказ сервера.
Для проверки нужны тестовые сотрудники и вымышленные заявки. Данные реальных клиентов и пароли сотрудников агенту не передают.
Задание, которое можно проверить
Предложенный порядок работы редакции, 8 октября 2026.
Порядок разобран в уроке «Одиннадцать шагов одной задачи». Матрицу и проверки сохраняют рядом с кодом. Они ловят возврат лишнего доступа при следующей правке.
5. Приёмка подтверждает и разрешение, и запрет.
Разрешённые операции должны работать. Менеджер меняет свою заявку, редактор сохраняет черновик. Если сервер запрещает всё, нужная работа тоже не сделана.
Запреты проверяют прямым запросом. Менеджер запрашивает чужую заявку, редактор пытается назначить роль. Такие сценарии описаны в руководстве OWASP WSTG.
Отказ подтверждают результатом. Надпись «доступ запрещён» бесполезна, если запись уже изменилась. В протоколе остаются ответ сервера и состояние после запроса.
Пример протокола сдачи ролей
Пример редакции на основе WSTG; строка отзыва доступа должна быть согласована как требование проекта. Проверено 8 октября 2026.
Отзыв прав проверяют при открытой вкладке. Если сессия хранит старое разрешение, одной смены роли мало. В приёмку включают запрос из прежней сессии.
6. Заказать можно роли в действующей админке с приёмкой.
Заказ описывают матрицей и сценариями для действующей админки. Разработку новой модели безопасности всей компании обсуждают отдельной задачей.
В подписке «Один проект» месяц стоит 250 000 ₽ на 8 октября 2026. Согласованные роли с проверками можно заказать для действующей админки. Объём обсуждают до старта.
Код идёт в ваш репозиторий. Инженер ведёт машину агентов: в работе одна задача, остальные в очереди. Пауза возможна в любой месяц.
Что и как мы проверяли
| Факт | Что известно | Проверено |
|---|---|---|
| Роли в сервисах | Официальные справки ЮKassa и Яндекс Бизнес, блог Solar. Сверяли полномочия, а не названия ролей. Правила этих сервисов не перенесены в нашу матрицу как готовая политика компании | 2026-10-08 |
| Сервер и приёмка | OWASP Authorization Cheat Sheet и WSTG v4.2. Проверены рекомендации о серверном контроле и сценариях доступа чужой роли и чужого пользователя. Таблицы задания и приёмки составлены редакцией | 2026-10-08 |
| Истории админки | Первичные записи журналов от 7 и 13 июля 2026; введение серверного гейта дополнительно подтверждено историей кода от 7 июля. Это опыт собственной машины на vibecoding.ru, клиентского внедрения этих ролей нет | 2026-10-08 |
| Цена подписки | Живая страница /services: «Один проект», 250 000 ₽ в месяц, один поток работы. Это цена месяца подписки, не фиксированная цена внедрения ролей. Срок такой правки не измерен | 2026-10-08 |
Выбрать задачу поможет следующий шаг для руководителя. На обсуждение принесите матрицу и операцию, доступную лишней роли.
7. Частые вопросы
Чем роль отличается от права?+
Право разрешает действие на определённых данных. Роль объединяет такие права. Редактору можно дать сохранение черновика и отдельно разрешить публикацию после согласования.
Нужен ли общий пароль для всей команды?+
Для разделения действий нужны отдельные учётные записи. С общим входом сервер видит одну личность и не различает сотрудников по ролям.
Что делать, если сотрудник совмещает роли?+
Согласовать сочетание и проверить итоговые полномочия. Два названия ролей не должны случайно разрешить сотруднику назначать самому себе дополнительный доступ.
Нужно ли создавать собственную систему ролей с нуля?+
Сначала проверить механизм действующего сайта. Если он уже связывает пользователя, операцию и объект, агентам поручают доработку этого механизма.
У вас есть клиентский кейс такого внедрения?+
Нет. В статье использованы поломки собственной админки vibecoding.ru, официальные рекомендации и предложенные примеры задания и приёмки.
Источники
- Solar: роли пользователей, виды и управление — официальный сайт
- ЮKassa: роли пользователей в личном кабинете — официальная справка
- Яндекс Бизнес: роли пользователей — официальная справка
- OWASP: Authorization Cheat Sheet — рекомендации по безопасности
- OWASP WSTG v4.2: Testing for Bypassing Authorization Schema — руководство по проверке
- vibecoding.ru: открытые следы работы машины — наш публичный экран
- vibecoding.ru: подписка на агентную разработку — наши условия работы
Запомнить
1. Опишите роль через действия и данные: свои заявки отличаются от всех заявок.
2. Заказывайте серверные запреты вместе с интерфейсом. Скрытая кнопка их не заменяет.
3. Передайте агентам утверждённую матрицу и тестовые данные.
4. Принимайте и разрешённые, и запрещённые операции по результату на сервере.
5. Сохраните проверки рядом с кодом и повторяйте их после изменения ролей.