显示另一个域中的用户所属的所有组

显示另一个域中的用户所属的所有组

我和我的团队对此感到困惑。

我们在工作中有两个域,OldDomain 和 NewDomain。我们正在按照 ParentCompany 的要求从 OldDomain 迁移到 NewDomain。信任是单向的,OldDomain 信任 NewDomain,但 NewDomain 不信任 OldDomain。

我们遇到的问题是,来自 NewDomain 的用户已被添加到 OldDomain 中的域本地组。因此,当有人要求我们在 NewDomain 中创建 UserB(镜像 UserA 的权限)时,我们无法知道 UserA 是否是 OldDomain 中任何组的成员。

我需要一些建议、指导或直接帮助,即在 OldDomain 中搜索所有包含 UserA 成员的组的工具、脚本或方法。我查看了 PowerShell、AD 用户和计算机以及 DSQuery 和 DSGet 中的几个命令,但我们唯一能想到的就是将所有组及其成员资格从 OldDomain 转储到 CSV,然后在 CSV 中搜索 UserA 的 SID。

如果有人遇到过这种情况并且可以向我提供一些信息,我将不胜感激!

答案1

如果您要将所有内容从一个域迁移到另一个域,则应使用 Active Directory 迁移工具 (ADMT)。这将允许您迁移用户/组对象/服务器/资源/等。您首先将组对象复制到新域,然后复制用户对象。

按此顺序执行操作时,您可以选择保留组成员身份的选项。这还会将旧域中组的 SID 添加到SIDHistory新域中组的属性中。

这允许仅在新域中分组的用户对仅应用了旧域组的资源进行身份验证。

答案2

使用Get-ADUser -Identity <<samAccountName>> -Properties memberOf将返回用户所在的所有组的数组。它输出可分辨名称,因此应该可以快速追踪它们。

对于您来说,您需要远程连接到“OldDomain”的域控制器才能从命令行获取结果。

答案3

由于 oldDomain 信任 newDomain,我不明白为什么不能使用 get-aduser 和指向 oldDomain 中的 DC 的 -server 参数。

或者只是为了完成工作,一个不太好的方法就是将 oldDomain 中的组成员身份转储到 CSV/txt 文件中,然后使用该文件作为 newDomain 中的源,无论你想要什么方式

相关内容