IABACSubjectAttributesMappings.Count

Синтаксис

Count: Integer;

Описание

Свойство Count возвращает количество связей с атрибутами внешних областей хранения/доменов в коллекции.

Пример

Добавьте ссылки на системные сборки: ABAC, Host, Metabase.

Sub UserProc;
Var
    MB: IMetabase;
    MS: IMetabaseSecurity;
    ABACAttributes: IABACSubjectAttributes;
    Mappings: IABACSubjectAttributesMappings;
    Mapping: IABACSubjectAttributesMapping;
    Map: IABACSubjectAttributeMapping;
    i1, c1, i2, c2: Integer;
Begin
    MB := MetabaseClass.Active;
    MS := MB.Security;
    // Атрибуты пользователей
    ABACAttributes := MS.Users.Attributes As IABACSubjectAttributes;
    // Связи атрибутов пользователей с атрибутами внешних областей хранения/доменов
    Mappings := ABACAttributes.Mappings;
    c1 := Mappings.Count;
    Debug.WriteLine(c1);
    For i1 := 0 To c1 - 1 Do
        Mapping := Mappings.Item(i1);
        Debug.WriteLine("Тип области хранения/домена: " + Mapping.Provider.ToString);
        If (Mapping.Provider = ExternalCatalogType.LDAP) And (Mapping.Realm <> ""Then
            Debug.WriteLine("Поддомен: " + Mapping.Realm);
        End If;
        c2 := Mapping.Count;
        Debug.WriteLine("Количество связей атрибутов: " + c2.ToString);
        Debug.Indent;
        For i2 := 0 To c2 - 1 Do
            Map := Mapping.Item(i2);
            Debug.WriteLine("Атрибут пользователя: " + Map.Attribute.Name(MetabaseClass.Active.CurrentLocale)
                + " --> " + "Атрибут области хранения/домена: " + Map.ExternalName);
        End For;
        Debug.Unindent;
        Debug.WriteLine("---------------------------");
    End For;
End Sub UserProc;

При выполнении примера в консоль среды разработки будет выведена информация о настройках связей атрибутов пользователей с атрибутами внешних областей хранения/доменов, которые могут быть заданы в менеджере безопасности репозитория.

См. также:

IABACSubjectAttributesMappings