使用 objectGUID 系結至物件
如果物件重新命名或移動,物件辨別名稱就會變更,因此辨別名稱不是可靠的物件標識符。 在 Active Directory 網域服務 中,物件的 objectGUID 屬性永遠不會變更,即使物件已重新命名或移動也一樣。 如需 objectGUID 和標識符的詳細資訊,請參閱物件名稱和身分識別。
Active Directory LDAP 提供者提供方法,以使用物件 GUID 系結至物件。 系結字串格式如下所示:
LDAP://servername/<GUID=XXXXX>
在此範例中,“servername” 是目錄伺服器的名稱,而 “XXXXX” 是 GUID 十六進位值的字串表示法。 “servername” 是選擇性的。 GUID 字串是以 「XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX」 格式指定。 GUID 字串也可以採用 「XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXXXXXXX」 格式,其格式與 StringFromGUID2 函式所產生的字元串格式相同,不含周圍大括弧 “{}”。 如需詳細資訊和示範如何從 GUID 建立可系結字串的程式代碼範例,請參閱 建立 GUID 可繫結字串表示法的範例程式代碼。 IADs.GUID 屬性可用來擷取適當的 GUID 字串形式。
使用物件 GUID 進行系結時,不支援某些 IADs 和 IADsContainer 方法和屬性。 使用物件 GUID 系結取得的物件不支援下列 IAD 屬性:
使用物件 GUID 取得的物件不支援下列 IADsContainer 方法:
若要在使用物件 GUID 系結至對象之後使用這些方法和屬性,請使用 IADs.Get 方法來擷取物件辨別名稱,然後使用辨別名稱再次系結至物件。
如果應用程式儲存或快取儲存在 Active Directory 網域服務 中物件的識別碼或參考,則物件 GUID 是因數個原因而使用的最佳識別碼:
- 物件 上的 objectGUID 屬性永遠不會變更,即使物件重新命名或移動也一樣。
- 使用物件 GUID 輕鬆系結至物件。
- 如果物件重新命名或移動, objectGUID 屬性會提供單一標識碼,可用來快速尋找和識別物件,而不必撰寫查詢,該查詢具有可識別該物件之所有屬性的條件。