Forum Discussion
Cloning O365 Group Memberships
- Jun 27, 2019
That depends on the specifics I guess. Here's a quick sample of what you can do with PowerShell.
List all groups a given user is a member of:
$dn = (Get-Mailbox user).DistinguishedName Get-Recipient -Filter "Members -eq '$dn'"
Use the above list to add another user as member:
Get-Recipient -Filter "Members -eq '$dn'" | % { Add-DistributionGroupMember $_.Name -Member anotheruser}That's a really basic code though and it assumes that all the groups are distribution ones. A bit more complex one will check the actual type and use the corresponding cmdlet:
$dn = (Get-Mailbox user).DistinguishedName Get-Recipient -Filter "Members -eq '$dn'" -RecipientTypeDetails GroupMailbox | % { Add-UnifiedGroupLinks $_.Name -LinkType Member -Links anotheruser } Get-Recipient -Filter "Members -eq '$dn'" -RecipientTypeDetails MailUniversalDistributionGroup | % { Add-DistributionGroupMember $_.Name -Member anotheruser }
That depends on the specifics I guess. Here's a quick sample of what you can do with PowerShell.
List all groups a given user is a member of:
$dn = (Get-Mailbox user).DistinguishedName Get-Recipient -Filter "Members -eq '$dn'"
Use the above list to add another user as member:
Get-Recipient -Filter "Members -eq '$dn'" | % { Add-DistributionGroupMember $_.Name -Member anotheruser}
That's a really basic code though and it assumes that all the groups are distribution ones. A bit more complex one will check the actual type and use the corresponding cmdlet:
$dn = (Get-Mailbox user).DistinguishedName
Get-Recipient -Filter "Members -eq '$dn'" -RecipientTypeDetails GroupMailbox | % { Add-UnifiedGroupLinks $_.Name -LinkType Member -Links anotheruser }
Get-Recipient -Filter "Members -eq '$dn'" -RecipientTypeDetails MailUniversalDistributionGroup | % { Add-DistributionGroupMember $_.Name -Member anotheruser }
- JinxerFelixMay 25, 2022Copper ContributorI'm running the script with the correct information inserted in the "user" and "another user" entry points. All copy and pasted without additional edits.
The first time I ran the script it completed correctly and copied the 16 groups from the source user to the target user.
Every consecutive execution of the script is adding every group in our organization to the target user. Same source user. Even running the script again with the original source/target the target now receives all groups instead of the original 16. No errors reported in the PS window. - MarcoCastroFeb 12, 2021Copper Contributor
VasilMichev those scripts you provided, after the first one is used, you say
"Use the above list to add another user as member:"
does that second one mean that if the first user has, say, 20 groups, will the second user get added to those 20 groups.
I am just very worried about typing in a command that will alter the system in a way that i did not intend. Thank you. - Sean VriesenJun 27, 2019Copper Contributor
Thanks very much indeed, VasilMichev! This code worked perfectly. Appreciate the help!
All the best!