# Microsoft Defender for AI Services alerts are flowing to the Microsoft Sentinel workspace via a single connector path

Defender for Cloud's AI threat protection plan detects attacks against Azure OpenAI and Azure AI Services accounts in real time.

Source: https://maester.dev/docs/tests/ZTA.61017

<!-- This file is generated by website/scripts/generate-test-docs.mjs. Do not edit manually. -->

## Overview

Defender for Cloud's AI threat protection plan detects attacks against Azure OpenAI and Azure AI Services accounts in real time. For those alerts to reach Microsoft Sentinel, two conditions must be met: the plan must be enabled at the subscription level, and exactly one connector path must forward alerts to the workspace — running more than one path simultaneously produces duplicate incidents. This check verifies both conditions are met.

When the Defender for AI Services plan is not enabled, attacks against Azure OpenAI and Azure AI Services accounts generate no security alerts regardless of how Sentinel is configured. Threat actors who target AI endpoints with prompt injection, jailbreak techniques, or data extraction queries can exploit this absence because there is no detection layer to observe or interrupt their activity. Without this plan, the organization cannot detect any of the AI-specific attacks in the [Defender for AI Services alert reference](https://learn.microsoft.com/azure/defender-for-cloud/alerts-ai-workloads) — prompt injection, jailbreak attempts, wallet exhaustion, and sensitive data exposure all go unobserved.

## Remediation

- [Defender for AI Services overview](https://learn.microsoft.com/azure/defender-for-cloud/ai-threat-protection)
- [Defender for AI Services alert reference](https://learn.microsoft.com/azure/defender-for-cloud/alerts-ai-workloads)
- [Enable Defender for AI Services pricing plan](https://learn.microsoft.com/azure/defender-for-cloud/ai-onboarding)
- [Ingest Microsoft Defender for Cloud alerts to Microsoft Sentinel (Tenant‑based and Legacy connectors)](https://learn.microsoft.com/azure/sentinel/connect-defender-for-cloud)
- [Ingest Microsoft Defender for Cloud incidents with Microsoft Defender XDR integration](https://learn.microsoft.com/azure/sentinel/ingest-defender-for-cloud-incidents)
- [Microsoft Sentinel + Defender XDR: preventing duplicate Defender for Cloud alerts](https://learn.microsoft.com/azure/defender-for-cloud/concept-integration-365#microsoft-sentinel-customers)

## Run it

The check runs as part of the whole assessment, with the ZeroTrustAssessment module installed:

```powershell
Install-Module ZeroTrustAssessment -Scope CurrentUser
Connect-Maester
Invoke-Maester -Pack ZTA -SkipBuiltIn
```

Leave out `-SkipBuiltIn` to run Maester's own checks in the same run.

<details>
<summary>About this check</summary>

| | |
| --- | --- |
| Severity | High |
| Effort to fix | Low |
| Impact on users | Low |
| Pillar | AI |
| Category | AI Threat Detection |
| Product | [Azure](/docs/tests/products/azure) |
| Feature | Microsoft Sentinel |
| Area | Logging and detection |
| Licence | Microsoft_Defender_for_AI_Services, Microsoft_Sentinel |
| Tenant | Workforce |

Product, feature, area and ATT&CK are Maester's: the assessment does not record them, so Maester keeps them in the pack's `taxonomy.json`.

</details>

<p class="mt-ms-note not-content"><svg class="mt-ms-note__logo" viewBox="0 0 21 21" aria-hidden="true"><rect width="10" height="10" fill="#f25022"/><rect x="11" width="10" height="10" fill="#7fba00"/><rect y="11" width="10" height="10" fill="#00a4ef"/><rect x="11" y="11" width="10" height="10" fill="#ffb900"/></svg><span>A Microsoft check, part of the <a href="/docs/tests/packs/zero-trust-assessment">Zero Trust Assessment</a> pack. Text from ZeroTrustAssessment 3.1.0, © Microsoft, <a href="/docs/tests/packs/zero-trust-assessment#licence">MIT licence</a>.</span></p>
