如何将 Office 365 群组成员资格复制到另一个群组?

How to copy Office 365 group membership to another group?

我希望有一个 powershell 命令可以将一个 O365 组的组成员资格复制到另一个 O365 组。我从网上得到这个,但它不起作用,因为我的源组 "is not a valid mailbox recipient."

Get-DistributionGroupMember -Identity "Source Group Name" |% {Add-DistributionGroupMember -Identity "Destination Group Name" -Member $_.PrimarySmtpAddress}

试试这个:

$members = Get-DistributionGroupMember -Identity "Source Group Name"

Add-DistributionGroupMember -Identity "Destination Group Name" -Member $members

如果这不起作用:

$members = Get-DistributionGroupMember -Identity "Source Group Name"
foreach ($item in $members) {
    Add-DistributionGroupMember -Identity "Destination Group Name" -member $item
}

全部取决于 -member 参数接受数组还是单个对象。该 cmdlet 的文档特定于 exchange 而不是 OFfice 365,并且可能有点过时。该文档似乎表明 -member 参数不会接受对象数组,因此我怀疑您必须使用第二种方法。

这可能是众所周知的,但对于那些将来搜索此答案的人来说,Office 365 组在 powershell 中称为统一组。所以我最终弄清楚了如何使用下面的代码来做到这一点:

$members = Get-UnifiedGroupLinks -Identity "Source O365 Group Name"
foreach ($item in $members) {
    Add-UnifiedGroupLinks -Identity "Destination O365 Group Name" -LinkType Members -Links $item.primarysmtpaddress
}

感谢您帮助构建代码 Zack A!