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


Включение привязки переименования Сейф с помощью другого свойстваWellKnownObjects

Объекты класса Container имеют другой атрибутWellKnownObjects , который можно использовать для связывания GUID с различающимся именем (DN) дочернего объекта в контейнере. Если дочерний объект перемещен или переименован, сервер Active Directory обновляет DN в другом значенииWellKnownObjects для этого дочернего объекта. Это позволяет использовать функцию привязки WKGUID для привязки к дочернему объекту с помощью GUID и DN контейнера, а не DN дочернего объекта.

Атрибут otherWellKnownObjects эквивалентен атрибуту wellKnownObjects, за исключением того, что приложения и службы могут записывать другое значениеWellKnownObjects, но только система может записывать wellKnownObjects.

Использование атрибута OtherWellKnownObjects и привязки WKGUID полезно в следующих ситуациях, когда требуется переименовывающая безопасная привязка в отношении определенного объекта контейнера.

Если объект контейнера содержит другие важные объекты, или если важные объекты можно переименовать или переместить.

Если важные объекты существуют для каждого экземпляра объекта контейнера. Например, система использует атрибут wellKnownObjects каждого объекта domainDNS для хранения значения контейнера Users, который существует в каждом экземпляре объекта domainDNS. Это позволяет приложениям привязаться к контейнеру Users в безопасном режиме переименования, указав известный GUID и DN контейнера domainDNS . Приложения могут использовать другой атрибут КонтейнераWellKnownObjects аналогично.

Если требуется переименовывать безопасную привязку и (или) возможность поиска в важных объектах.

Добавление возможностей переименовывания и поиска

  1. Добавьте значение в свойство otherWellKnownObjects объекта контейнера при создании важного объекта в этом контейнере. Значение содержит GUID, представляющий известный объект. Помните, что это не объектGUID и различающееся имя для этого объекта.
  2. Используйте функцию привязки WKGUID для привязки к важному объекту или поиска.

Другой атрибутWellKnownObjects может иметь несколько значений и содержит кортежи GUID/DN известных объектов в контейнерах, на которых они заданы. Атрибут OtherWellKnownObjects имеет синтаксис DNWithBinary, в котором значения имеют следующую форму:

B:<char count>:<well known GUID>:<object DN>

В этом примере "<char count>" — это количество шестнадцатеричных цифр в "<хорошо известном GUID>", которое равно 32 (число шестнадцатеричных цифр в GUID) для обоих других объектовWellKnownObjects и wellKnownObjects. "<хорошо известный GUID>" представляет шестнадцатеричное представление известного GUID. "<объект DN>" — это различающееся имя объекта, представленного этим значением WKO. Сервер поддерживает часть ObjectDN каждого хорошо заданного значения wellKnownObjects и другого значенияWellKnownObjects , чтобы он содержал текущее различающееся имя объекта, первоначально указанного при создании значения.

Например, если {df447b5e-aa5b-11d2-8d53-00c04f79ab81} — известный GUID объекта MyObject в контейнере MyContainer в домене Fabrikam.com, то другое значениеWellKnownObjects будет указывать известный GUID и DN MyObject:

B:32:df447b5eaa5b11d28d5300c04f79ab81:cn=MyObject,cn=MyContainer,dc=Fabrikam,dc=com

Чтобы привязаться к этому объекту, используйте следующую строку привязки WKGUID, указывающую известный GUID объекта и DN контейнера:

LDAP://<WKGUID=df447b5eaa5b11d28d5300c04f79ab81,cn=MyContainer,dc=Fabrikam,dc=com>

После привязки к этому объекту можно использовать com-интерфейсы ADSI для поиска, чтения, изменения или удаления объекта.

Дополнительные сведения и пример кода, показывающий, как добавить объект в атрибут otherWellKnownObjects , см. в примере кода для создания объекта контейнера.