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

Active Directory用户组跨用户复制PowerShell脚本报错排查请求

解决AD用户组复制脚本的报错问题

嘿,我来帮你搞定这个PowerShell脚本的问题!你遇到的那个「找不到接受参数'Microsoft.ActiveDirectory.Management.ADPropertyValueCollection'的位置参数」报错,其实是因为Add-ADGroupMember的参数用法不对,咱们一步步来修正:

问题根源

你原来的脚本最后一行直接把组的DN集合通过管道传给Add-ADGroupMember,但这个命令默认不会自动把管道输入绑定到组的标识参数上,导致它没法识别传入的集合类型,所以抛出了参数错误。

修正后的脚本

把最后一行改成逐个遍历组的方式,就能正常工作了,记得替换里面的占位符哦:

# 替换为实际的源用户名、目标用户名和你的AD域名
$CopyFromUser = Get-ADUser "source_user_name" -Server "your_domain.com" -Properties MemberOf
$CopyToUser = Get-ADUser "target_user_name" -Server "your_domain.com" -Properties MemberOf

# 筛选出源用户有但目标用户没有的组,逐个添加目标用户到这些组里
$CopyFromUser.MemberOf | Where-Object { $CopyToUser.MemberOf -notcontains $_ } | ForEach-Object {
    Add-ADGroupMember -Identity $_ -Members $CopyToUser -Server "your_domain.com"
}

pause

关键修正点

  • 用ForEach-Object遍历每个需要添加的组,确保每个组单独被Add-ADGroupMember处理
  • 明确指定-Identity参数来传入组的DN,这是Add-ADGroupMember识别组的正确方式
  • 保留-Server参数确保命令指向正确的AD域控制器,避免环境混乱

额外注意事项

  • 运行脚本的账号必须拥有添加AD组成员的权限,不然会报权限不足的错误
  • 用户名和域名最好用双引号括起来,避免遇到包含特殊字符的名称时出问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.27 18:52:36