Skip to content

Stale Administrators

The question it answers: Which accounts hold privileged roles but have not signed in for longer than the inactive-privileged threshold?

Accounts holding privileged roles that nobody has used for longer than the inactive-privileged threshold (Settings > Report thresholds). Unused standing admin rights are pure risk: remove the role, or make it PIM-eligible.

Where in the appEntra ID › Identity Hygiene › Stale Administrators
WorkloadEntra ID
KindTable
DataBuilt from the tenant data IntensiveReports keeps in memory and refreshes in the background, so it opens at once.
LicenceMicrosoft Entra ID P1 (sign-in activity).
Report id (API and MCP)entra.security.stale-admins
ColumnKeyType
AccountDisplayNameLink
UPNSecondaryText
StatusCategoryStatus
Last sign-inDateDate
Privileged rolesDetailText
Account stateValueText

Licence: Microsoft Entra ID P1 (sign-in activity).

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

PermissionAPIWhat it allowsNote
RoleManagement.Read.DirectoryMicrosoft GraphRead all directory RBAC settings
User.Read.AllMicrosoft GraphRead all users’ full profiles
User-LifeCycleInfo.Read.AllMicrosoft GraphRead all users’ lifecycle information
AuditLog.Read.AllMicrosoft GraphRead all audit log data
Data sources it reads
  • GET /v1.0/roleManagement/directory/roleAssignments
  • GET /v1.0/users?$select=signInActivity
GET /ir-api/v1/reports/entra.security.stale-admins?size=100

An AI assistant reads it with the MCP tool get_report and the id entra.security.stale-admins. The client needs the Read grant for Entra ID. See Using the API.