You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell跨AD域添加domain1用户到domain2安全组找不到对象报错问询

问题原因

Add-ADGroupMember : Cannot find an object with identity: 'testSecurityGroup' under: 'DC=domain1,DC=company,DC=com'.

出现该报错的核心原因是你脚本中-Server参数指定了domain1的域控制器,但是目标安全组testSecurityGroup属于domain2域,命令默认会在-Server参数指定的域下查找安全组,自然找不到不属于该域的组对象。

修复方案

跨域添加AD组成员的核心逻辑是:操作目标是domain2的安全组,所以-Server参数需要指向domain2的域控制器,同时确保传入的用户标识可以被domain2的域控制器识别为domain1的合法用户。

方案1:CSV中的userName字段已包含域标识(如domain1\用户名、用户名@domain1.company.com)

直接修改-Server参数为domain2的域控制器地址即可:

Import-Csv -Path "C:\Temp\test.csv" | ForEach-Object {
    Add-ADGroupMember -Server domain2.company.com -Identity "testSecurityGroup" -Members $_.'userName'
}

方案2:CSV中的userName仅为纯用户名(无域前缀)

需要手动拼接domain1的域前缀,避免domain2的域控制器无法识别用户所属域:

Import-Csv -Path "C:\Temp\test.csv" | ForEach-Object {
    $domainUser = "domain1\$($_.userName)"
    Add-ADGroupMember -Server domain2.company.com -Identity "testSecurityGroup" -Members $domainUser
}
注意事项
  • 两个域必须提前配置好信任关系(至少domain2信任domain1),否则无法将外域用户添加到当前域的安全组中
  • 运行脚本的账号需要同时具备domain2域中testSecurityGroup的成员修改权限,以及domain1域用户的读取权限
  • 如果仍然出现用户找不到的报错,可以将传入-Members参数的用户标识替换为用户的完整可分辨名称(DN)或对象GUID,兼容性更高

内容的提问来源于stack exchange,提问作者Codr4Life

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 03:36:02