无法使用get-adgroupmember -recursive检索跨域用户

依奥斯

我的任务是提供来自多个AD组的AD组成员列表,并将其导出到.csv。如果有问题的AD组甚至有一个跨域用户,我的脚本将失败。

Get-ADGroupMember : An operations error occurred
At C:\users\user1\desktop\ps2.ps1:5 char:1
Get-ADGroupMember -recursive $group | ForEach-Object {
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (Amazing-ADGroup:ADGroup) [Get-ADGroupMember], AD
   Exception
    + FullyQualifiedErrorId : ActiveDirectoryServer:8224,Microsoft.ActiveDirectory.Management.Commands.GetADGroupMember

然后,我的脚本会导出我需要的所有广告组,但不会填充属于不同域的用户

广告就像:

Parent-Domain
Sub-Domain1 -> has all the AD Groups I am querying
Sub-Domain2
Sub-Domain3
Sub-Domain4

我已经尝试了其他一切都可以解决的在线问题,但无法解决我的问题。

$Groups = Get-ADGroup -Filter * -SearchBase 'OU=,OU=,OU=,DC=,DC=,DC='
$Groups | ForEach-Object {
$group = $_.Name
$members = $null
    Get-ADGroupMember -recursive $group | ForEach-Object {
        If($members) {
              $members=$members + ";" + $_.Name
           } Else {
              $members=$_.Name
           }
  }
New-Object -TypeName PSObject -Property @{
      GroupName = $group
      Members = $members
     }
} | Export-CSV "C:\temp\AD-Group-Members.csv" -NoTypeInformation -Encoding UTF8
埃尔多·奥伯

我认为这不是您的Powershell脚本的问题,而是小组范围的问题。组范围必须是“通用的”,才能从其他域中获取成员。

您也可以尝试查询全局编录。如果您的域控制器也激活了全局编录,则可以使用“服务器”参数查询他。全局目录通常在端口3268上侦听

Get-ADGroupMember -Identity $group -Recursive -Server domaincontroller.domain.com:3268

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章