The Get-MsolGroupMember cmdlet in PowerShell gets the group members of the specified group in Microsoft Office 365. The members can be either users or groups.
The syntax to retrieve group members of the group is given below.
Get-MsolGroupMember
[-GroupObjectId <Guid>]
[-All]
[-MemberObjectTypes <String[]>]
[-SearchString <String>]
[-MaxResults <Int32>]
[-TenantId <Guid>]
[<CommonParameters>]
In this article, we will discuss how to use the Get-MsolGroupMember to get group members of the specified group and list Office 365 groups of which the user is a member with PowerShell.
Let’s understand the Get-MsolGroupMember cmdlet with examples.
How to Get All Members of a Group in Office 365
To get all members of a group in Office 365, use the Get-MsolGroupMember cmdlet with -GroupObjectId
parameter. The -GroupObjectId
parameter specifies the unique ID of the group from which we want to get members.
Get-MsolGroupMember -GroupObjectId f876f049-21b1-450d-8961-7e63f49f232e
This command retrieves all members of the specified group “f876f049-21b1-450d-8961-7e63f49f232e”.
To export all members of the group to the CSV file, use the Export-CSV file.
PS C:\> Get-MsolGroupMember -GroupObjectId f876f049-21b1-450d-8961-7e63f49f232e | Export-Csv -Path D:\PS_delete\group_members.csv -NoTypeInformation
How to Get All Members of Office 365 Group with Where-Object
To get all members of Office 365 MsolGroups, use the Get-MsolGroup cmdlet in PowerShell to retrieve the specific group object. The Get-MsolGroupMember command uses the group object to check the group object ID to retrieve all members of a group.
# Get a MsolGroup object $Group = Get-Msolgroup -All | Where-Object {$_.DisplayName -eq "Finance"} # Retrieve members of Msol group Get-MsolGroupMember -GroupObjectId $Group.ObjectId
In the above PowerShell script, the Get-MsolGroup uses the -All
parameter to retrieve all groups in Office 365 and pipes them to Where-Object
cmdlet to filter the group where the display name is equal to “Finance” and returns the group object. This command stores the “Finance” group in the $Group
variable.
The Get-MsolGroupMember cmdlet in PowerShell uses the -GroupObjectId
cmdlet to specify the group objectId and retrieve all members of a “Finance” group.
The output of the above command is given below.
PS C:\> $Group = Get-Msolgroup -All | Where-Object {$_.DisplayName -eq "Finance"}
PS C:\> $Group
ObjectId DisplayName GroupType Description
-------- ----------- --------- -----------
008f363f-5b3a-4899-8004-a2d140426802 Finance DistributionList This is the Finance Group
PS C:\> Get-MsolGroupMember -GroupObjectId $Group.ObjectId
GroupMemberType EmailAddress DisplayName
--------------- ------------ -----------
User [email protected] Samer Amberson
How to List Office 365 Groups Which User is Member of with PowerShell
To list Office 365 groups to which a user belongs using PowerShell, use the foreach loop to iterate the groups in Office 365 and check if a user is a member of the group with the Get-MsolGroupMember command.
foreach ($Group in (Get-MsolGroup -all)) { if (Get-MsolGroupMember -all -GroupObjectId $Group.ObjectId | where {$_.Emailaddress - eq "[email protected]"}) {$Group.Displayname} }
The foreach loop iterates over all Office 365 groups retrieved using the Get-MsolGroup cmdlet. The Get-MsolGroupMember command gets all the members of the specific group and pipes them to the Where-Object cmdlet to check if the user email address is equal to “[email protected]“. If the user belongs to the group, it prints the group name.
The output of the above command prints the Office 365 groups the user belongs to.
PS C:\> foreach ($Group in (Get-MsolGroup -all)) {if (Get-MsolGroupMember -all -GroupObjectId $Group.ObjectId | where {$_.Emailaddress -eq "[email protected]"}) {$Group.Displayname}}
Security
Finance
What is the Output of the Get-MsolGroupMember cmdlet?
The Get-MsolGroupMember cmdlet in PowerShell returns the objects that contain the following information:
- GroupMemberType: The group member type (User, Group, Contact or ServicePrincipal)
- EmailAddress: The primary email address of the group member.
- DisplayName: The display name of the group.
- ObjectId: The unique ID of the group.
Conclusion
I hope the above article on how to use the Get-MsolGroupMember cmdlet in PowerShell to get all members of the group is helpful to you.
You can find more topics about PowerShell Active Directory commands and PowerShell basics on the ShellGeek home page.