Урок 1 из 4 · 30 мин

Администрирование: пользователи, права, ПДн, журналы, ключи и вебхуки

Права пользователя = роль-шаблон + отличия, отмеченные администратором. Матрица «вид объекта × действие» задаёт охват «нет / свои / все», отдельно идут общие права, включая piiview — полный показ персональных данных. Что поменялось в данных — История правок, кто что делал — Журнал действий. Для внешних систем администратор выдаёт ключи встраивания карты и вебхуки, пользователи сами выдают себе ключи API v2, ArcGIS и MCP. Поверх всего действуют флаги сервера: без MUTATIONSENABLED данные не меняет никто.

Администрирование

Кратко. Права пользователя = роль-шаблон + отличия, отмеченные администратором. Матрица «вид объекта × действие» задаёт охват «нет / свои / все», отдельно идут общие права, включая pii_view — полный показ персональных данных. Что поменялось в данных — История правок, кто что делал — Журнал действий. Для внешних систем администратор выдаёт ключи встраивания карты и вебхуки, пользователи сами выдают себе ключи API v2, ArcGIS и MCP. Поверх всего действуют флаги сервера: без MUTATIONS_ENABLED данные не меняет никто.

Зачем это

Пользователю этот урок нужен, чтобы понимать, почему кнопки нет или запись отклонена. Администратору — чтобы выдать ровно те права, что нужны для работы: режимщик считает, но не двигает трубы; техник ведёт журналы, но не видит телефонов жителей. И чтобы по истории всегда можно было найти, кто и что изменил.

Роли и матрица прав

Роль Объекты сети Общие права
Просмотр ничего выгрузки
Режимщик свойства потребителей, источников, оборудования, режима узла — все расчёты, сохранение расчётов, выгрузки
Оператор сети создание — все; свойства, перемещение, удаление — только свои выгрузки
Редактор свойства, создание, перемещение — все; удаление — только свои расчёты, сохранение, выгрузки, импорт, журналы, справочники, ПДн
Администратор всё — все все права

Матрица: строки — участки, узлы, потребители, источники и насосные, оборудование, режим узла; столбцы — свойства, создание, перемещение и изломы, удаление. «Создание» бывает только «нет» или «все». В базе пользователей хранятся только отличия от шаблона; смена шаблона сбрасывает галочки к новой роли.

«Только свои» — объекты, созданные этим пользователем в вебе (object_authorship). Строка карточки своя, если свой её участок или узел. Объекты десктопа ничьи: с охватом «свои» их не править и не удалять.

Общие права: запуск расчётов; сохранение и сравнение расчётов; выгрузки и отчёты; импорт сети; журналы (ремонты, ПТС, акты, ТУ, привязки); справочники и шаблоны карточек; просмотр журнала действий; управление пользователями; персональные данные полностью. Некоторые окна требуют роль, а не право: «Формы обходов», «Встраиваемые карты», «Вебхуки», «PMTiles», загрузка социальных объектов, применение импорта сети — только «Администратор».

Сервер проверяет права на каждом запросе, интерфейс лишь прячет кнопки. Изменения прав и блокировка действуют на открытые сессии не позже чем через 30 секунд.

Окно пользователей: роль, города и права

Персональные данные

ФИО физических лиц, телефоны, e-mail, ИИН, лицевые счета и договоры потребителей полностью видит только право pii_view (по умолчанию у ролей «Редактор» и «Администратор»). Остальным API отдаёт их маской. Данные в базе не меняются, маскируется ответ:

телефон  8-700-000-00-88        → *-***-***-**-88
договор  12345                  → *2345
владелец ИП Примерова Анна Сергеевна → ИП П*** А. С.      (названия организаций не меняются)

Где маскирования нет: выгрузки Excel, Word, CSV, GeoPackage (кроме отчёта сверки АЛСЕКО), слои и тайлы GeoServer и martin, большие JSON-ответы (больше 16 МБ). ФИО сотрудников — начальников участков, ответственных, исполнителей нарядов — рабочие данные и не маскируются. Выдавая право «Выгрузки и отчёты», помните: файл уходит без маски.

Две истории

История правок Журнал действий
Отвечает на вопрос что изменилось в данных: поле, было, стало кто, когда, что делал и чем кончилось
Источник audit_log базы города: триггеры (в том числе правки десктопа) и операции API activity_log базы пользователей, все города
Кому доступна любой роли право «Просмотр журнала действий»
Что в ней INSERT, UPDATE, DELETE, UNDO, SPLIT, GROUP_SET, APPROVE… входы и неудачные входы, правки, расчёты, выгрузки, ключи, вызовы ИИ с токенами

Ключи и внешние системы

Что Кто выдаёт Срок по умолчанию Как закрыть
Ключ API v2 пользователь себе 365 дней смена пароля, блокировка, удаление
Ключ ArcGIS (FeatureServer) пользователь себе 90 дней то же
Токен MCP пользователь себе 30 дней то же
Ключ встраивания карты (tge_…) администратор 1–3650 дней или бессрочно «Отозвать» в списке

Ключ пользователя действует с его правами. Вебхук сообщает внешней системе (ERP, биллинг, CRM), что случилось событие: новый дефект, наряд и смена его статуса, отключение, тревоги телеметрии и баланса — всего 11 событий. Запрос подписан секретом подписки, подробности система берёт из API v2. Подписка, которая три дня не принимает события, выключается сама. PMTiles — запечённые архивы тайлов больших слоёв (здания): карта быстрее, база свободнее.

Как сделать в ТГИД

Задания

1. Техник журналов

Нужно: сотрудник ведёт журналы, правит свойства только своих участков и не выгружает файлы. Как настроить?

Ответ

Роль «Просмотр», в «Правах»: «Участки → Свойства: свои», отметить «Журналы», снять «Выгрузки и отчёты». В заголовке окна — «отличий от роли: 3». ПДн он увидит замаскированными: права pii_view у шаблона «Просмотр» нет.

2. Последний администратор

Единственный администратор пытается сменить себе роль на «Редактор». Что ответит сервер и почему?

Ответ

Откажет: нельзя снять с себя право «Управление пользователями», и нельзя лишить его последнего активного администратора, пока не настроена мастер-учётка. Это защита от потери доступа к системе.

3. Утечка через выгрузку

Подрядчику с ролью «Просмотр» выгрузили ведомость «Технические условия». Что он увидит в заявителях и как этого избежать?

Ответ

Полные имена: файлы Excel маскирование не проходят. Снять у такого пользователя право «Выгрузки и отчёты» (у шаблона «Просмотр» оно есть по умолчанию) или готовить файл для передачи отдельно, удалив колонки с ПДн.

Проверьте себя

Решено 0 из 6
1Режимщик не может сменить диаметр участка. Почему?
2Оператору сети дали «Удаление участков: только свои». Может ли он удалить участок, пришедший из десктопа?
3Пользователь с ролью «Просмотр» открыл реестр ТУ. Как он видит заявителя — частное лицо?
4Где увидеть, кто изменил длину участка, а где — кто вчера неудачно входил в систему?
5Сотрудник уволился. Что сделать, чтобы закрыть ему и вкладку браузера, и ключи API v2, ArcGIS и MCP?
6Ключ встраивания карты виден в коде сайта. Почему это не опасно?