Skip to content

Entra ID P1 / P2 Licence Compliance

The question it answers: Which members benefit from Conditional Access or PIM without holding the matching Entra ID P1 or P2 licence?

Members who benefit from Conditional Access (Entra ID P1) or from risk-based policies and Privileged Identity Management (Entra ID P2) without holding the matching licence. The features keep working - but the tenant is under-licensed, which surfaces in audits and true-ups.

Where in the appLicensing › Entra P1/P2 Compliance
WorkloadLicensing
KindTable
DataBuilt from the tenant data IntensiveReports keeps in memory and refreshes in the background, so it opens at once.
LicenceNone; Conditional Access policies need Microsoft Entra ID P1 and PIM eligibility Microsoft Entra ID P2 to exist.
Report id (API and MCP)entra.licensing.entra-premium-compliance
ColumnKeyType
UserDisplayNameLink
UPNUserPrincipalNameText
RequiresRequiresStatus
BecauseUsedBecauseText
Current licencesAssignedLicencesText

Licence: None; Conditional Access policies need Microsoft Entra ID P1 and PIM eligibility Microsoft Entra ID P2 to exist.

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

PermissionAPIWhat it allowsNote
User.Read.AllMicrosoft GraphRead all users’ full profiles
User-LifeCycleInfo.Read.AllMicrosoft GraphRead all users’ lifecycle information
Policy.Read.AllMicrosoft GraphRead your organization’s policies
Group.Read.AllMicrosoft GraphRead all groups
RoleManagement.Read.DirectoryMicrosoft GraphRead all directory RBAC settings
Organization.Read.AllMicrosoft GraphRead organization information
Data sources it reads
  • GET /v1.0/users
  • GET /v1.0/identity/conditionalAccess/policies
  • GET /v1.0/roleManagement/directory/roleEligibilityScheduleInstances
  • GET /v1.0/subscribedSkus
GET /ir-api/v1/reports/entra.licensing.entra-premium-compliance?size=100

An AI assistant reads it with the MCP tool get_report and the id entra.licensing.entra-premium-compliance. The client needs the Read grant for Licensing. See Using the API.