Skip to content

Commit a1c2473

Browse files
devGregAMaffooch
authored andcommitted
docs(connectors): add Microsoft Defender for Cloud connector reference
Setup and usage for the Defender for Cloud connector: required Defender plans (Servers Plan 2, Containers), Entra app registration + the three credential values, the Security Reader RBAC assignment on the service principal (per subscription), connector field mappings, and scan-timing expectations. Distinguishes it from the device-based Microsoft Defender connector.
1 parent 12b4d48 commit a1c2473

1 file changed

Lines changed: 34 additions & 0 deletions

File tree

docs/content/import_data/pro/connectors/connectors_tool_reference.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,40 @@ DefectDojo maps each Artifactory **repository** as a separate Record. On first S
196196

197197
See the [JFrog Xray REST API documentation](https://jfrog.com/help/r/jfrog-rest-apis/xray-rest-apis) for more information.
198198

199+
## **Microsoft Defender for Cloud**
200+
201+
The Microsoft Defender for Cloud connector imports vulnerability findings from **Microsoft Defender Vulnerability Management (MDVM)** as surfaced by Defender for Cloud — both **server** findings (Azure VM operating\-system and installed\-software CVEs) and **container\-registry** findings (container image CVEs), including severity, CVSS score, the affected package or image, and remediation. DefectDojo discovers the Azure **subscriptions** your service principal can read and creates a Record for each enabled subscription.
202+
203+
**Please note:** this Connector is distinct from the **Microsoft Defender** connector, which imports device findings from the Defender for Endpoint API. Defender for Cloud is an Azure product with a different API surface (Azure Resource Manager / Resource Graph) and permission model (Azure RBAC). Run whichever matches where your findings live — or both, if you use both products.
204+
205+
#### Prerequisites
206+
207+
You need one or more **Azure subscriptions with Microsoft Defender for Cloud enabled**, with the relevant Defender plans turned on for the resources you want scanned (under **Microsoft Defender for Cloud \> Environment settings**, then select your subscription):
208+
209+
* **Defender for Servers (Plan 2)** — Azure VM operating\-system and software CVE findings (agentless vulnerability scanning).
210+
* **Defender for Containers** — container\-registry image CVE findings.
211+
212+
SQL vulnerability\-assessment and configuration/posture findings are intentionally **not** imported — this connector imports CVE vulnerabilities only.
213+
214+
The connector authenticates as a Microsoft Entra ID **app registration** using the client credentials flow:
215+
216+
1. In the [Azure portal](https://portal.azure.com), open **App registrations \> New registration**. Name it (for example `defectdojo-connector`), leave the defaults, and select **Register**.
217+
2. On the app's **Overview** page, note the **Application (client) ID** and **Directory (tenant) ID**.
218+
3. Open **Certificates & secrets \> New client secret**, set an expiry, and copy the secret **Value** immediately (it is shown only once). The Connector stops working when the secret expires, so note the date.
219+
4. Grant the app read access to each subscription you want to import: open **Subscriptions**, select your subscription, then **Access control (IAM) \> Add \> Add role assignment**. Select the **Security Reader** role (or **Reader**), and on the **Members** tab assign it to the app you created — search for it by the app's **name** or **object ID**, as the picker does not match the client ID. Repeat for every subscription.
220+
221+
Unlike the device\-based Microsoft Defender connector, no API permissions or admin consent are required: Defender for Cloud access is governed entirely by the Azure RBAC role assignment above.
222+
223+
#### Connector Mappings
224+
225+
1. Enter `https://management.azure.com` in the **Location** field. (For sovereign clouds, use the matching ARM endpoint, for example `https://management.usgovcloudapi.net`.)
226+
2. Enter the **Directory (tenant) ID** in the **Tenant ID** field.
227+
3. Enter the **Application (client) ID** in the **Client ID** field.
228+
4. Enter the client secret value in the **Client Secret** field.
229+
5. Optionally, set a **Minimum Severity** to limit which findings are imported.
230+
231+
Each enabled Azure subscription becomes a Record. Findings are read through Azure Resource Graph, so they surface promptly once Defender for Cloud has scanned your resources — but the scans themselves run on Microsoft's schedule: container\-registry images are usually scanned within an hour of being pushed, while a VM's first agentless vulnerability scan can take several hours. A newly enabled subscription will legitimately Sync zero findings until its resources have been scanned.
232+
199233
## Probely
200234

201235
This connector uses the Probely REST API to fetch data.

0 commit comments

Comments
 (0)