[I128-2507] АРМ Администратор: управление правами выполняется через Security API


НАЧАЛО >> Оглавление >> Общее описание >> История изменений >> Что нового в проекте I128 >> Версия 2026.2.3 >> [I128-2507] АРМ Администратор: управление правами выполняется через Security API📄 Скачать в DOCX


Тип Версия Статус Приоритет Исполнитель
⚙️ Исправление ошибок 2026.2.3 🔘 Завершено Средний Ilya Mikhaylenko

Компоненты: ИРБИС 128. Модуль Admin - АРМ Администратор

Завершено: 28.06.2026 00:49

Проблема: В административных действиях права, наследование прав, SID корневого модуля и учетная запись администратора частично изменяются прямой записью поля 113. Это дублирует логику Security и повышает риск рассинхронизации при удалении, локализации и пересчете наследуемых прав.

Решение: АРМ Администратор переводит операции с правами на API Security: MaterializeRight(), DeleteLocalRights(), MakeRightsLocal(), SetRightsParenting(), RefreshParentRights(), MaterializeAuth(), EnsureRole() и EnsurePhysicalSid(). Дополнительно создание БД проверяет физическое существование базы и возвращает ошибку CreateDb, если провайдер не смог создать БД.

Технические подробности: В modules/Admin/Actions/SecAddProps.inc, SecDel.inc, SecMakeLocal.inc, SecToggleInheritance.inc и SecUpdateChildTree.inc ручная работа с правами в поле 113 заменяется на методы Security. В modules/Admin/*_call/EnsureConfig.inc создание/обновление учетной записи администратора переведено на MaterializeAuth() и EnsureRole(). В modules/Admin/*_call/EnsureRootModuleExists.inc SID root-модуля назначается через EnsurePhysicalSid(). В modules/Admin/Actions/CreateDb.inc добавлена проверка физического существования БД и обработка ошибки создания.

Документация: Изменения документации не требуются: административный пользовательский сценарий остается прежним, меняется внутренний способ применения прав и диагностика ошибки создания БД.

-

1. Связанные задачи

1.1. 🔗 blocks: I128-2487

[I128-2487] Security: служебное поле 113 создается без явного действия безопасности Статус: Завершено | Автор: Ilya Mikhaylenko