「目錄資料類型無法轉換成或來自原生 DS 資料類型」錯誤

本文可協助修正「目錄資料類型無法轉換成或從原生 DS 資料類型」的錯誤。

原始產品版本:   Windows Server 2019,Windows Server 2016,Windows Server 2012 R2
原始 KB 編號:   907462

徵狀

您正在執行或管理使用 Windows 之 Active Directory 目錄服務中資訊的應用程式。 當應用程式使用連結的屬性資訊時,可能會收到錯誤。 例如,您可能會收到下列錯誤:

無法從原生 DS 資料類型轉換目錄資料類型。

在此情況下,當您使用 LDIFDE 公用程式匯出受影響的物件 ( # A0) 時,會列出屬性。 不過,此屬性沒有任何值。

當值很長時,這可能是預期的行為。 但是輸出中的下一行具有 next 屬性。 若為群組及其 managedBy 屬性,輸出可能類似如下:
...
showInAddressBook: <Address Book object DN>
ManagedBy
legacyExchangeDN: <X500 name>
groupType:-2147483640
...

在 RootDSE 命令動詞為 dumpdatabase 的資料庫轉儲中,受影響的群組會如下顯示:

38661 29827 1 1790 true--4 3 Group-DN 群組-DN-655368 6d03f309-ded2-41d5-9794-081d40343876 4
objectclass:655368、65536
DNT 基底 BDNT DelTime DeactiveTime USNChanged NCDNT 資料
38661 1 38662--55247898 1790-
38661 36 2-----------

Link 屬性識別碼永遠為36,而且連結夥伴永遠都是2。
如需如何轉儲資料庫的詳細資訊,請參閱 how To 使用 Active Directory 的 Online Dbdump 功能

原因

應用程式可以新增參考 Active Directory 資料庫之內部 root 物件的物件連結。 此物件沒有可供應用程式使用的名稱或任何其他屬性。 因此,用戶端應用程式會顯示錯誤訊息,指出問題的原因。

解決方案

如果您使用執行 Windows Server 2003 Service Pack 1 的網域控制站,則不會發生此問題。 不過,具有此無效連結的物件仍在資料庫中。 當您搜尋 NTDS 時,您可以找到受影響的網域控制站群組。DMP 檔案,如下所示:

findstr/i/c: "36 2--" ntds
38661 36 2-----------

Windows Server 2003:

您無法透過刪除屬性來解決問題。 若刪除屬性,則會在應用程式目錄服務記錄檔中記錄下列錯誤:

事件類型:錯誤
事件來源: NTDS 複寫
事件類別:複寫
事件 ID: 1694
描述:
Active Directory 無法使用從下列來源網域控制站接收的屬性值變更來更新下列物件。 這是因為在應用本機網域控制站上的 Active Directory 變更時發生錯誤。
物件:
<group DN>
物件 GUID:
<GUID>
來源網域控制站:
<GUID-based DC name>
屬性:
ManagedBy
屬性值:
[]
屬性值 GUID:
00000000-0000-0000-0000-000000000000
目前:
0
在下一個排程複寫時會再次嘗試此作業。 除非更新問題得以修正,否則會封鎖本機網域控制站與來源網域控制站的同步處理。
其他資料
錯誤值:
複寫系統發生內部錯誤。

如果此錯誤已記錄,表示物件處於中斷的狀態。 若要取得原始狀態或刪除物件,您只可以在物件上執行授權還原。 若要修復顯示此行為的物件,建議您使用 LDIFDE 公用程式刪除並重建物件。

警告

當您刪除物件時,會移除所有的反向連結。

如果您必須保留無法設定其值的特定屬性(例如 objectSid 屬性或 SidHistory 屬性),請刪除物件,然後將其取消刪除。 (Windows Server 2003 Service Pack 1 會在您刪除物件時保留 SidHistory 屬性。 ) 當您刪除及撤銷刪除物件時,您不需要執行語義檢查。

不過,目前沒有工具可以復原屬性和反向連結。 若要還原群組成員資格,您可以使用 Groupadd.exe 工具。 如需詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

840001 如何在 Active Directory 中還原已刪除的使用者帳戶及其群組成員資格

如果您使用 Microsoft 布建系統,您可以使用系統來復原屬性和反向連結。

有些備份和復原應用程式可能會提供更便利的方法,以移除這些問題的屬性。 應用程式必須讓您在還原作業期間選取屬性。 例如,當您還原已刪除的物件時,應用程式必須讓您排除 managedBy 屬性。

狀態

Microsoft 已確認這是「適用于」區段所列的 Microsoft 產品中的問題。 此問題已在 Microsoft Windows Server 2003 Service Pack 1 中第一次修正。