GroupMember.Read.All
Read group memberships and basic group properties.
Least-privilege guidance: Prefer this over Group.Read.All when the task only needs membership and basic group information.
Implementation playbook
Grant it correctly and verify the token
Microsoft Graph authorizes the endpoint, token type, permission claim, user role, and resource together.
Why access still fails
- The app was granted a permission that does not cover the exact endpoint or method.
- The token contains delegated scopes when the app needs application roles, or application roles when a signed-in user is required.
- Consent was not completed, the token was not refreshed, or the signed-in user lacks the required Entra role or license.
- Hidden membership can require Member.Read.Hidden in addition to the normal group permission.
Recommended setup
- Confirm the exact endpoint and HTTP method, then select GroupMember.Read.All only if its Microsoft method documentation lists it.
- Choose delegated or application access and confirm this record supports that mode.
- Grant admin consent only after the application, publisher, tenant, and requested permission have been reviewed.
- Acquire a new token after the permission or consent change; old tokens do not gain new claims.
- Retest the smallest read or write operation before expanding the application workflow.
Verify
- Use Get-MgContext to confirm tenant, account, authentication type, and delegated scopes.
- For delegated tokens, verify the scp claim; for app-only tokens, verify the roles claim contains the expected permission.
- Confirm the token audience is Microsoft Graph and retry the exact endpoint with a new request ID.
Escalate when
- The endpoint documentation lists this permission, a new token contains the correct claim, and the request still returns 401/403.
- The same operation works for one identity or tenant but not another after role, license, ownership, and Conditional Access are compared.
- You can provide the UTC time, sanitized request/response, request ID, tenant/app IDs, token type, and granted permission list.
Inspect the active Graph PowerShell context
Get-MgContext | Select-Object ClientId,TenantId,Account,AuthType,ScopesRead-only. For app-only access, inspect the access token roles claim as well.
Permission evidence template
Permission: GroupMember.Read.All
Access mode: <delegated | application>
Endpoint and method: <GET https://graph.microsoft.com/v1.0/...>
UTC timestamp: <yyyy-mm-dd hh:mm:ssZ>
Request ID: <guid>Template only. Do not paste access tokens or secrets into tickets.
Permission modes
- Delegated
- Supported — admin consent required
- Application
- Supported — admin consent required
Common uses
- List groups
- Read group members
- Resolve transitive membership
Advertisement
