Partager via


Activation de Rename-Safe binding avec la propriété otherWellKnownObjects

Les objets de la classe Container ont un attribut otherWellKnownObjects que vous pouvez utiliser pour associer un GUID au nom unique (DN) d’un objet enfant dans le conteneur. Si l’objet enfant est déplacé ou renommé, le serveur Active Directory met à jour le nom de domaine dans la valeur otherWellKnownObjects pour cet objet enfant. Cela permet d’utiliser la fonctionnalité de liaison WKGUID pour établir une liaison à l’objet enfant à l’aide du GUID et du DN du conteneur plutôt que du DN de l’objet enfant.

L’attribut otherWellKnownObjects est équivalent à l’attribut wellKnownObjects, sauf que les applications et les services peuvent écrire une valeur otherWellKnownObjects, mais seul le système peut écrire wellKnownObjects.

L’utilisation d’autres attributsWellKnownObjects et de la liaison WKGUID est bénéfique dans les situations suivantes où la liaison rename-safe est requise par rapport à un objet conteneur spécifique.

Si un objet conteneur contient d’autres objets importants, ou si des objets importants peuvent être renommés ou déplacés.

Si les objets importants existent pour chaque instance de l’objet conteneur. Par exemple, le système utilise l’attribut wellKnownObjects de chaque objet domainDNS pour stocker une valeur pour le conteneur Users, qui existe dans chaque instance d’un objet domainDNS. Cela permet aux applications de lier au conteneur Users d’une manière de renommage sécurisé en spécifiant le GUID bien connu et le nom de domaine du conteneur domainDNS . Les applications peuvent utiliser l’attribut otherWellKnownObjects d’un conteneur de la même façon.

Si vous avez besoin d’une liaison sans changement de nom et/ou d’une fonctionnalité de recherche sur les objets importants.

Pour ajouter des fonctionnalités de recherche et de liaison avec rebasage sécurisé

  1. Ajoutez une valeur à la propriété otherWellKnownObjects de l’objet conteneur lorsque l’objet important est créé dans ce conteneur. La valeur contient le GUID qui représente l’objet connu. N’oubliez pas qu’il ne s’agit pas de l’objetGUID et du distinguishedName pour cet objet.
  2. Utilisez la fonctionnalité de liaison WKGUID pour lier ou rechercher l’objet important.

L’attribut otherWellKnownObjects peut avoir plusieurs valeurs et contient les tuples GUID/DN d’objets connus dans les conteneurs sur lesquels ils sont définis. L’attribut otherWellKnownObjects a la syntaxe DNWithBinary dans laquelle les valeurs ont la forme suivante :

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

Dans cet exemple, «< nombre> de caractères » est le nombre de chiffres hexadécimaux dans «< GUID> bien connu », qui est 32 (nombre de chiffres hexadécimaux dans un GUID) pour otherWellKnownObjects et wellKnownObjects. «< GUID> bien connu » est la représentation numérique hexadécimale du GUID bien connu. «< object DN> » est le nom unique de l’objet représenté par cette valeur WKO. Le serveur conserve la partie ObjectDN de chaque valeur wellKnownObjects et otherWellKnownObjects afin qu’elle contienne le nom unique actuel de l’objet spécifié à l’origine lors de la création de la valeur.

Par exemple, si {df447b5e-aa5b-11d2-8d53-00c04f79ab81} est le GUID bien connu de l’objet MyObject dans le conteneur MyContainer dans le domaine Fabrikam.com, la valeur otherWellKnownObjects spécifie le GUID bien connu et le DN de MyObject :

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

Pour établir une liaison à cet objet, utilisez la chaîne de liaison WKGUID suivante qui spécifie le GUID connu de l’objet et le nom de domaine du conteneur :

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

Après la liaison à cet objet, vous pouvez utiliser les interfaces COM ADSI pour rechercher, lire, modifier ou supprimer l’objet.

Pour plus d’informations et un exemple de code montrant comment ajouter un objet à l’attribut otherWellKnownObjects , consultez Exemple de code pour la création d’un objet conteneur.