Skip to content

Commit 0bd1fd1

Browse files
committed
Merge branch 'main' of https://github.com/MicrosoftDocs/defender-docs-pr into mdi-sensors-toc
2 parents 40c5e64 + 71a8135 commit 0bd1fd1

File tree

9 files changed

+172
-15
lines changed

9 files changed

+172
-15
lines changed
Lines changed: 51 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,74 @@
11
---
22
title: DLP content inspection
33
description: This article describes the process Defender for Cloud Apps follows when performing DLP content inspection on data in your cloud.
4-
ms.date: 01/29/2023
4+
ms.date: 06/26/2025
55
ms.topic: how-to
66
---
77
# DLP content inspection in Microsoft Defender for Cloud Apps
88

99

10+
Data loss prevention (DLP) in Microsoft Defender for Cloud Apps uses content inspection to detect sensitive information in files. When content inspection is enabled, Defender for Cloud Apps analyzes files for text patterns defined by expressions. Text that meets these expressions is treated as a match and can be used to determine a policy violation.
1011

11-
If you enable content inspection, you can choose to use preset expressions or to search for other customized expressions.
12+
You can use preset or custom expressions and define a threshold for when a match constitutes a violation. For example, you can set a threshold of 10 to alert when a file contains at least 10 credit card numbers.
1213

13-
You can specify a regular expression to exclude a file from the results. This option is highly useful if you have an inner classification keyword standard that you want to exclude from the policy.
14+
Matched text is replaced with "X" characters, and the surrounding context (100 characters before and after the match) is masked. Numbers in the context are replaced with "#" and aren't stored. To expose the final four digits of a match, enable the **Unmask the last four characters of a match** setting in the file policy.
1415

15-
You can decide set the minimum number of content violations that you want to match before the file is considered a violation. For example, you can choose 10 if you want to be alerted on files with at least 10 credit card numbers found within its content.
16+
You can also define which file elements are inspected—content, metadata, or file name. By default, inspection applies to both content and metadata. This approach allows inspection of protected files, detection of sensitive data, enforcement of compliance, and application of governance controls, while reducing false positives and aligning enforcement with internal classification standards.
17+
18+
## Prerequisites
19+
20+
To inspect encrypted files, and enable scanning of labels a [Global Administrator](/entra/identity/enterprise-apps/configure-admin-consent-workflow) must first grant one‑time admin consent to Defender for Cloud Apps in Microsoft Entra ID.
21+
22+
To do this, in the Defender portal go to **Settings > Cloud Apps > Microsoft Information Protection > Inspect protected files**, and select **Grant permission**.
1623

17-
When content is matched against the selected expression, the violation text is replaced with "X" characters. By default, violations are masked and shown in their context displaying 100 characters before and after the violation. Numbers in the context of the expression are replaced with "#" characters and are never stored within Defender for Cloud Apps. When creating a file policy, if you've enabled an inspection method, then you can select the option to **Unmask the last four characters of a match** to unmask the last four characters of the violation itself. It's necessary to set which data types the regular expression searches: content, metadata and/or file name. By default it searches the content and the metadata.
1824

1925
## Content inspection for protected files
2026

21-
Defender for Cloud Apps allows admins to grant Defender for Cloud Apps permission to decrypt encrypted files and scan their content for violations. This consent is also required to enable scanning labels on encrypted files.
27+
Once consent is granted, Defender for Cloud Apps provisions the Microsoft Cloud App Security (Internal) app in your tenant. The app uses the Azure Rights Management Services > Content.SuperUser permission to decrypt and inspect protected files.
28+
29+
The following app IDs apply based on your Microsoft cloud environment:
30+
31+
**App IDs**
32+
33+
| Environment | App ID |
34+
|--------------|---------|
35+
| Public | 25a6a87d-1e19-4c71-9cb0-16e88ff608f1 |
36+
| Fairfax | bd5667e4-0484-4262-a9db-93faa0893899 |
37+
| GCCM | 23105e90-1dfc-497a-bb5d-8b18a44ba061 |
38+
39+
>[!NOTE]
40+
>App IDs are internal service principals used by Defender for Cloud Apps in Public, Fairfax, and GCC‑M environments to inspect and enforce DLP policies on protected files.
41+
>Don't remove or disable these App IDs. Doing so breaks inspection and prevent DLP policies from applying to protected files.
42+
>Always verify that the App ID for your environment is present and enabled.
43+
44+
## Configure Microsoft Information Protection settings
2245

2346
In order to give Defender for Cloud Apps the necessary permissions:
2447

25-
1. Go to **Settings** and then **Microsoft Information Protection**.
26-
2. Under **Inspect protected files**, select **Grant permission** to grant Defender for Cloud Apps permission in Microsoft Entra ID.
27-
3. Follow the prompt to allow the required permissions in Microsoft Entra ID.
28-
4. You can configure the settings per file policy to determine which policies will scan protected files.
48+
1. Go to **Settings** > **Microsoft Information Protection**.
49+
1. Under **Microsoft Information Protection settings**, configure one or both of the following options:
50+
51+
- **Automatically scan new files for Microsoft Information Protection sensitivity labels and content inspection warnings.** When enabled, the App connector scans new files for embedded sensitivity labels from Microsoft Information Protection.
52+
53+
- **Only scan files for Microsoft Information Protection sensitivity labels and content inspection warnings from this tenant.** When enabled, only sensitivity labels applied within your tenant are scanned. Labels applied by external tenants are disregarded.
54+
55+
1. After selecting your options, select **Save** to apply your changes.
56+
57+
## Configure file policies for protected files
58+
59+
1. In the Defender portal, go to **Settings > Cloud Apps > Policies > Policy management**.
60+
1. Follow the steps to [create a new file policy](data-protection-policies.md#create-a-new-file-policy).
61+
1. Select either **Apply to all files**, or **Apply to selected files** to specify which files to scan. This option is useful if you have an inner classification keyword standard that you want to exclude from the policy.
62+
1. Select **Inspection method** > **Data Classification Service** to enable content inspection for the policy.
63+
1. Check both boxes - **Inspect protected files** and **Unmask the last 4 characters of a match**.
64+
65+
:::image type="content" source="media/content-inspection/inspection-method-data-classification-service.png" alt-text="Screenshot that shows the Data classification service inspection method.":::
66+
2967

3068
## Next steps
3169

32-
> [!div class="nextstepaction"]
33-
> [Control cloud apps with policies](control-cloud-apps-with-policies.md)
70+
- [Tutorial: Discover and protect sensitive information in your organization](tutorial-dlp.md)
71+
- [Learn how to control cloud apps using policies](control-cloud-apps-with-policies.md)
72+
- [Integrate with Microsoft Purview for information protection](azip-integration.md)
3473

3574
[!INCLUDE [Open support ticket](includes/support.md)]
28.5 KB
Loading

CloudAppSecurityDocs/protect-box.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ In addition to monitoring for potential threats, you can apply and automate the
4747

4848
| Type | Action |
4949
| ---- | ---- |
50-
| Data governance | - Change shared link access level on folders<br />- Put folders in admin quarantine<br />- Put folders in user quarantine<br />- Remove a collaborator from folders<br />- Remove direct shared links on folders<br />- Remove external collaborators on folders<br />- Send DLP violation digest to file owners<br />- Send violation digest to last file editor<br />- Set expiration date to a folder shared link<br /> - Trash folder |
50+
| Data governance | - Change shared link access level on folders<br />- Put folders in admin quarantine<br />- Put folders in user quarantine<br />- Remove a collaborator from folders<br />- Remove direct shared links on folders<br/> - Send policy-match digest to file owners<br />- Send violation digest to last file editor<br />- Set expiration date to a folder shared link<br /> - Trash folder |
5151
| User governance | - Suspend user<br />- Notify user on alert (via Microsoft Entra ID)<br />- Require user to sign in again (via Microsoft Entra ID)<br />- Suspend user (via Microsoft Entra ID) |
5252

5353
For more information about remediating threats from apps, see [Governing connected apps](governance-actions.md).

defender-xdr/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -293,6 +293,8 @@
293293
href: advanced-hunting-devicetvmsoftwarevulnerabilities-table.md
294294
- name: DeviceTvmSoftwareVulnerabilitiesKB
295295
href: advanced-hunting-devicetvmsoftwarevulnerabilitieskb-table.md
296+
- name: DisruptionAndResponseEvents
297+
href: advanced-hunting-disruptionandresponseevents-table.md
296298
- name: EmailAttachmentInfo
297299
href: advanced-hunting-emailattachmentinfo-table.md
298300
- name: EmailEvents
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
---
2+
title: DisruptionAndResponseEvents table in the advanced hunting schema
3+
description: Learn about the DisruptionAndResponseEvents table in the advanced hunting schema
4+
search.appverid: met150
5+
ms.service: defender-xdr
6+
ms.subservice: adv-hunting
7+
f1.keywords:
8+
- NOCSH
9+
ms.author: maccruz
10+
author: schmurky
11+
ms.localizationpriority: medium
12+
manager: dansimp
13+
audience: ITPro
14+
ms.collection:
15+
- m365-security
16+
- tier3
17+
ms.custom:
18+
- cx-ti
19+
- cx-ah
20+
ms.topic: reference
21+
ms.date: 06/11/2025
22+
---
23+
24+
# DisruptionAndResponseEvents (Preview)
25+
26+
[!INCLUDE [Microsoft Defender XDR rebranding](../includes/microsoft-defender.md)]
27+
28+
29+
30+
> [!IMPORTANT]
31+
> Some information relates to prereleased product which might be substantially modified before it's commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
32+
33+
34+
The `DisruptionAndResponseEvents` table in the [advanced hunting](advanced-hunting-overview.md) contains information about [automatic attack disruption](automatic-attack-disruption.md) events in Microsoft Defender XDR. These events include both block and policy application events related to triggered attack disruption policies, and automatic actions that were taken across related workloads.
35+
36+
Users can use this table to increase their visibility and awareness of active, complex attacks disrupted by automatic attack disruption. Understanding the scope of even complex attacks, their context, impact, and why disruption actions were taken, can help users make better and faster decisions and allocate resources more efficiently.
37+
38+
This advanced hunting table is populated by records from various Microsoft security services. If your organization hasn’t deployed the service in Microsoft Defender XDR, queries that use the table aren’t going to work or return complete results. For more information about how to deploy supported services in Defender XDR, read [Deploy supported services](deploy-supported-services.md).
39+
40+
Use this reference to construct queries that return information from this table.
41+
42+
> [!TIP]
43+
> For detailed information about the events types (`ActionType` values) supported by a table, use the built-in schema reference available in Microsoft Defender XDR.
44+
45+
For information on other tables in the advanced hunting schema, [see the advanced hunting reference](advanced-hunting-schema-tables.md).
46+
47+
48+
| Column name | Data type | Description |
49+
|-------------|-----------|-------------|
50+
| `Timestamp` | `datetime` | Date and time when the event was recorded |
51+
| `ActionType` | `string` | Type of disruption action taken, for example: ContainedUserLogonBlocked, ContainedUserSmbFileOpenBlocked, SafeBootGuardApplied |
52+
| `DeviceId` | `string` | Unique identifier for the device that reported the event; the reporting device can be the one that blocked the access, the compromised device itself, or even a different device that is aware of the attack |
53+
| `SourceDeviceId` | `string` | Unique identifier for the device that the attack originated from |
54+
| `TargetDeviceId` | `string` | Unique identifier for the device that was targeted or attacked |
55+
| `TargetDeviceName ` | `string` | Name of the device that was targeted or attacked |
56+
| `TargetDomainName ` | `string` | Domain name of the device that was targeted or attacked |
57+
| `DeviceName` | `string` | Name of the device that reported the event; the reporting device can be the one that blocked the access, the compromised device itself, or even a different device that is aware of the attack |
58+
| `DomainName` | `string` | Domain name that the device that reported the event is joined to; the reporting device can be the one that blocked the access, the compromised device itself, or even a different device that is aware of the attack |
59+
| `InitiatingProcessId` | `integer` | Process ID (PID) of the process that triggered that block action, based on the perspective of the reporting device |
60+
| `InitiatingProcessFileName` | `string` |Name of the process that triggered the block action, based on the perspective of the reporting device |
61+
| `SourceUserSid` | `string` | The security identifier of the account conducting the malicious activity |
62+
| `SourceUserName` | `string` | The user name of the account conducting the malicious activity |
63+
| `SourceUserDomainName` | `string` | The domain name of the account conducting the malicious activity |
64+
| `SourceIPAddress` | `string` | IP address where the attacker communication originated from and was blocked by automatic attack disruption |
65+
| `SourcePort` | `integer` | Port where the attacker communication originated from |
66+
| `IPAddress` | `string` | IP address that the attacker attempted to access |
67+
| `Port` | `string` | Port that the attacker attempted to access |
68+
| `SourceDeviceName` | `string` | Host name of the device where the attack originated from |
69+
| `SourceDomainName` | `string` | Domain name of the device where the attack originated from |
70+
| `AuthenticationProtocol` | `string` | Authentication protocol that the compromised user used to sign in; possible values: Undefined, NTLM, Kerberos |
71+
| `Service` | `string` | Name of the service the attacker attempted to use, if the attacker signed in using Kerberos or NTLM; for example: SMB, HTTP, cifs, SMB, host, ldap, SMB, krbtgt |
72+
| `InterfaceUuidSourceDomainName` | `string` | Unique identifier (UUID) for the Remote Procedure Call (RPC) interface that the attacker attempted to access |
73+
| `InterfaceFriendlyName` | `string` |Friendly name of the interface represented by the interface UUID |
74+
| `FileName` | `string` | Name of the file that the attacker attempted to access |
75+
| `ShareName` | `string` | Name of the share location that the attacker attempted to access |
76+
| `LogonType` | `string` | Type of logon session the user attempted; possible values: interactive, remote interactive (RDP), network, batch job, service |
77+
| `LogonId ` | `long` | Identifier for a logon session; this is unique on the same device only between restarts |
78+
| `SessionId ` | `long` | Unique number assigned to a user by a website's server for the duration of the visit or session |
79+
| `CompromisedAccountCount` | `integer` | Number of compromised accounts that are part of the policy |
80+
| `PolicyId` | `string` | Unique identifier for the policy |
81+
| `PolicyName` | `string` | Name of the policy |
82+
| `PolicyVersion` | `string` | Version of the policy |
83+
| `PolicyHash` | `string` | Unique hash of the policy |
84+
| `DataSources` | `array` |Products or services that provided information for the event; for example: Microsoft Defender for Endpoint |
85+
| `IsPolicyOn` | `boolean` |Indicates the current state of the policy on the device at the time of the disruption event; possible values: true (the policy is on, therefore it was applied or enforced), false (the policy was turned off or revoked from the device) |
86+
|`ReportType` | `string` | The nature and impact level of the reported event; possible values: Prevented (the action, such as a connection or authentication attempt, was fully blocked before execution), Blocked (an active connection or session was forcibly terminated, with partial impact on the device), PolicyUpdated (the client received and possibly applied a new policy) |
87+
88+
## Related topics
89+
- [Advanced hunting overview](advanced-hunting-overview.md)
90+
- [Learn the query language](advanced-hunting-query-language.md)
91+
- [Use shared queries](advanced-hunting-shared-queries.md)
92+
- [Hunt across devices, emails, apps, and identities](advanced-hunting-query-emails-devices.md)
93+
- [Understand the schema](advanced-hunting-schema-tables.md)
94+
- [Apply query best practices](advanced-hunting-best-practices.md)

defender-xdr/advanced-hunting-schema-tables.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@ The following reference lists all the tables in the schema. Each table name link
9090
| **[DeviceTvmSoftwareInventory](advanced-hunting-devicetvmsoftwareinventory-table.md)** | Inventory of software installed on devices, including their version information and end-of-support status |
9191
| **[DeviceTvmSoftwareVulnerabilities](advanced-hunting-devicetvmsoftwarevulnerabilities-table.md)** | Software vulnerabilities found on devices and the list of available security updates that address each vulnerability |
9292
| **[DeviceTvmSoftwareVulnerabilitiesKB](advanced-hunting-devicetvmsoftwarevulnerabilitieskb-table.md)** | Knowledge base of publicly disclosed vulnerabilities, including whether exploit code is publicly available |
93+
| **[DisruptionAndResponseEvents](advanced-hunting-disruptionandresponseevents-table.md)** (Preview)| [Automatic attack disruption](automatic-attack-disruption.md) events in Microsoft Defender XDR|
9394
| **[EmailAttachmentInfo](advanced-hunting-emailattachmentinfo-table.md)** | Information about files attached to emails |
9495
| **[EmailEvents](advanced-hunting-emailevents-table.md)** | Microsoft 365 email events, including email delivery and blocking events |
9596
| **[EmailPostDeliveryEvents](advanced-hunting-emailpostdeliveryevents-table.md)** | Security events that occur post-delivery, after Microsoft 365 delivers the emails to the recipient mailbox |

defender-xdr/custom-detection-rules.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,8 @@ When you save a new rule, it runs and checks for matches from the past 30 days o
149149
> [!TIP]
150150
> Match the time filters in your query with the lookback period. Results outside of the lookback period are ignored.
151151
152-
When you edit a rule, it will run with the applied changes in the next run time scheduled according to the frequency you set. The rule frequency is based on the event timestamp and not the ingestion time.
152+
When you edit a rule, the changes are applied in the next run time scheduled according to the frequency you set. The rule frequency is based on the event timestamp and not the ingestion time. There might also be small delays in specific runs, whereby the configured frequency is not 100% accurate.
153+
153154

154155
##### Continuous (NRT) frequency
155156

0 commit comments

Comments
 (0)