Skip to content

User Access 360

The question it answers: What can one user reach: roles, groups, licences, owned objects, devices, apps, Conditional Access policies and Send As rights?

Everything one user can reach, on one page: directory roles (active and eligible, direct or through groups), every group they are in (including nested), licences and how they were assigned, objects they own, their devices, enterprise apps assigned to them, Conditional Access policies that include or exclude them, and mailboxes they can send as. Helpdesk, audit and leaver checks all need this view.

Where in the appEntra ID › Identity Governance & Lifecycle › User Access 360
WorkloadEntra ID
KindFindings list · dashboard tile
DataRead from Microsoft 365 when someone first opens it, then kept for 10 minutes. It reads through PowerShell (Exchange Online or SharePoint Online), so the first load takes longer than a Graph report.
LicenceNone; PIM eligibility needs Entra ID P2.
Report id (API and MCP)entra.governance.user-access-360
ColumnKeyType
SeveritySeverityStatus
Access typeCategoryText
ItemSubjectLink
CheckSettingText
HowValueText
NoteFindingText
DetailDetailText
DateWhenDate
CountNumberNumber

A findings list hides columns that no row fills. Severity is Critical, Serious, Warning, OK or Info; rows rated Critical, Serious or Warning need attention (Working with findings).

ParameterKey (API)RequiredDescription
User principal nameupnYesThe user’s sign-in name (or object id).

Licence: None; PIM eligibility needs Entra ID P2.

Application permissions on the IntensiveReports app registration (all permissions):

PermissionAPIWhat it allowsNote
User.Read.AllMicrosoft GraphRead all users’ full profiles
GroupMember.Read.AllMicrosoft GraphRead all group memberships
RoleManagement.Read.DirectoryMicrosoft GraphRead all directory RBAC settings
Application.Read.AllMicrosoft GraphRead all applications
Device.Read.AllMicrosoft GraphRead all devices
Policy.Read.AllMicrosoft GraphRead your organization’s policies
Exchange.ManageAsAppOffice 365 Exchange OnlineManage Exchange As ApplicationSend As rights
Data sources it reads
  • GET /v1.0/users/{upn}
  • GET /v1.0/users/{id}/transitiveMemberOf
  • GET /v1.0/users/{id}/ownedObjects
  • GET /v1.0/users/{id}/registeredDevices
  • GET /v1.0/users/{id}/appRoleAssignments
  • GET /v1.0/identity/conditionalAccess/policies
  • role assignments + PIM eligibility (cached)
  • Get-EXORecipientPermission -Trustee {upn}
GET /ir-api/v1/reports/entra.governance.user-access-360?size=100&upn=...

An AI assistant reads it with the MCP tool get_report and the id entra.governance.user-access-360. The client needs the Read grant for Entra ID. See Using the API.