Entra User Licence Assignment Direct vs. Inherited
The question it answers: Which licences are assigned to each user directly, and which are inherited from a group?
At a glance
Section titled “At a glance”| Where in the app | Entra ID › Users › Licence Assignment Direct vs. Inherited |
| Workload | Entra ID |
| Kind | Table |
| Data | Read from Microsoft 365 when someone first opens it, then kept for the report cache lifetime (Settings > Data & cache, 1 hour unless changed). It reads through PowerShell (Exchange Online or SharePoint Online), so the first load takes longer than a Graph report. |
| Licence | No extra licence needed. |
| Report id (API and MCP) | entra.users.licence-assignment-method |
Columns
Section titled “Columns”| Column | Key | Type |
|---|---|---|
| Display Name | DisplayName | Text |
| User Principal Name | UserPrincipalName | Text |
| Licence | SkuDisplayName | Text |
| Assigned By | AssignedBy | Text |
What it needs
Section titled “What it needs”Licence: No extra licence needed.
Application permissions on the IntensiveReports app registration (all permissions):
| Permission | API | What it allows | Note |
|---|---|---|---|
Organization.Read.All | Microsoft Graph | Read organization information | |
User.Read.All | Microsoft Graph | Read all users’ full profiles | |
GroupMember.Read.All | Microsoft Graph | Read all group memberships |
Data sources it reads
PowerShell: Get-MgSubscribedSku -All (GET /v1.0/subscribedSkus)PowerShell: Get-MgUser -All -Property AssignedLicenses, LicenseAssignmentStates (GET /v1.0/users)PowerShell: Get-MgGroup -GroupId (GET /v1.0/groups/{id}, per group-based assignment)
Through the API and MCP
Section titled “Through the API and MCP”GET /ir-api/v1/reports/entra.users.licence-assignment-method?size=100An AI assistant reads it with the MCP tool get_report and the id entra.users.licence-assignment-method. The client needs the Read grant for Entra ID. See Using the API.