IMetabasePolicy.RestrictUserDeletion

Синтаксис

RestrictUserDeletion: Boolean;

RestrictUserDeletion: System.Boolean;

Описание

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

Комментарии

Свойство актуально для использования при разделении ролей между администратором информационной безопасности (АИБ) и прикладным администратором (ПА).

По умолчанию свойство принимает значение False. При установке значения True прикладной администратор не сможет удалить пользователя, который обладает какими-либо правами доступа на объекты репозитория. При попытке удаления будет выдано соответствующее сообщение. Для удаления такого пользователя потребуется снятие всех имеющихся прав доступа.

Для изменения значения свойства пользователь, осуществляющий настройку, должен обладать привилегией «Изменение метки безопасности и списка контроля доступа любого объекта».

Пример

Для выполнения примера актируйте режим разделения ролей между АИБ и ПА в менеджере безопасности.

Добавьте ссылки на системные сборки: Metabase, ForeSystem (для примера на Fore.NET).

Sub UserProc;
Var 
    MB: IMetabase;
    MS: IMetabaseSecurity;
    Policy: IMetabasePolicy;
    Lic: Object;
Begin
    MB := MetabaseClass.Active;
    
// Получим лицензию для возможности работы с менеджером безопасности
    Lic := MB.RequestLicense(UiLicenseFeatureType.Adm);
    MS := MB.Security;
    Policy := MS.Policy;
    
// Запретим удаление пользователя прикладному администратору
    Policy.RestrictUserDeletion := True;
    
// Сохраним изменения
    MS.Apply;
    
// Освободим лицензию
    Lic := Null;
End Sub UserProc;

Imports Prognoz.Platform.Interop.Metabase;
Imports Prognoz.Platform.Interop.ForeSystem;

Public Shared Sub Main(Params: StartParams);
Var 
    MB: IMetabase;
    MS: IMetabaseSecurity;
    Policy: IMetabasePolicy;
    Lic: Object;
Begin
    MB := Params.Metabase;
    
// Получим лицензию для возможности работы с менеджером безопасности
    Lic := MB.RequestLicense(UiLicenseFeatureType.lftAdm);
    MS := MB.Security;
    Policy := MS.Policy;
    
// Запретим удаление пользователя прикладному администратору
    Policy.RestrictUserDeletion := True;
    
// Сохраним изменения
    MS.Apply();
    
// Освободим лицензию
    Lic := Null;
End Sub;

После выполнения примера при попытке ПА удалить пользователя, который обладает какими-либо правами доступа на объекты репозитория, будет выдано соответствующее сообщение.

См. также:

IMetabasePolicy