Открытие менеджера безопасности для указанного репозитория.
Параметры команды передаются в свойстве Data. Для работы команды в данном свойстве необходимо указать массив типа Variant, элементы которого содержат следующие значения:
Параметр | Описание |
Элемент 1: IUiSecManagerParams | Параметр, определяющий настройки отображения и возможности редактирования разделов. Содержит настройки репозитория, для которого необходимо открыть менеджер безопасности. |
Используется для открытия окна менеджера безопасности для какого-либо репозитория. Если в параметрах не указан репозиторий (значение свойства IUiSecManagerParams.Metabase равно Null), то результатом работы команды будет открытие менеджера безопасности без подключения к какому-либо репозиторию.
С помощью параметров можно скрывать разделы, открывать разделы в режиме чтения, запрещать сохранение политики, отключать элементы управления.
Настройки видимости и режима чтения производятся через свойства параметров отображения вкладок: IUISecManagerTabParams.ReadOnly и IUISecManagerTabParams.Visible.
Для выполнения примера предполагается наличие формы и расположенной на ней кнопки «Button1».
Подключите системные сборки: Metabase, Ui.
Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
Target: IUiCommandTarget;
Context: IUiCommandExecutionContext;
SecParams: IUiSecManagerParams;
Begin
Target := WinApplication.Instance.GetPluginTarget("Adm");
Context := Target.CreateExecutionContext;
SecParams := new UiSecManagerParams.Create;
SecParams.Metabase := MetabaseClass.Active; // 1. Задаем репозиторий
//Параметры
вкладок
SecParams.EnablePolicySave(False); // 2. Запрещаем сохранение политики
SecParams.Privilege.Visible := False; // 3. Прячем вкладки "Привилегии", "Мандатный доступ", "Классы объектов" и "Мониторинг нарушений защиты"
SecParams.Mandatory.Visible := False;
SecParams.Classes.Visible := False;
SecParams.SecurityWatch.Visible := False;
SecParams.Service.ReadOnly:= True;
// 4. Для вкладки "Сервис"
включаем режим «Только чтение»
SecParams.RepositoryMenuEnabled := False; // 5. Запрещаем команды в меню "Репозиторий" (кроме команд "Отключить" и "Выход")
SecParams.ServiceMenuEnabled := False; // 6. Запрещаем команды в меню "Сервис"
SecParams.Users.ObjectRightsEnabled := False; // 7. Для вкладки "Пользователи" запрещаем вызов диалога со свойствами объекта
//Вызов менеджера
безопасности
Context.Data := SecParams;
Target.Execute("OpenNavigator", Context);
End Sub Button1OnClick;
При нажатии на кнопку будет открыто окно менеджера безопасности с определенными настройками: часть разделов будет недоступна, изменение политики будет запрещено.
См. также: