首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Powershell将用户从多个AD组复制到新的AD组

使用Powershell将用户从多个AD组复制到新的AD组
EN

Stack Overflow用户
提问于 2021-10-20 10:39:48
回答 1查看 73关注 0票数 0

我试图将多个用户从一对2或3个组复制到一个新组中。有30个组需要转移到10个新的组。

代码语言:javascript
复制
Example:
Oldgroup1, Oldgroup2, Oldgroup3 > NewGroup1
Oldgroup4, Oldgroup5 > NewGroup2

我正在考虑foreach循环,但无法确定如何将多个老组绑定到新组,因为来自旧组的成员可能会有所不同。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-20 10:52:17

在字典中组织新旧组之间的映射:

代码语言:javascript
复制
$groupMappings = @{
  'NewGroup1' = 'Oldgroup1', 'Oldgroup2', 'Oldgroup3'
  'NewGroup2' = 'Oldgroup4', 'Oldgroup5'
}

然后,对于每个映射条目:

  • 获取旧组的成员
  • 从结果
  • 中删除重复项,将它们添加到新的组

代码语言:javascript
复制
foreach($entry in $groupMappings.GetEnumerator()){
  # Fetch members of all the old groups, keep only unique set of users
  $members = $entry.Value |Get-ADGroupMember |Where-Object objectClass -eq user |Sort-Object -Unique objectGUID

  # Add them all, one by one (this way the whole request wont fail if any one member is already a member of the target group)
  foreach($member in $members){
    Add-ADGroupMember -Identity $entry.Name -Member $member
  }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69644496

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档