Skip to content

AI Agent Identity Inventory

The question it answers: Which AI agent identities exist in the tenant, what can they access, and does each have an accountable sponsor?

AI agents built with Copilot Studio, Azure AI Foundry and similar tools get their own Entra identities. They can hold permissions, act on data and run without a person watching. Every agent should have a sponsor accountable for it and an owner who manages it.

Where in the appEntra ID › Identity Configuration › AI Agent Identities
WorkloadEntra ID
KindFindings list · dashboard tile
DataRead from Microsoft 365 when someone first opens it, then kept for the report cache lifetime (Settings > Data & cache, 1 hour unless changed).
LicenceMicrosoft Entra Agent ID (part of Microsoft Agent 365 / Entra licensing for agents).
Report id (API and MCP)entra.configuration.agent-identities
ColumnKeyType
SeveritySeverityStatus
StateCategoryText
AgentSubjectLink
CheckSettingText
Sponsors / ownersValueText
FindingFindingText
DetailDetailText
Last sign-inWhenDate
App permissionsNumberNumber

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).

Licence: Microsoft Entra Agent ID (part of Microsoft Agent 365 / Entra licensing for agents).

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

PermissionAPIWhat it allowsNote
AgentIdentity.Read.AllMicrosoft GraphRead all agent identities
Application.Read.AllMicrosoft GraphRead all applications
AuditLog.Read.AllMicrosoft GraphRead all audit log datalast sign-in
Data sources it reads
  • GET /v1.0/servicePrincipals/microsoft.graph.agentIdentity
  • GET .../owners, .../sponsors, .../appRoleAssignments ($batch)
  • GET /beta/reports/servicePrincipalSignInActivities (cached)
GET /ir-api/v1/reports/entra.configuration.agent-identities?size=100

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