6.2 Microsoft First-Party Connectors
Microsoft First-Party Connectors
By the end of this subsection, you will know every Microsoft connector available, which ones to enable, and how to verify each is working with diagnostic queries.
You enabled the two most critical connectors in Module 5. This subsection covers the remaining Microsoft connectors and teaches you to verify they are all healthy.
Complete connector inventory
| Connector | Tables | Setup | Cost | Enable when |
|---|---|---|---|---|
| M365 Defender (done) | Device*, Email*, CloudApp*, Identity*, Alert* | One-click | Per-table | Always |
| Entra ID (done) | SigninLogs, AADNonInteractive*, AuditLogs | Diagnostic settings | Billable | Always |
| Azure Activity | AzureActivity | Diagnostic settings | Free | Always — zero cost |
| Office 365 | OfficeActivity | One-click | Free | Always — zero cost |
| Microsoft Purview | PurviewAuditLog | Diagnostic settings | Billable | When DLP/insider risk monitoring needed |
| Azure Key Vault | AzureDiagnostics (KeyVault) | Diagnostic settings | Billable | When Key Vault is in scope |
| Azure Firewall | AzureDiagnostics (Firewall) | Diagnostic settings | Billable | When Azure Firewall deployed |
| Entra ID Protection | SecurityAlert (IPC) | Via M365 Defender | Free (alert data) | Usually flows via M365 Defender |
| Threat Intelligence | ThreatIntelligenceIndicator | API/TAXII | Free (table) | When TI feeds available |
Azure Activity — enable now (free)
Navigate to Sentinel, Data connectors, Azure Activity, Open connector page, select subscription, Connect. Takes 30 seconds.
This sends all Azure management plane events: resource creation, deletion, modification, role assignments, policy changes. Cost: zero. Value: critical for detecting attackers who compromise Azure credentials and create resources (cryptomining VMs), modify security settings (disable logging), or escalate privileges (assign Global Admin).
| |
| CategoryValue | EventCount |
|---|---|
| Administrative | 234 |
| Policy | 47 |
| Security | 8 |
| Alert | 2 |
Detection rule opportunity: Alert on Azure role assignments outside business hours or to users who have never held privileged roles:
| |
| TimeGenerated | Caller | OperationNameValue |
|---|---|---|
| 03:14 | compromised-admin@northgateeng.com | Microsoft.Authorization/roleAssignments/write |
Properties.requestbody contains the role definition and target principal. This is either a legitimate after-hours admin task (verify with the person) or an attacker escalating privileges. This query is a ready-made analytics rule for Module 10.Office 365 — enable now (free)
Navigate to Sentinel, Data connectors, Office 365, enable Exchange, SharePoint, and Teams. Takes 30 seconds.
This populates OfficeActivity with detailed user activity across all M365 services. The table is distinct from what the M365 Defender connector provides.
CloudAppEvents (Defender connector) captures inbox rule creation, OAuth consents, and app-level events. OfficeActivity (Office 365 connector) captures granular mailbox operations including MailItemsAccessed — the audit event that tells you exactly which emails an attacker read. For the Module 13 post-compromise checklist (subsection 13.6), you need OfficeActivity. For inbox rule detection, you need CloudAppEvents. Both connectors are required for complete investigation coverage.
| |
| OfficeWorkload | Operation | EventCount | Users |
|---|---|---|---|
| Exchange | MailItemsAccessed | 12,847 | 342 |
| Exchange | Send | 4,521 | 298 |
| SharePoint | FileAccessed | 8,234 | 187 |
| SharePoint | FileDownloaded | 1,247 | 89 |
| MicrosoftTeams | MessageSent | 3,421 | 234 |
Connector health dashboard — run at every shift start
After enabling all Microsoft connectors, this single query confirms your entire data pipeline:
| |
| TableName | EventCount | LastEvent | HoursAgo |
|---|---|---|---|
| AuditLogs | 142 | 14:28 | 0.1 |
| CloudAppEvents | 3,421 | 14:31 | 0.0 |
| DeviceProcessEvents | 12,847 | 14:32 | 0.0 |
| EmailEvents | 2,892 | 14:30 | 0.0 |
| SigninLogs | 1,234 | 14:29 | 0.0 |
| AADNonInteractiveUserSignInLogs | 8,742 | 14:32 | 0.0 |
| AzureActivity | 234 | 14:15 | 0.3 |
| OfficeActivity | 5,672 | 14:25 | 0.1 |
HoursAgo < 1 during business hours. Any table with HoursAgo > 4 during business hours indicates a connector problem. This query takes 5 seconds and confirms your entire data pipeline is healthy. Save it as a favorite in your workspace.Check your understanding
1. Azure Activity and Office 365 connectors are free. Is there any reason not to enable them?
2. You need to determine which specific emails an attacker read during a compromise. Which connector and table provide this?
3. A role assignment event appears in AzureActivity at 3:14 AM. What is the appropriate response?