Microsoft Sentinel ASM Integration
Access Levels: Advanced | Enterprise
The Censys connector for Microsoft Sentinel (formerly known as Azure Sentinel) enables you to connect Attack Surface Management (ASM) logbook and risk events with Sentinel. The integration automatically polls Censys for new events, which are then are sent to Microsoft Sentinel. This allows you to monitor your attack surface events in the analytics platform of your choice.
Prerequisites
- To set up this integration, your Azure user must have the Owner or User Access Administrator roles.
- If you use an IP allowlist, permit communication from
52.5.142.59,34.226.132.221, and52.54.43.157. - Download the
censys-sentinel-dcr.bicepfile.- This file creates two Data Collection Rule (DCR) custom tables, a Data Collection Endpoint (DCE), and a DCR that maps the Censys streams onto the two custom tables.
- Your Microsoft Sentinel Log Analytics workspace name and resource group.
- You can retrieve these from Home > Log Analytics workspaces.
- Your resource group is provided on the Log Analytics workspace overview.
Set up the integration in Microsoft Sentinel
1. Create the app registration
-
In Microsoft Sentinel, go to Entra ID > App registrations > New registration.
-
Enter a recognizable name for the application, like censys-sentinel-ingest.
- You do not need to add redirect URI nor API permissions are required. Access comes entirely from the role assignment that is set up later.
-
On your new app's registration page, click the link next to "Client credentials."
-
Click New client secret. Enter a name for the secret. Copy the new secret value and store it in a secure location, it will only be shown once.
-
In the app overview, note your Application (client) ID and Directory (tenant) ID. You will need these later during setup.

2. Deploy the app template
Open the Azure CLI and run the following command to create the Censys integration DCE and DCR. Replace <rg> with your Log Analytics resource group and <workspace> with your Log Analytics workspace name.
az deployment group create \
--resource-group <rg> \
--template-file censys-sentinel-dcr.bicep \
--parameters workspaceName=<workspace> namePrefix=censys3. Grant the app registration access to the DCR and copy DCR and DCE information for ASM setup
-
In Microsoft Sentinel, use the top search bar to search for your new DCR by name and select it. If you used the command exactly as described above, it is
censys-dcr. -
On the DCR, go to Access control (IAM) > Add > Add role assignment.
-
Sarch for and select "Monitoring Metrics Publisher." Click Next.
-
Click Select members then search for and select the app you created in section 1 above. members > search for the app registration by the name from "1. Create the app registration."
-
Click Review + assign.
-
Go back to the overview page for your new DCR. Copy the immutable ID. You will need this in the next step.
-
Go to your new DCE's page. The default name is
censys-dce. Copy the "Logs Ingestion" URL.
Configure the integration in Censys ASM
-
Go to the Censys ASM web console, then click Integrations.
-
Locate Microsoft Sentinel and click Set Up.
-
Under "Azure API," select Logs Ingestion API. The HTTP Data Collector API is no longer supported.
-
Configure the following:
- In the "Tenant ID" field, enter the tenant ID from your app registration page in Sentinel.
- In the "Client ID" field, enter the client ID from your app registration page.
- In the "Client secret" field, enter the secret you generated for your app registration.
- In the "Data collection endpoint" field, enter your DCE ingest URL.
https://is automatically populated and you do not need to include it.
-
Click Next Step.
-
On the "Default Set up" page, paste your DCR immutable ID.
-
Select Logbook, Risks, or both.
-
Click Submit, then click Done.
Censys data sent to Microsoft Sentinel
The following tables detail the objects sent to the custom log analytics tables. Note that the Log Ingestion API adds events to different tables than the deprecated Azure Monitor HTTP data collection API.
Risk events (Censys_Risks_V2_CL)
Censys_Risks_V2_CL)| Column | Type | Description |
|---|---|---|
| RiskEventID | string | The ID of the Risk Event. |
| RiskEventOperation | string | The Operation of the Risk Event:
|
| TimeGenerated | datetime | The timestamp of the risk event. |
| RiskInstanceID | string | Identifier for a specific risk instance. |
| DisplayName | string | Human-readable display name for a risk instance. |
| Severity | string | Severity for a risk instance:
|
| Status | string | State of the risk instance:
|
| FirstSeen | datetime | Timestamp when the risk was first observed in the workspace. |
| LastSeen | datetime | Timestamp when the risk was last observed in the workspace. |
| LinkToRisk | string | Link to view the risk instance in the ASM console. |
| ImpactedAsset | string | The asset impacted by the risk. |
Logbook events (Censys_Logbook_V2_CL)
Censys_Logbook_V2_CL)| Column | Type | Description |
|---|---|---|
| EventId | string | The ID of the Logbook Event. |
| EventType | string | The type of event from Logbook:
|
| Operation | string | The operation of the event:
|
| IpAddress | string | The host associated with the event. |
| TimeGenerated | datetime | Timestamp when the event occurred. |
Microsoft Sentinel query examples
You can use the following example queries to explore Censys data in Microsoft Sentinel.
Risk events
Open critical risks:
Censys_Risks_V2_CL
| where Severity_s =~ "Critical"
| where Risk_Event_Operation_s =~ "Open"
| where Status_s =~ "Open"
| sort by Last_Seen_t
Count of risks by name:
Censys_Risks_V2_CL
| summarize Count = count() by Display_Name_s
| order by Count desc
Logbook events
Associated hosts:
Censys_Logbook_V2_CL
| where Operation_s =~ "ASSOCIATE"
Disassociated hosts:
Censys_Logbook_V2_CL
Deprecated Azure Monitor HTTP data collector API configuration
Microsoft retired the Azure Monitor HTTP data collector API on September 14, 2026. Censys ASM previously used this API to connect with Sentinel. Censys does not recommend using this configuration option. The following information is provided below to support users whose integrations are still configured to use the deprecated API.
Query examples and data tables for deprecated Azure Monitor HTTP data collector API
Censys data sent to Microsoft Sentinel
The following tables detail the objects sent to the custom log analytics tables.
Risk events
Censys_Risks_CI | Description |
|---|---|
| Risk Event ID | The ID of the Risk Event. |
| Risk Event Operation | The Operation of the Risk Event:
|
| Timestamp | The timestamp of the risk event. |
| Risk Instance ID | Identifier for a specific risk instance. |
| Display Name | Human-readable display name for a risk instance. |
| Severity | Severity for a risk instance:
|
| Status | State of the risk instance:
|
| First Seen | Timestamp when the risk was first observed in the workspace. |
| Last Seen | Timestamp when the risk was last observed in the workspace. |
| Impacted Asset | The asset impacted by the risk. |
Logbook Events
Censys_Risks_CI | Description |
|---|---|
| Event ID | The ID of the Logbook Event. |
| Event Type | The type of event from Logbook:
|
| Operation | The operation of the event:
|
| IP Address | The host associated with the event. |
| Timestamp | Timestamp when the event occurred. |
Query examples
Risk events
Open critical risks:
Censys_Risks_CL
| where Severity_s =~ "Critical"
| where Risk_Event_Operation_s =~ "Open"
| where Status_s =~ "Open"
| sort by Last_Seen_tCount of risks by name:
Censys_Risks_CL
| summarize Count = count() by Display_Name_s
| order by Count descLogbook events
Associated hosts:
Censys_Logbook_CL
| where Operation_s =~ "ASSOCIATE"Disassociated hosts:
Censys_Logbook_CL
| where Operation_s =~ "DISSOCIATE"Updated 1 day ago
