不同域

时间:2016-06-27 23:42:52

标签: powershell active-directory

运行以下cmdlet适用于组成员身份(Amer域中的组)中的所有用户,无论用户列出的域位于何处:

Get-ADGroupMember <group_name> -Server amer

但是,当尝试通过管道传输到Get-ADUser来获取用户的详细信息时,我会在其他域(EMEA)和组(AMER)中收到错误:

Get-ADGroupMember <group_name> | Get-ADUser

以下是在不同域中的每个用户(EMEA域中的错误用户)之后返回的错误:

Get-ADUser : A referral was returned from the server
At line:1 char:46
+ Get-ADGroupMember GBL-Storage-Admin-NAS-L2-U|Get-ADUuser
+                                              ~~~~~~~~~~
    + CategoryInfo          : ResourceUnavailable: (CN=EMASAN-    WARNE...C=pfizer,DC=com:ADUser) [Get-ADUser], ADReferralException
    + FullyQualifiedErrorId : A referral was returned from the     server,Microsoft.ActiveDirectory.Management.Commands.GetADUser

我可以通过指定get-aduser <user> -Server EMEA来查找每个错误用户,但是当有很多用户时,这会非常麻烦。

如何让管道Get-ADUser与其他域中的用户合作?

3 个答案:

答案 0 :(得分:2)

基本上,如果您想要将引荐追逐到其他域,则需要查询包含global catalog的DC(请参阅here)。持有全局目录的DC可以确定为this

$gc = Get-ADForest 'example.org' | Select-Object -Expand GlobalCatalogs -First 1

其中example.org是您的林根域的FQDN。

答案 1 :(得分:1)

为了清楚起见,目前,本机cmdlet没有此功能。选择全局编录不允许您追踪推荐。如您的链接中所定义 -

  

全局编录是一个包含a的分布式数据存储库   可搜索的,部分表示每个域中的每个对象   多域Active Directory域服务(AD DS)林。

您似乎仍然可以使用可以使用的用户对象,因此这是一个很好的解决方法。

答案 2 :(得分:1)

我只是通过检查推介是什么来管理类似的问题,比如

\u1234

从我的输出中,我为我要求的用户提供了正确的服务器。