将 AD 用户帐户从一个域移动到另一个域

将 AD 用户帐户从一个域移动到另一个域

要求:在我们的组织中,一些员工经常转移到不同的区域,这些区域是单个林内的不同域。需要使用一些免费的解决方案。

我的理解:

我知道市场上有几种专用于此的工具,例如 Quest 等。然后,我们还有 Microsoft 的免费 ADMT。我希望使用 C# 或 powershell 脚本(我不太习惯)来自动化我们的案例中的流程。

挑战:

我在网上搜索过如何使用 C# 调用某些东西,但结果几乎是徒劳的。然后我切换到 powershell 变体,在那里我发现了一些帖子,例如GitHubGist 上的这个,但是,那里面提到的要求和警告让我感到不舒服。

此外,由于我们使用的是 Exchange 设置,因此要求迁移源域中用户帐户中设置的所有属性。因此,像上面提到的脚本清楚地表明它们保留了一些附加设置。

我想要的是自动化我们的用户迁移流程,但使用我们自己的脚本/代码,我们将对其进行彻底的测试和部署。

我尝试过:

我尝试使用移动AD对象在我的 UAT 设置中,没有防火墙挑战或限制,但它仍然给出错误,指出“服务器返回了一个引用”。我使用了各种权限,但错误仍然相同。

我使用了以下 cmdlet,如 Microsoft 的 TechNet 文章中所述:

将具有 DistinguishedName 'CN=Peter Bankov,OU=Accounting,DC=Fabrikam,DC=com' 的对象移动到其他域。

// Moves an object with 
// DistinguishedName 'CN=Peter Bankov,OU=Accounting,DC=Fabrikam,DC=com' 
// to a different domain.

Move-ADObject -Identity "CN=Peter Bankov,OU=Accounting,DC=Fabrikam,DC=com" 
-TargetPath "OU=Accounting,DC=Europe,DC=Fabrikam,DC=com" 
-TargetServer "server01.europe.fabrikam.com"

UAT 架构具有林域,该林域包含多个子服务器,这些子服务器具有可传递信任。所有子服务器的信任都与根服务器相关。

寻找有效的解决方案:

我正在寻找一种有效的解决方案,帮助迁移具有与之前域中相同的属性集的用户帐户。感谢您的时间。


注意:请耐心听我说;这可能看起来像一个编程问题,但更倾向于了解如何以及探索哪些选项的过程。我最近开始研究 Active Directory 服务。

答案1

经过测试,我可以保证 Move-ADObject 可以在域之间移动对象。您需要的语法如下:

Move-ADObject -Identity "CN=Test Move,OU=SourceOU,DC=Domain,DC=suffix" -TargetPath "OU=Test,DC=child,DC=Domain,DC=suffix" -TargetServer "Target-Domain-RID-master" -Server "Local-Domain-RID-master"

这会将用户从林根移至子域。

相关内容