我們爲客戶的大型域遷移項目編寫了一個遷移工具(C#)。客戶擁有一個擁有一個父域和多個子域的林。他們希望將所有用戶對象從子域移動到父域。跨域移動用戶對象
從很多客戶的具體的東西除此之外,遷移工具從孩子移動用戶對象使用以下方法ADSI父域:
IADsContainer :: MoveHere https://msdn.microsoft.com/en-us/library/aa705991%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396
按照以下文章有可能在滿足某些要求時跨域移動對象: https://technet.microsoft.com/en-us/library/ee198798.aspx?f=255&MSPPError=-2147217396
爲了測試目的,我使用了以下VBScript whi ch基本上與我的C#應用程序相同:
Set objOU = GetObject("LDAP://ou=Management,dc=NA,dc=fabrikam,dc=com")
objOU.MoveHere "LDAP://cn=AckermanPilar,ou=Management,dc=fabrikam,dc=com",vbNullString
上面的VBScript在我的測試環境中工作。如果我們試圖在生產同一腳本失敗與以下無用的錯誤消息:
Error: The server is unwilling to process the request.
Code: 80072035
Source: Active Directory
但是,如果我們運行相同的腳本來從父域到它的工作原理子域移動用戶對象。
我們嘗試移動的用戶對象除了是通用組的主組之外沒有任何組成員身份。我們從源域(子)運行腳本,我們用來運行該腳本的用戶帳戶具有企業管理員權限。我們還加倍檢查了上述鏈接的所有要求。
有沒有人有一個想法是什麼問題可能和/或我可以如何解決它?