Skip to content

Tenant Configuration Drift

The question it answers: Which tenant settings have drifted from the approved baseline, and since when?

Which tenant settings - Conditional Access, transport rules, Teams policies, Intune, Purview, Defender - have drifted from an approved baseline, and since when? The settings counterpart of ‘what changed since yesterday’.

Where in the appTenant › Defender & Security Operations › Configuration Drift (TCM)
WorkloadSecurity
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).
LicenceNone stated; the Tenant Configuration Management service principal must be set up in the tenant.
Report id (API and MCP)tenant.secops.configuration-drift
ColumnKeyType
SeveritySeverityStatus
WorkloadCategoryText
Resource / monitorSubjectLink
CheckSettingText
Monitor / statusValueText
FindingFindingText
Drifted propertiesDetailText
First reportedWhenDate
Active driftsNumberNumber

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: None stated; the Tenant Configuration Management service principal must be set up in the tenant.

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

PermissionAPIWhat it allowsNote
ConfigurationMonitoring.Read.AllMicrosoft GraphRead all Configuration Monitoring entities
Data sources it reads
  • GET /v1.0/admin/configurationManagement/configurationMonitors
  • GET /v1.0/admin/configurationManagement/configurationDrifts
GET /ir-api/v1/reports/tenant.secops.configuration-drift?size=100

An AI assistant reads it with the MCP tool get_report and the id tenant.secops.configuration-drift. The client needs the Read grant for Security. See Using the API.