Проверка и управление правами
В этом разделе описаны инструменты для назначения прав доступа пользователям и группам, просмотра эффективных прав и работы с миграциями прав между версиями приложений.
Назначение прав пользователю
Права доступа можно назначать как непосредственно конкретному пользователю, так и через группы, в которых состоит пользователь. Прямые права пользователя имеют приоритет над правами, полученными через группы.
Назначение прямых прав пользователю
- Откройте раздел Субъекты доступа → Пользователи
- Выберите нужного пользователя из списка
- Перейдите на вкладку Правила доступа
- Нажмите кнопку Добавить правило
- В открывшемся окне настройте правило доступа:
- Объекты (левая панель) — выберите объекты, к которым применяется правило
- Действия (правая панель) — выберите действия, которые разрешаются или запрещаются
- Нажмите кнопку Сохранить
На вкладке "Правила доступа" отображаются только правила, примененные непосредственно к пользователю. Чтобы увидеть полную картину прав с учетом групп, используйте вкладку "Итоговые разрешения".
Структура правила доступа
Каждое правило доступа состоит из двух частей:
1. Объекты безопасности
Объекты представляют собой иерархическую структуру ресурсов системы. Для каждого объекта можно настроить:
- Только этот объект (зеленая галочка) — права применяются только к выбранному объекту
- Этот и все дочерние объекты (синяя звездочка) — права распространяются на объект и все его дочерние элементы
2. Действия безопасности
Действия определяют, что можно делать с объектами. Для каждого действия можно задать:
- Разрешено (зеленая галочка) — действие разрешается
- Запрещено (красный крестик) — действие запрещается
Правила запрета (deny) имеют приоритет над правилами разрешения (allow). Если для пользователя установлено запретительное правило, то разрешающие правила не смогут его переопределить.
Назначение прав группе
Права, назначенные группе, автоматически получают все члены этой группы.
Как назначить права группе
- Откройте раздел Субъекты доступа → Группы
- Выберите нужную группу из списка
- Перейдите на вкладку Правила доступа
- Нажмите кнопку Добавить правило
- Настройте объекты и действия аналогично правилам для пользователя
- Нажмите кнопку Сохранить
Специальная группа "Все"
Группа "Все" — это системная группа, в которую автоматически входят все пользователи системы. Права, назначенные этой группе, получают абсолютно все пользователи.
- Для группы "Все" можно создавать только разрешающие правила
- Запретительные правила для этой группы не допускаются
- Это сделано для предотвращения блокировки доступа для всех пользователей системы
Просмотр эффективных прав
Эффективные права — это итоговый набор разрешений, который получает пользователь с учетом:
- Прямых прав пользователя
- Прав всех групп, в которых состоит пользователь
- Прав специальной группы "Все"
- Правил наследования (распространения на дочерние объекты)
- Приоритета запретов над разрешениями
Просмотр эффективных прав пользователя
- Откройте карточку пользователя
- Перейдите на вкладку Итоговые разрешения
- Изучите две доступные вкладки:
- Обычный вид — удобное отображение прав с информацией об источниках
- Для разработчиков — технический формат прав для интеграции приложений
Обычный вид эффективных прав
В обычном виде права отображаются в виде таблицы с тремя колонками:
| Колонка | Описание |
|---|---|
| Объект | Путь к объекту в иерархии. Может содержать метку "Наследование", если права распространяются на дочерние объекты. |
| Действия | Список действий с отметками: ✅ разрешено или ❌ запрещено |
| Источник | Откуда получено право: "Прямое право" (от пользователя) или "Группа: название" (из группы) |
Когда пользователь получает одинаковые права из нескольких источников (например, от разных групп), в таблице отображается один из источников. Приоритет имеют прямые права пользователя.
Вид для разработчиков
На вкладке "Для разработчиков" права отображаются в формате, который используют приложения при интеграции с IDENTYX:
- Права сгруппированы по приложениям
- Каждое право имеет формат:
объект:действие:разрешение - Разрешение может быть
allow(разрешено) илиdeny(запрещено) - Права с наследованием содержат символ
/*в пути объекта
Вы можете скопировать список прав для приложения с помощью кнопки Скопировать.
Просмотр эффективных прав группы
- Откройте карточку группы
- Перейдите на вкладку Итоговые правила
- Изучите права, которые получают члены группы
На вкладке "Итоговые правила" для группы отображаются только права самой группы, без учета личных прав конкретных пользователей. Чтобы увидеть полную картину прав пользователя, просмотрите эффективные права в его карточке.
Система приоритетов прав
При вычислении эффективных прав IDENTYX применяет следующую систему приоритетов:
- Правила запрета имеют высший приоритет
Если где-то установлено правило
deny, оно блокирует все правилаallowдля этого же объекта и действия. - Прямые права пользователя
Правила, назначенные непосредственно пользователю, учитываются первыми.
- Права из групп
Если у пользователя нет прямого правила, применяются права из групп.
- Права специальной группы "Все"
Применяются ко всем пользователям, если нет более специфичных правил.
Если пользователь входит в группу "Менеджеры", где ему разрешено удаление документов, но при этом в группе "Стажеры" (в которой он тоже состоит) удаление запрещено — пользователь не сможет удалять документы, так как запрет имеет приоритет.
Ограниченное администрирование
Пользователь с правом /iam/local-admin на конкретные объекты может управлять правами других пользователей, но с ограничениями:
- Может выдавать права только на те объекты, на которые сам имеет право
/iam/local-admin - Может выдавать только те действия, на которые у него самого есть права
- Не может выдавать права администрирования, если сам не является суперадминистратором
Администратор организации "Отдел продаж" может назначать права только на объекты внутри этой организации. Он не сможет выдать права на объекты других организаций, даже если они существуют в системе.
Суперадминистратор vs Локальный администратор
| Возможность | Суперадминистратор | Локальный администратор |
|---|---|---|
| Доступ ко всем объектам | ✅ Да | ❌ Только к назначенным |
| Выдача любых прав | ✅ Да | ❌ Только тех, что есть у него |
| Управление всеми пользователями | ✅ Да | ❌ Только в своих организациях |
| Управление системными настройками | ✅ Да | ❌ Нет |
| Создание объектов и действий | ✅ Да | ❌ Нет |
Миграция прав между версиями
IDENTYX поддерживает автоматическую миграцию прав при обновлении приложений. Это необходимо, когда в новой версии приложения изменяется структура объектов или действий безопасности.
Зачем нужна миграция прав
Миграция прав решает следующие задачи:
- Автоматическое обновление правил доступа при изменении структуры прав в приложении
- Сохранение настроек безопасности пользователей после обновления
- Переименование или реорганизация действий безопасности
- Добавление новых прав пользователям, у которых были старые права
Типы миграционных операций
Система поддерживает следующие типы миграций:
1. Добавление действия
add_action_to_subjects_with_action — добавляет новое действие всем субъектам, у которых есть указанное исходное действие.
Если у пользователя было право /app/documents/view, миграция может автоматически добавить ему /app/documents/preview.
2. Замена действия
replace_action — заменяет одно действие другим, сохраняя разрешение (allow/deny).
Действие /app/users/edit переименовано в /app/users/modify. Миграция автоматически обновит все правила.
3. Удаление действия
remove_action — удаляет указанное действие из всех правил доступа.
4. Замена нескольких действий одним
replace_actions_with_one — объединяет несколько старых действий в одно новое.
Действия /app/reports/view, /app/reports/print и /app/reports/export объединяются в одно: /app/reports/access.
5. Замена действия несколькими
replace_action_with_many — разделяет одно действие на несколько новых.
Действие /app/admin разделяется на /app/admin/users, /app/admin/settings и /app/admin/logs.
Как работает миграция
- При импорте или обновлении приложения в IDENTYX передается файл конфигурации с описанием миграций
- Система проверяет, какие миграции уже были применены для этого приложения
- Новые миграции автоматически применяются к правилам доступа всех пользователей и групп
- Информация о примененных миграциях сохраняется, чтобы не применять их повторно
Миграции выполняются автоматически при импорте приложения. Администратору не нужно вручную обновлять права пользователей.
Безопасность миграций
- Каждая миграция имеет уникальный идентификатор и применяется только один раз
- Миграции выполняются в транзакции — в случае ошибки изменения откатываются
- Все миграции логируются в системном журнале
- Миграции не могут удалить критичные системные права
Лучшие практики управления правами
Назначайте права через группы, а не напрямую пользователям. Это упрощает управление и делает систему прав более прозрачной.
Используйте запретительные правила только когда это действительно необходимо. Чрезмерное использование deny усложняет понимание системы прав.
После назначения прав всегда проверяйте вкладку "Итоговые разрешения", чтобы убедиться, что пользователь получил именно те права, которые вы планировали.
Выдавайте пользователям только те права, которые им действительно необходимы для работы. Не назначайте избыточные права "на всякий случай".
При работе с иерархическими структурами используйте права с наследованием (символ звездочки), чтобы не создавать правила для каждого дочернего объекта.
Используйте понятные названия групп и правил. Например: "Менеджеры отдела продаж - полный доступ" вместо "Группа 1".
Решение проблем с правами
Пользователь не имеет доступа к ресурсу
- Откройте карточку пользователя
- Перейдите на вкладку Итоговые разрешения
- Найдите нужный объект и действие
- Проверьте:
- Есть ли разрешающее правило (allow)?
- Нет ли запретительного правила (deny)?
- Откуда получено право (источник)?
- Если права нет — добавьте правило напрямую пользователю или через группу
- Если есть запрет — найдите источник запрета и удалите или измените правило
Пользователь имеет доступ, которого не должно быть
- Проверьте эффективные права пользователя
- Обратите внимание на колонку Источник
- Если право получено из группы — проверьте членство пользователя в группах
- Если право получено из специальной группы "Все" — отредактируйте правила этой группы
- Добавьте запретительное правило (deny) для блокировки доступа, если нельзя удалить разрешающее
Локальный администратор не может выдать права
Если локальный администратор пытается назначить права и получает ошибку:
- Убедитесь, что у администратора есть право
/iam/local-adminна объект, права к которому он пытается выдать - Проверьте, что администратор сам обладает теми действиями, которые пытается выдать
- Локальные администраторы не могут выдавать права на системные объекты без специальных полномочий
Связанные разделы
- Обзор системы прав (RBAC) — общая информация о модели прав доступа
- Объекты и действия — структура объектов и действий безопасности
- Правила доступа (ACL) — подробнее о создании и управлении правилами
- Предустановленные роли — стандартные роли и права в системе
- Ограниченное администрирование — настройка локальных администраторов
- Локальные группы — управление группами пользователей
Переходите к разделу Обзор OIDC для изучения интеграции приложений через протокол OpenID Connect.