PIM for Groups - Standing & Eligible Access
The question it answers: Which groups under PIM for Groups have permanent active members or owners instead of eligible ones?
PIM for Groups puts membership and ownership of a group behind just-in-time activation - often for groups that grant Azure, Intune or admin-portal access. Permanent active members of such groups defeat it. Role-assignable Groups shows current members; this report shows which memberships are standing, eligible or activated.
At a glance
Section titled “At a glance”| Where in the app | Entra ID › Identity Configuration › PIM for Groups |
| Workload | Entra ID |
| Kind | Findings list · dashboard tile |
| Data | A scan: it runs only when someone presses Run scan (or calls the API’s scan action) and can take minutes. The last result is kept until the next scan. |
| Licence | Microsoft Entra ID P2. |
| Report id (API and MCP) | entra.configuration.pim-for-groups |
Columns
Section titled “Columns”| Column | Key | Type |
|---|---|---|
| Severity | Severity | Status |
| Assignment | Category | Text |
| Group | Subject | Link |
| Access | Setting | Text |
| Principal | Value | Text |
| Finding | Finding | Text |
| Roles the group grants | Detail | Text |
| Since | When | Date |
| Count | Number | Number |
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).
What it needs
Section titled “What it needs”Licence: Microsoft Entra ID P2.
Application permissions on the IntensiveReports app registration (all permissions):
| Permission | API | What it allows | Note |
|---|---|---|---|
PrivilegedAssignmentSchedule.Read.AzureADGroup | Microsoft Graph | Read assignment schedules for access to Azure AD groups | |
PrivilegedEligibilitySchedule.Read.AzureADGroup | Microsoft Graph | Read eligibility schedules for access to Azure AD groups | |
Group.Read.All | Microsoft Graph | Read all groups |
Data sources it reads
GET /v1.0/groups?$filter=securityEnabled eq trueGET /v1.0/identityGovernance/privilegedAccess/group/assignmentScheduleInstances?$filter=groupId eq '{id}' ($batch)GET /v1.0/identityGovernance/privilegedAccess/group/eligibilityScheduleInstances?$filter=groupId eq '{id}' ($batch)
Through the API and MCP
Section titled “Through the API and MCP”GET /ir-api/v1/reports/entra.configuration.pim-for-groups?size=100POST /ir-api/v1/reports/entra.configuration.pim-for-groups/scanAn AI assistant reads it with the MCP tool get_report and the id entra.configuration.pim-for-groups. The client needs the Run scan grant for Entra ID. See Using the API.