PIM Activation Patterns (30 days)
The question it answers: Who activated which privileged role in the last 30 days, how often and at what times?
Who activates which role, how often, when and why. A role activated almost every day is standing access in disguise - make it permanent with a narrower role, or question the need. Tier-0 roles activated at night or at weekends deserve a look, and one-word justifications defeat the purpose of asking.
At a glance
Section titled “At a glance”| Where in the app | Entra ID › Identity Configuration › PIM Activation Patterns |
| Workload | Entra ID |
| Kind | Findings list · dashboard tile |
| Data | Read from Microsoft 365 when someone first opens it, then kept for the report cache lifetime (Settings > Data & cache, 1 hour unless changed). |
| Licence | Microsoft Entra ID P2. |
| Report id (API and MCP) | entra.configuration.pim-activations |
Columns
Section titled “Columns”| Column | Key | Type |
|---|---|---|
| Severity | Severity | Status |
| Role | Category | Text |
| Person | Subject | Link |
| Check | Setting | Text |
| Activations | Value | Text |
| Finding | Finding | Text |
| Justifications | Detail | Text |
| Last activation | When | Date |
| Activations | 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 |
|---|---|---|---|
AuditLog.Read.All | Microsoft Graph | Read all audit log data | |
User.Read.All | Microsoft Graph | Read all users’ full profiles |
Data sources it reads
GET /v1.0/auditLogs/directoryAudits?$filter=loggedByService eq 'PIM' and activityDisplayName eq 'Add member to role completed (PIM activation)'
Through the API and MCP
Section titled “Through the API and MCP”GET /ir-api/v1/reports/entra.configuration.pim-activations?size=100An AI assistant reads it with the MCP tool get_report and the id entra.configuration.pim-activations. The client needs the Read grant for Entra ID. See Using the API.