AddMember(Subject: ISecuritySubject);
Subject. Субъект безопасности, который необходимо добавить.
Метод AddMember добавляет субъект безопасности, передаваемый в качестве параметра Subject, в данную группу пользователей.
Для выполнения примера добавьте ссылки на системные сборки: Metabase, ForeSystem (для примера на Fore.NET).
Sub UserProc;
Var
MB: IMetabase;
MS: IMetabaseSecurity;
Group: IMetabaseGroup;
User: IMetabaseUser;
Data: ISecurityPackageUserData;
PS: IPasswordCredentials;
Lic: Object;
Begin
MB := MetabaseClass.Active;
// Получим лицензию для возможности работы с менеджером безопасности
Lic := MB.RequestLicense(UiLicenseFeatureType.Adm);
MS := MB.Security;
Group := MS.Groups.Item(0);
// Зададим параметры нового пользователя
User := MS.AddUser("USER_NEW");
User.FullName := "Первый пользователь";
User.Description := "Новый пользователь платформы";
Data := User.PackageData;
PS := Data.Credentials As IPasswordCredentials;
PS.Password := "Password";
User.MustChangePasswordAtNextLogon := True;
// Добавим нового пользователя в первую группу
Group.AddMember(User);
// Сохраним изменения
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;
Group: IMetabaseGroup;
User: IMetabaseUser;
Data: ISecurityPackageUserData;
PS: IPasswordCredentials;
Lic: Object;
Begin
MB := Params.Metabase;
// Получим лицензию для возможности работы с менеджером безопасности
Lic := MB.RequestLicense(UiLicenseFeatureType.lftAdm);
MS := MB.Security;
Group := MS.Groups.Item[0];
// Зададим параметры нового пользователя
User := MS.AddUser("USER_NEW");
User.FullName := "Первый пользователь";
User.Description := "Новый пользователь платформы";
Data := User.PackageData;
PS := Data.Credentials As IPasswordCredentials;
PS.Password := "Password";
User.MustChangePasswordAtNextLogon := True;
// Добавим нового пользователя в первую группу
Group.AddMember(User);
// Сохраним изменения
MS.Apply();
// Освободим лицензию
Lic := Null;
End Sub;
После выполнения примера будет создан новый пользователь «USER_NEW». Данный пользователь будет включен в первую группу, созданную в менеджере безопасности. При первом входе в платформу под данным пользователем будет выдан запрос на смену пароля.
См. также: