Поделиться через


Доступ к данным и управление ими с помощью ADSI

Все объекты имеют свойства. Все com-объекты интерфейса службы Active Directory (ADSI) имеют один или несколько интерфейсов с методами, которые извлекают свойства объекта каталога, который представляет COM-объект. Существует несколько способов чтения свойств из объекта:

  • Получение определенного свойства по имени: интерфейс IADs имеет два метода IADs::Get и IADs::GetEx для чтения определенного свойства. Каждый com-объект ADSI имеет интерфейс IADs .
  • Получение указанного списка свойств: интерфейс IDirectoryObject имеет метод IDirectoryObject::GetObjectAttributes, позволяющий указать список, содержащий имена свойств для чтения и возврата массива структур, содержащих запрошенные значения свойств.
  • Перечислить все свойства объекта: интерфейс IADsPropertyList позволяет перечислить все свойства объекта.
  • Получение специальных свойств: интерфейсы автоматизации (IADs*) имеют методы свойств, которые позволяют получать специальные свойства, которые не хранятся в объекте. Или методы свойств могут позволить получить свойство объекта в формате данных, отличающемся от фактического типа данных, сохраненного. Например, интерфейс IADs имеет методы свойств, такие как IADs::get_Name, который получает относительное различающееся имя объекта (RDN); IADs::get_Class, который извлекает класс объекта и IADs::get_Parent, который извлекает ADsPath в родительский объект.

ADSI позволяет кэшировать свойства локально после их чтения с сервера каталогов. Это позволяет считывать свойства из локального кэша свойств или извлекать свойства непосредственно с сервера каталогов. ADSI также имеет методы обновления кэша, а также указание того, кэшируются ли все свойства для объекта или только те, которые вы указали.

После получения свойства вы считываете его значение. Тип данных свойства зависит от определения свойства (также известного как атрибут) в схеме Active Directory. Для каждого типа свойства, которое может существовать в Active Directory, в схеме Active Directory существует объект attributeSchema . Объект attributeSchema определяет характеристики атрибута. Одним из этих характеристик является синтаксис атрибута, который определяет тип данных значений атрибута. Дополнительные сведения см. в разделе "Характеристики атрибутов и синтаксисов" для атрибутов Active Directory.

Интерфейсы автоматизации (IADs*) возвращают значение свойства в виде VARIANT или указателя на интерфейс автоматизации в com-объекте, представляющего это свойство. Интерфейсы IDirectoryObject и IDirectorySearch возвращают свойство в виде указателя на структуру, содержащую типизированное значение свойства или указатель на строку байтов. Кроме того, IDirectoryObject и IDirectorySearch извлекают свойства непосредственно с сервера каталогов вместо использования локального кэша свойств.

В этом разделе описаны следующие разделы: