Operation(Index: Integer): Integer;
Index. Индекс позиции определяемой операции. Количество позиций определяется свойством OperationCount.
Свойство Operation определяет операции, информация по которым будет отображаться в протоколе доступа.
Значения операций могут совпадать, поэтому для определения однозначности операции обязательно следует задавать класс объекта, для которого данные операции будут отображаться в протоколе доступа.
Для указания операции необходимо использовать значения перечислимого типа MetabaseObjectPredefinedRights. В этом перечислении содержатся основные и дополнительные операции, на которые можно раздавать права и вести аудит доступа. Для определенных классов объектов доступны специфические операции. Для использования специфических операций, в зависимости от класса объекта, можно использовать значения следующих перечислений:
AuditLogSpecificRights - специфические операции, доступные для протокола доступа.
CalculatedCubeSpecificRights - специфические операции, доступные для вычисляемых кубов.
CubeLoaderSpecificRights - специфические операции, доступные для загрузчика данных в куб.
CubeSpecificRights - специфические операции, доступные для различных видов кубов.
CustomObjectSpecificRights - специфические операции, доступные для объектов пользовательских классов.
DataBaseSpecificRights - специфические операции, доступные для объекта репозитория - База данных.
DictionarySpecificRights - специфические операции, доступные для объектов репозитория - Справочник НСИ и Составной справочник НСИ.
MDCalcSpecificRights - специфические операции, доступные для объекта репозитория - Многомерный расчет на сервере БД.
ProblemSpecificRights - специфические операции, доступные для объекта контейнера моделирования - Задача моделирования.
ProcedureSpecificRights - специфические операции, доступные для объекта репозитория - Процедура.
ScenarioDimensionSpecificRights - специфические операции, доступные для объекта репозитория - Сценарий моделирования.
ScheduledTaskSpecificRights - специфические операции, доступные для задач, создаваемых в контейнере запланированных задач.
SecuritySpecificRights - специфические операции, доступные для политики безопасности.
TableSpecificRights - специфические операции, доступные для следующих объектов репозитория - Таблица, Представление, Журнал, Присоединенная таблица.
UpdateObjectSpecificRights - специфические операции, доступные для объекта репозитория - Обновление.
ValidationSpecificRights - специфические операции, доступные для объекта репозитория - Правило валидации и Группа валидаций.
Основные, дополнительные и специфические операции, доступные для определенных типов объектов, представлены в разделе Типы событий.
Sub UserProc;
Var
Mb: IMetabase;
Log: IAuditLog;
Fil: IAuditFilter;
Con: IAuditFilterCondition;
AL: IAuditLogons;
AO: IAuditOperations;
Begin
Mb := MetabaseClass.Active;
Log := Mb.Security.OpenAuditLog;
Fil := Log.Filter;
Fil.Clear;
Con := Fil.Add;
Con.MinDate := DateTime.Parse("9.06.2008 00:00:00");
Con.OperationCount := 2;
Con.Operation(0) := MetabaseObjectPredefinedRights.Create_;
Con.OperationClass(0) := MetabaseObjectClass.KE_CLASS_METABASEUPDATEOBJECT;
Con.Operation(1) := MetabaseObjectPredefinedRights.Delete Or MetabaseObjectPredefinedRights.Create_;
Con.OperationClass(1) := MetabaseObjectClass.KE_CLASS_FOLDER;
AL := Log.OpenLogons(False);
While Not AL.Eof Do
Debug.WriteLine(AL.UserName + " " + AL.UserOS + " " + ((AL.Stamp As Variant) As DateTime).ToString);
Debug.Indent;
AO := Log.OpenOperations(AL.Session);
While Not AO.Eof Do
Debug.WriteLine("Операция: " + AO.Name + "; Объект:" + AO.ObjectId + "; Номер операции:" + AO.Operation.ToString);
AO.Next;
End While;
AL.Next;
Debug.Unindent;
End While;
End Sub UserProc;
После выполнения примера в консоль будут выведены все действия с определенными классами объектов по заданным операциям, начиная с конкретной даты (9.06.2008).
См. также: