IMetabasePolicy.ESKMode

Синтаксис Fore

ESKMode: Boolean;

Синтаксис Fore.NET

ESKMode: Boolean;

Описание

Свойство ESKMode определяет возможность использования режима совместимости для работы с доменными группами в СУБД Oracle.

Комментарии

Свойство актуально только при работе в репозитории на базе СУБД Oracle. По умолчанию свойству установлено значение False, при этом в менеджере безопасности из домена можно добавить только пользователей. При установке значения True будет включен режим совместимости, позволяющий в менеджере безопасности добавлять доменные группы и особым образом настраивать права доступа для них. Более подробно о раздаче прав читайте в подразделе «Доменная авторизация при работе с сервером Oracle». Необходимым требованием для включения режима совместимости также является включение распределения ролей между администратором информационной безопасности и прикладным администратором и использование метода разграничения доступа по уровням.

Пример Fore

Sub UserProc;
Var
    MB: IMetabase;
    Security: IMetabaseSecurity;
    Police: IMetabasePolicy;
    MandatoryAccess: IMetabaseMandatoryAccess;
    Category: ISecurityCategory;
Begin
    MB := MetabaseClass.Active;
    Security := MB.Security;
    Police := Security.Policy;
    //Режим совместимости
    Police.ESKMode := True;
    //Включение режима распределения ролей между администратором информационной безопасности и прикладным администратором
    Police.PromoteToIsaMode(Security.ResolveName(MB.Id + "_ISA"As IMetabaseUser);
    MandatoryAccess := Police.MandatoryAccess;
    //Разграничение доступа по уровням
    MandatoryAccess.IsSimple := True;
    Category := MandatoryAccess.Category(0);
    Category.AddLevel(1"Guest");
    Category.AddLevel(2"AllAccess");
    //Применение политики безопасности
    Security.Apply;
End Sub UserProc;

При выполнении примера будут выполнены следующие изменения в политике безопасности текущего репозитория:

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.

Imports Prognoz.Platform.Interop.Metabase;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    Security: IMetabaseSecurity;
    Police: IMetabasePolicy;
    MandatoryAccess: IMetabaseMandatoryAccess;
    Category: ISecurityCategory;
Begin
    MB := Params.Metabase;
    Security := MB.Security;
    Police := Security.Policy;
    //Режим совместимости
    Police.ESKMode := True;
    //Включение режима распределения ролей между администратором информационной безопасности и прикладным администратором
    Police.PromoteToIsaMode((Security.ResolveName(MB.Id + "_ISA"As IMetabaseUser), IsaModePromoteOptions.ismopropNone);
    MandatoryAccess := Police.MandatoryAccess;
    //Разграничение доступа по уровням
    MandatoryAccess.IsSimple := True;
    Category := MandatoryAccess.Category[0];
    Category.AddLevel(1"Guest");
    Category.AddLevel(2"AllAccess");
    //Применение политики безопасности
    Security.Apply();
End Sub;

См. также:

IMetabasePolicy