WKGUID を使用した既知のオブジェクトへのバインド
コンテナには、名前の変更や移動が可能な重要なサブオブジェクトを 1 つ以上含めることができます。 これらのサブオブジェクトを追跡し、正しいバインド文字列を作成することは、特に名前が変更されたり移動されたりした場合に困難になる場合があります。
これらのコンテナー内のこれらのオブジェクトへの名前変更セーフなバインドをサポートするために、Active Directory Domain Servicesには wellKnownObjects と otherWellKnownObjects の 2 つの属性があります。 これらの属性の属性構文は ADSTYPE_DN_WITH_BINARY です。 複数の値を使用でき、設定されているコンテナー内の既知のオブジェクトの GUID/DN タプルが含まれます。 Active Directory サーバーは、各 wellKnownObjects エントリと otherWellKnownObjects エントリの識別名部分を保持し、エントリの作成時に指定されたオブジェクトの現在の識別名を含むようにします。
otherWellKnownObjects プロパティは、任意のオブジェクトで設定して使用できます。
wellKnownObjects プロパティは、domainDNS コンテナーと構成コンテナーで使用されます。 wellKnownObjects プロパティはシステム専用のプロパティであり、オペレーティング システムによってのみ変更できます。
domainDNS コンテナーには、次の既知のオブジェクトがあります:
- Users
- [Computers (コンピューター)]
- System
- ドメイン コントローラー
- インフラストラクチャ
- 削除済みオブジェクト
- 遺失物
構成コンテナーには、既知のオブジェクトがあります。削除されたオブジェクト。
これらのオブジェクトは、Active Directory Domain ServiceのすべてのドメインDNSと構成コンテナーにあります。
WKGUID バインド形式を使用して、既知のオブジェクトにバインドできます。 WKGUID とのバインドは、Active Directory Domain Services、つまり LDAP プロバイダーでのみサポートされます。
重要
常に WKGUID バインド形式を使用して、ドメイン コンテナーと構成コンテナー内の既知のオブジェクト (上記のように) にバインドします。 これにより、これらのコンテナーは、移動または名前が変更された場合でもバインドできます。
WKGUID バインド文字列の形式は次のとおりです。
LDAP://<servername>/<WKGUID=<XXXXX>,<container DN>>
<server nameは>ディレクトリサーバー名です。 <サーバー名>はオプションです。
<"XXXXX" は>、既知のオブジェクトを表す GUID の 16 進数値の文字列表現です。 GUID 文字列は "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" 形式で指定され、"{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}" という形式を取る StringFromGUID2 関数によって生成される GUID 文字列と同じ形式ではありません。 GUID からバインド可能な文字列を作成する方法の詳細とコード例については、GUID のバインド可能な文字列表現を作成するためのコード例を参照してください。
オブジェクト内の otherWellKnownObjects で指定されたオブジェクトにバインドするには、オブジェクト<の既知のオブジェクト GUID のバインド文字列形式として XXXXXを>指定します。 詳細については、オブジェクトの objectGUID の読み取り」およびGUID の文字列表現の作成を参照してください。 オブジェクトに対する otherWellKnownObjects プロパティの設定の詳細については、otherWellKnownObjects プロパティを使用した名前変更セーフなバインドの有効化を参照してください。
domainDNS または構成コンテナーの wellKnownObjects で指定されたオブジェクトにバインドするには、Ntdsapi.h で定義されているように、次の表に示すいずれかの定数として< XXXXX >を指定します。
コンテナー | GUID 識別子 |
---|---|
Users | GUID_USERS_CONTAINER_W |
[Computers (コンピューター)] | GUID_COMPUTRS_CONTAINER_W |
System | GUID_SYSTEMS_CONTAINER_W |
ドメイン コントローラー | GUID_DOMAIN_CONTROLLERS_CONTAINER_W |
インフラストラクチャ | GUID_INFRASTRUCTURE_CONTAINER_W |
削除済みオブジェクト | GUID_DELETED_OBJECTS_CONTAINER_W |
遺失物 | GUID_LOSTANDFOUND_CONTAINER_W |
たとえば、ドメイン内のユーザー コンテナーにバインドするには、GUID_USERS_CONTAINER_W <を "XXXXX"> と指定します。
"<コンテナDN>"は、このオブジェクトがwellKnownObjectsプロパティの値として表されるコンテナオブジェクトの識別名です。 たとえば、ドメイン内の users コンテナにバインドするには、ドメイン識別名を "<コンテナ DN>" として指定します。
たとえば、ドメイン Fabrikam.com の users コンテナーにバインドするには、次のバインド文字列を使用します。
LDAP://<WKGUID=a9d1ca15768811d1aded00c04fd8d5cd,dc=Fabrikam,dc=com>
詳細と、既知の GUID にバインドする方法を示すコード例については、既知のオブジェクトにバインドするためのコード例を参照してください。