Аудит и трассировка прав доступа#

Аудит прав доступа используется для просмотра истории изменений ролей, профилей и пользователей. Трассировка прав доступа используется для анализа того, какие проверки прав выполнялись в системе в ходе конкретной пользовательской сессии.

Аудит прав доступа#

Историю изменений прав доступа можно посмотреть в разделе Аудит прав доступа из меню Аудит.

Примечание

Для включения аудита выполните операцию Включить аудит для структур прав доступа в этом же меню.

Для анализа выберите:

  • Вид объектаПользователь, Профиль или Роль;

  • Объект;

  • при необходимости — период времени.

Состав отображаемых изменений зависит от выбранного вида объекта.

Пользователи#

Для пользователей отображаются изменения, связанные с выдачей и отзывом профилей:

  • профили, выданные пользователю;

  • профили, отозванные у пользователя;

  • дата изменения;

  • пользователь, выполнивший изменение.

Профили#

Для профилей отображаются изменения состава ролей и назначения профиля пользователям:

  • роли, включённые в профиль;

  • роли, удалённые из профиля;

  • пользователи, которым был выдан профиль;

  • пользователи, у которых профиль был отозван.

Примечание

В списке изменений для Пользователей и Профилей доступна операция Изменения по объекту, позволяющая перейти к аудиту другого выделенного объекта.

Роли#

Список изменений для ролей состоит из двух выборок:

  • Дерево администрируемых объектов — объекты или элементы, по которым для данной роли были совершены изменения;

  • Список привилегий конкретного администрируемого объекта — привилегии, которые изменялись для данной роли.

Левая часть интерфейса повторяет древовидную структуру настройки прав роли. Правая часть показывает изменения по привилегиям и переходам состояний для выбранного администрируемого объекта или его элемента.

Состав списка привилегий:

  1. Имя администрируемого объекта или элемента.

  2. Тип привилегии:

    • изменение атрибута, например при установке признака Не распространяются настройки администрирования;

    • объектная привилегия;

    • элементарная привилегия;

    • группа элементарных привилегий, например Редактирование;

    • переход состояния.

  3. Системное имя привилегии.

  4. Наименование привилегии.

  5. Пользователь, выполнивший изменение.

  6. Дата изменения.

  7. Системное имя атрибута.

  8. Наименование атрибута.

  9. Старое значение.

  10. Новое значение.

Примечание

Для списка привилегий доступен фильтр С входящими. При выборе администрируемого объекта, а не элемента, он позволяет отображать изменения не только самого объекта, но и входящих в него элементов.

Трассировка прав доступа#

Запуск трассировки#

  1. Перейдите в раздел Сервис > Инструменты.

  2. Выберите операцию Начать трассировку прав.

  3. Выполните необходимые действия в системе — в этот момент система будет отслеживать проверки прав.

  4. Для завершения выберите операцию Закончить трассировку прав в том же меню.

Отчёт сессии трассировки#

Отчёт Сессии трассировки прав пользователей доступен в приложении Администратор, меню Отчеты.

Отчёт отображает список сессий трассировки. При открытии карточки сессии в детализации выводится подробная информация по проверкам прав, вызванным в ходе этой сессии.

Очистка записей#

Сессии сохраняются в таблицу Btk_AcTraceSession, а детализация — в Btk_AcTraceJournal.

По умолчанию зарегистрировано задание очистки для класса Btk_AcTraceSession, удаляющее записи старше 30 дней.

Реализация трассировки#

При запуске трассировки:

  • в параметрах рабочей сессии сохраняется параметр активности трассировки;

  • в логирующей транзакции создаётся запись в Btk_AcTraceSession;

  • сохраняется идентификатор сессии трассировки;

  • для открытых выборок подключается подписка на события;

  • при открытии новой выборки подписка также подключается в onLoadAdminMeta.

При действиях пользователя:

  • на методах проверки прав, при вызове операции или сеттера на администрируемых выборках создаётся запись в Btk_AcTraceJournal.

При завершении трассировки:

  • вызывается коммит логирующих транзакций со всех сессий выборок;

  • в Btk_AcTraceSession сохраняется дата завершения;

  • отключается подписка на события;

  • из параметров рабочей сессии удаляются параметры активности и идентификатор сессии.