RemoveSubject(Subj: ISecuritySubject): Boolean;
RemoveSubject(Prognoz.Platform.Interop.Metabase.ISecuritySubject): System.Boolean;
Subj. Субъект безопасности, который необходимо удалить.
Метод RemoveSubject осуществляет удаление субъекта безопасности, передаваемого посредством параметра Subj.
Для выполнения примера добавьте ссылки на системные сборки: Metabase, ForeSystem (для примера на Fore.NET).
Sub UserProc;
Var
MB: IMetabase;
MS: IMetabaseSecurity;
SS: ISecuritySubject;
Lic: Object;
Begin
MB := MetabaseClass.Active;
// Получим лицензию для возможности работы с менеджером безопасности
Lic := MB.RequestLicense(UiLicenseFeatureType.Adm);
MS := MB.Security;
// Удалим группу пользователей
SS := MS.Groups.Item(MS.Groups.Count - 1);
MS.RemoveSubject(SS);
// Сохраним изменения
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;
SS: ISecuritySubject;
Lic: Object;
Begin
MB := Params.Metabase;
// Получим лицензию для возможности работы с менеджером безопасности
Lic := MB.RequestLicense(UiLicenseFeatureType.lftAdm);
MS := MB.Security;
// Удалим группу пользователей
SS := MS.Groups.Item[MS.Groups.Count - 1];
MS.RemoveSubject(SS);
// Сохраним изменения
MS.Apply();
// Освободим лицензию
Lic := Null;
End Sub;
После выполнения примера будет удалена последняя группа пользователей, созданная в менеджере безопасности текущего репозитория.
См. также: