NewSubjectsSearch: ISecuritySubjectsSearch;
NewSubjectsSearch: Prognoz.Platform.Interop.Metabase.ISecuritySubjectsSearch;
Метод NewSubjectsSearch создает объект поиска субъекта безопасности.
Для выполнения примера добавьте ссылку на системную сборку Metabase.
Sub UserProc;
Var
MB: IMetabase;
Sea: ISecuritySubjectsSearch;
Subjs: ISecuritySubjects;
Subj: ISecuritySubject;
i: integer;
Begin
MB := MetabaseClass.Active;
Sea := MB.Security.NewSubjectsSearch;
Sea.NameCriteria := "А*";
Sea.SubjectCriteria(SecuritySubjectType.User) := True;
Sea.SubjectCriteria(SecuritySubjectType.Group) := True;
Sea.AreaIncludeDB := True;
Sea.AreaIncludeNT := True;
Sea.ExecuteSearch;
Subjs := Sea.Subjects;
If Subjs.Count > 0 Then
For i := 0 To Subjs.Count - 1 Do
Subj := Subjs.Item(i);
Debug.WriteLine(Subj.Name + ": " + Subj.Description);
End For;
End If;
End Sub UserProc;
Imports Prognoz.Platform.Interop.Metabase;
…
Public Shared Sub Main(Params: StartParams);
Var
MB: IMetabase;
Sea: ISecuritySubjectsSearch;
Subjs: ISecuritySubjects;
Subj: ISecuritySubject;
i: integer;
Begin
MB := Params.Metabase;
Sea := MB.Security.NewSubjectsSearch();
Sea.NameCriteria := "А*";
Sea.SubjectCriteria[SecuritySubjectType.sstUser] := True;
Sea.SubjectCriteria[SecuritySubjectType.sstGroup] := True;
Sea.AreaIncludeDB := True;
Sea.AreaIncludeNT := True;
Sea.ExecuteSearch();
Subjs := Sea.Subjects;
If Subjs.Count > 0 Then
For i := 0 To Subjs.Count - 1 Do
Subj := Subjs.Item[i];
System.Diagnostics.Debug.WriteLine(Subj.Name + ": " + Subj.Description);
End For;
End If;
End Sub;
После выполнения примера выполняется поиск субъектов безопасности: пользователей и групп, среди доменных субъектов и субъектов СУБД. Наименование и описание найденных субъектов будет выведено в консоль.
См. также: