FilterClass(ClassID: Integer): Integer;
ClassId. Числовой идентификатор класса объекта.
Свойство FilterClass определяет маску операций, для которых будет вестись аудит доступа.
Для указания класса объекта в параметре ClassId используйте значения перечислимого типа MetabaseObjectClass.
Аудит доступа по указанным операциям будет вестись для всех объектов указанного класса. Аудит операций, включенных для классов, имеет больший приоритет, чем аудит операций, отключенных для конкретного объекта. Для настройки доступа аудита операций для конкретного объекта используется метод AddAce и свойство AccessMask.
Для формирования и проверки значения маски необходимо использовать значения перечислимого типа MetabaseObjectPredefinedRights. В этом перечислении содержатся основные и дополнительные операции, на которые можно раздавать права и вести аудит доступа. Для определенных классов объектов доступны специфические операции. В зависимости от класса объекта, в маске можно использовать значения следующих перечислений:
AuditLogSpecificRights - специфические операции, доступные для протокола доступа.
CalculatedCubeSpecificRights - специфические операции, доступные для вычисляемых кубов.
CubeLoaderSpecificRights - специфические операции, доступные для загрузчика данных в куб.
CubeSpecificRights - специфические операции, доступные для различных видов кубов.
CustomObjectSpecificRights - специфические операции, доступные для объектов пользовательских классов.
DataBaseSpecificRights - специфические операции, доступные для объекта репозитория - База данных.
DictionarySpecificRights - специфические операции, доступные для объектов репозитория: Справочник НСИ и Составной справочник НСИ.
MDCalcSpecificRights - специфические операции, доступные для объекта репозитория - Многомерный расчет на сервере БД.
ProblemSpecificRights - специфические операции, доступные для объекта контейнера моделирования - Задача моделирования.
ProcedureSpecificRights - специфические операции, доступные для объекта репозитория - Процедура.
ScenarioDimensionSpecificRights - специфические операции, доступные для объекта репозитория - Сценарий моделирования.
ScheduledTaskSpecificRights - специфические операции, доступные для задач, создаваемых в контейнере запланированных задач.
SecuritySpecificRights - специфические операции, доступные для политики безопасности.
TableSpecificRights - специфические операции, доступные для следующих объектов репозитория: Таблица, Представление, Журнал, Присоединенная таблица.
UpdateObjectSpecificRights - специфические операции, доступные для объекта репозитория - Обновление.
ValidationSpecificRights - специфические операции, доступные для объектов репозитория: Правило валидации и Группа валидаций.
Основные, дополнительные и специфические операции, доступные для определенных типов объектов, представлены в разделе «Протоколируемые операции».
Для разбора значения маски необходимо реализовать пользовательскую функцию, которая позволит сопоставить отдельные биты маски соответствующим значениям перечислений. Пример работы с маской доступа представлен в разделе «Работа с маской доступа».
Для выполнения примера добавьте ссылку на системную сборку Metabase.
Sub UserProc;
Var
MB: IMetabase;
MS: IMetabaseSecurity;
AuditPolicy: IMetabaseAuditPolicy;
Mask: Integer;
Lic: Object;
Begin
MB := MetabaseClass.Active;
// Получим лицензию для возможности работы с менеджером безопасности
Lic := MB.RequestLicense(UiLicenseFeatureType.Adm);
MS := MB.Security;
// Изменим аудит типа объектов «Ярлык»
AuditPolicy := MS.Policy.AuditPolicy;
AuditPolicy.FilterClass(MetabaseObjectClass.KE_CLASS_SHORTCUT_AUDIT) := MetabaseObjectPredefinedRights.Write;
// Сохраним изменения
MS.Apply;
// Освободим лицензию
Lic := Null;
End Sub UserProc;
После выполнения примера будет включен аудит типа объектов «Ярлык» только на изменение.
См. также: