To list admin role group members in Exchange Online, read every role group with Get-RoleGroup and each group's members with Get-RoleGroupMember. People who hold Global Administrator in Microsoft Entra ID reach Organization Management through a group Exchange manages itself, so check the Entra roles as well as the Exchange role groups.
| Method | Best fit |
|---|---|
| PowerShell | A CSV of every Exchange role group with 1 row per member. |
| Admin centre | Reading the members, managers and write scope of 1 role group. |
| Altivane | Recommended for admin access reviews, with direct members of the powerful groups marked and roles assigned outside groups listed. |
Before you start
Use an account that can read role assignments. Microsoft lists Organization Management for role assignments in Exchange Online and says members of View-Only Management can view their configuration. Changing a role group needs the Role Management role, which Organization Management holds by default.
Know where admin rights come from. A role group gives its members the management roles assigned to it. Several Microsoft Entra roles map to role groups: Microsoft lists Global Administrator and Exchange Administrator as Organization Management, Global Reader as View-Only Organization Management and Exchange Recipient Administrator as Recipient Management. The examples read and export; they add or remove no member and change no role group.
Option 1
List admin role group members with PowerShell
Install the module once, then connect and export 1 row for each member of each role group.
# Install once, if the module is not already installed.
Install-Module ExchangeOnlineManagement -Scope CurrentUser$ErrorActionPreference = 'Stop'
Connect-ExchangeOnline -ShowBanner:$false
try {
$groups = @(Get-RoleGroup -ResultSize Unlimited)
$report = @(foreach ($group in $groups) {
foreach ($member in Get-RoleGroupMember -Identity $group.Name -ResultSize Unlimited) {
[pscustomobject]@{
RoleGroup = $group.Name
Member = $member.Name
DisplayName = $member.DisplayName
Address = "$($member.PrimarySmtpAddress)"
Type = "$($member.RecipientTypeDetails)"
Roles = ($group.Roles -join '; ')
}
}
})
if ($report.Count -eq 0) {
Write-Output "None of the $($groups.Count) role groups has a member."
} else {
$report | Sort-Object RoleGroup, Member |
Export-Csv -Path './exchange-role-group-members.csv' -NoTypeInformation -Encoding utf8
Write-Output "$($report.Count) members of $($groups.Count) role groups exported."
}
} finally {
Disconnect-ExchangeOnline -Confirm:$false
}The CSV has 1 row for each role group and member, with the group's roles beside it. A member can be a user, a mail-enabled security group or another role group, so a group in the list gives the same rights to everyone in it.
List the role groups 1 person belongs to
Reconnect with Connect-ExchangeOnline, then filter role groups by the person's distinguished name, as Microsoft's example does.
# Run while connected to Exchange Online. Replace the example account.
$dn = (Get-User -Identity 'person@example.com').DistinguishedName -replace "'", "''"
Get-RoleGroup -Filter "Members -eq '$dn'" | Select-Object Name, DescriptionOption 2
Review role groups in the admin centre
- Sign in to the Exchange admin centre for the correct tenant.
- Go to Roles > Admin roles, which lists every built-in and custom role group with its description.
- Select a role group by its name. The General tab shows Managed by and Write scope, and the Assigned tab lists its members.
- Close the pane without choosing Add, Delete or Edit basics, so nothing changes.
This suits checking 1 role group. It does not suit a review of every group, since the admin centre shows the members of 1 group at a time and offers no export of them.
Option 3 ยท Recommended for admin access reviews
Run Altivane's Admin Roles report
- Open Altivane and choose the tenant.
- Run the Admin Roles report for Exchange Online.
- Open the Excel workbook and read Role group members: 1 row per member with the Role Group, Member, Member Address, Member Type and Entra Role.
- Read Role groups for each group's Members, Roles and Managed by, and Direct role assignments for roles given outside role groups.
Altivane marks Review on people added straight to Organization Management, Recipient Management, Discovery Management, Compliance Management or Security Administrator, and OK on members that come through an Entra role. It names the Entra role behind each group Exchange manages, such as Global Administrator or Exchange Administrator, so those members read apart from people added in Exchange. The script leaves out roles assigned directly to a user, group or application; the last table lists them.
Contact usCommon questions
Why is a Global Administrator not listed by name?
Microsoft adds a group named TenantAdmins_ followed by a number to Organization Management, and Global Administrators are its members through Microsoft Entra ID. Its membership can't be changed in Exchange. To see who holds the Entra roles, see how to list admin role assignments in Microsoft Entra ID.
Can I change the roles of a built-in role group?
Microsoft says not to. Copy the built-in role group and change the copy, or create a custom role group. Built-in role groups can't be removed or renamed.
Why does a member added today not have the rights yet?
Microsoft says people may have to sign out and sign in again before a change to their role group membership takes effect.
Microsoft references
Technical references checked on 7 November 2026. The example scripts have been reviewed and syntax checked; they have not been run against a live tenant.