Condividi tramite


Abilitazione dell'associazione di Rename-Safe con la proprietà otherWellKnownObjects

Gli oggetti della classe Container hanno un attributo otherWellKnownObjects che è possibile usare per associare un GUID al nome distinto (DN) di un oggetto figlio nel contenitore. Se l'oggetto figlio viene spostato o rinominato, il server Active Directory aggiorna il DN nel valore otherWellKnownObjects per tale oggetto figlio. Ciò consente l'uso della funzionalità di associazione WKGUID per l'associazione all'oggetto figlio usando il GUID e il DN del contenitore anziché il DN dell'oggetto figlio.

L'attributo otherWellKnownObjects è equivalente all'attributo wellKnownObjects tranne per il fatto che le applicazioni e i servizi possono scrivere un valore otherWellKnownObjects, ma solo il sistema può scrivere wellKnownObjects.

L'uso dell'attributo otherWellKnownObjects e dell'associazione WKGUID è utile nelle seguenti situazioni in cui è necessaria un'associazione sicura rispetto alla ridenominazione in relazione a un oggetto contenitore specifico.

Se un oggetto contenitore contiene altri oggetti importanti o se è possibile rinominare o spostare oggetti importanti.

Se gli oggetti importanti esistono per ogni istanza dell'oggetto contenitore. Ad esempio, il sistema utilizza l'attributo wellKnownObjects di ogni oggetto dominioDNS per archiviare un valore per il contenitore Users, che è presente in ogni istanza di un oggetto dominioDNS. Ciò consente alle applicazioni di eseguire l'associazione al contenitore Users in modo sicuro specificando il GUID noto e il DN del dominioDNS contenitore. Le applicazioni possono usare l'attributo otherWellKnownObjects in modo analogo.

Se hai bisogno di un'associazione sicura per rinominare e/o di una funzionalità di ricerca sugli oggetti importanti.

Per aggiungere funzionalità di associazione e ricerca sicure durante la ridenominazione

  1. Aggiungere un valore alla proprietà otherWellKnownObjects dell'oggetto contenitore quando l'oggetto importante viene creato al suo interno. Il valore contiene il GUID che rappresenta l'oggetto noto. Tenere presente che questo non è il objectGUID e il distinguishedName per tale oggetto.
  2. Usare la funzionalità di associazione WKGUID per associare o cercare gli oggetti importanti.

L'attributo otherWellKnownObjects può avere più valori e contiene le tuple GUID/DN di oggetti noti all'interno dei contenitori in cui sono impostate. L'attributo otherWellKnownObjects ha la sintassi DNWithBinary in cui i valori hanno il formato seguente:

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

In questo esempio, "<char count>" è il conteggio di cifre esadecimali in "<GUID noto>", ovvero 32 (numero di cifre esadecimali in un GUID) sia per otherWellKnownObjects che per wellKnownObjects. "<GUID noto>" è la rappresentazione di cifre esadecimali del GUID noto. "<oggetto DN>" è il nome distinto dell'oggetto rappresentato da questo valore WKO. Il server gestisce la parte ObjectDN di ogni wellKnownObjects e otherWellKnownObjects valore, in modo che contenga il nome distinto corrente dell'oggetto originariamente specificato al momento della creazione del valore.

Ad esempio, se {df447b5e-aa5b-11d2-8d53-00c04f79ab81} è il GUID noto dell'oggetto MyObject nel contenitore MyContainer nel dominio Fabrikam.com, il valore otherWellKnownObjects specificare il GUID noto e il DN di MyObject:

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

Per eseguire l'associazione a questo oggetto, utilizzare la stringa di associazione WKGUID seguente che specifica il GUID noto dell'oggetto e il DN del contenitore:

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

Dopo l'associazione a questo oggetto, è possibile usare le interfacce COM ADSI per cercare, leggere, modificare o eliminare l'oggetto.

Per altre informazioni e un esempio di codice che illustra come aggiungere un oggetto all'attributo otherWellKnownObjects, vedere codice di esempio per la creazione di un oggetto contenitore.