MS Defender for Cloud (VM Assets) Connector

The Microsoft Defender for Cloud (VM Assets) connector retrieves host asset records for virtual machines from Microsoft Defender for Cloud via REST API and imports them into Qualys ETM for unified risk analysis. ETM deduplicates entries, normalizes data formats, enriches asset records with additional context, and calculates risk scores using TruRisk.

By centralizing VM asset data and associated misconfiguration findings from Microsoft's cloud security service, security teams gain unified visibility into cloud infrastructure alongside other organizational findings–transforming disconnected security alerts into actionable intelligence for risk-driven prioritization.

Note: This connector is focused on VM host asset ingestion. Delta synchronization is not supported; each scheduled execution performs a full sync. Use a dedicated service account and never share personal credentials. All secrets are encrypted at rest.

Connector Details

The following table summarizes what the MS Defender for Cloud (VM Assets) connector supports.

Vendor

Microsoft

Product Name

Defender for Cloud

Category

Cloud Security

Findings Supported

 Assets and Misconfigurations (Findings)

Assets Supported

Cloud Assets

Version

1.0.0

Supported Version & Type SaaS (Latest)

Integration Type

API Integration (REST)

Direction

Unidirectional

Delta Support

Not Supported

Import of Installed Software

Not Supported

Import of Source Tags

Not Supported

Filters/Filter Query     Not Supported

Configure the Connector

Follow the three-step wizard to create an MS Defender for Cloud (VM Assets) connection. A valid connection test is required to proceed.

Before You Begin - AuthenticationBefore You Begin - Authentication

Before configuring the connector, complete the following steps in the Microsoft Azure portal to register an application and gather the credentials required by Qualys ETM.

Register an Application in Microsoft Entra ID

  1. Register an application in Microsoft Entra ID.
    1. Sign in to the Azure portal and navigate to Azure Active Directory in the left navigation pane.
    2. Select App registrations and click New Registration.
    3. Provide an application name and select the appropriate supported account type. A redirect URI is optional.
    4. Click Register to complete the process.
  2. Retrieve the Client ID and Tenant ID.
    1. After registration, go to the application Overview page and locate the Essentials section.
    2. Copy the Application (client) ID and the Directory (tenant) ID. These values are entered as the Client ID and Tenant ID fields in the Qualys ETM connector configuration.
  3. Create a Client Secret.
    1. On the application page, select Certificates & secrets and click New client secret.
    2. Provide a description and set an expiration period, then click Add.
    3. Copy the Value of the generated secret immediately.

    Important: The Client Secret value is shown only once. It cannot be retrieved after you navigate away from the page. Store it securely before closing this view.

  4. Configure API permissions.
    1. Navigate to API Permissions on the application page.
    2. Click Add a permission, select Microsoft Graph, and choose either Delegated or Application permissions depending on your deployment model.
    3. After adding the required permissions, click Grant admin consent for [Your Organization] to activate them.

    Important: Admin consent must be granted for the permissions to take effect. Without it, the connector will return a 403 Forbidden error.

  5. Assign the Reader role to the application.
    1. In the Azure portal, navigate to the subscription whose Defender for Cloud VM data you want to ingest.
    2. Select Access Control (IAM), click Add, then Add role assignment.
    3. On the Role tab, search for and select Reader, then click Next.
    4. On the Members tab, click Select members, search for the registered application, and confirm. Save the role assignment.
    5. Repeat for each Azure subscription from which you want to ingest Defender for Cloud VM asset data.

Note: Use a dedicated service account for the registered application. Never share personal credentials. All secrets are encrypted at rest in Qualys ETM.

Permissions Required

The registered application must be assigned the Reader role (or higher) on each Azure subscription from which you want to ingest Defender for Cloud VM asset data. Microsoft Graph API permissions must also be granted with admin consent.

Scope and Data Access

The connector ingests Host Asset records for virtual machines. Filters are not supported for this connector; all VM assets within the subscription scope are retrieved. The data flow is unidirectional, from Microsoft Defender for Cloud to Qualys ETM. Import of installed software and source tags is not supported.

Key Rotation

When the Client Secret approaches its expiration date, generate a new secret under Certificates & secrets in the application registration. Update the Qualys ETM connector configuration with the new secret value. Verify the connector reaches the Processed state after the next scheduled execution to confirm the new secret is working correctly.

Create a Profile & ConnectionCreate a Profile & Connection

Configure the connector's identity and authenticate with the source system.

Connector Details

Name Enter a unique display name for this connector instance. Example: MS Defender for Cloud (VM Assets)260505061423523
Description Optional. Enter a description of up to 200 characters to identify the purpose of this connection.

Authentication Details

Field Type Description
Subscription String The Azure Subscription ID from which VM assets will be ingested. Example: 54505ff6-e254-4e01-a964-d0ce78bf87a9
Tenant ID String The Directory (tenant) ID of your Microsoft Entra ID tenant. Example: ff4e2413-65ab-4dc2-9e5b-1ea02d3d94eb
Client ID String The Application (client) ID of the registered Entra ID application. Example: e78a9c6a-7635-45e9-ad52-9c53b6547fe3
Client Secret Encrypted String The client secret value generated under Certificates & secrets in the application registration. This field is masked after entry.

Important: The Client Secret is visible only at the time of creation in the Azure portal. Copy and store it securely before saving the application registration page, as it cannot be retrieved later.

After entering all authentication details, click Test Connection to validate the credentials before proceeding. The following checks are performed:

  • Network Reachability — Verifies that the connector endpoint is reachable over HTTPS (port 443).
  • TLS Handshake — Confirms that a secure TLS connection can be established with the remote endpoint.
  • Authentication Credential Check — Validates the configured credentials against the source system's authentication endpoint.
  • Authorization Scope Check — Confirms that the provided credentials have the required permissions to access the configured data scope.
  • Data Fetch — Verifies that data can be successfully retrieved from the source system using the configured connection.

All checks must pass before the Next button becomes active. If a check fails, refer to the Troubleshooting section for resolution steps.

Set the Scope & ScheduleSet the Scope & Schedule

Define the data to synchronize and set the execution schedule for the connector.

This connector retrieves the following data types on each execution:

  • Assets (Host Asset Records)
  • Misconfiguration Findings

Note: Delta synchronization is not supported. Each scheduled execution performs a full sync of all VM assets within the subscription scope.

Review all configuration settings before saving. Verify that the connector name, subscription, Tenant ID, Client ID, and authentication type are correct. Once confirmed, save the connector to complete setup.

After saving, the connector appears in the Connections list in the Registered state and transitions automatically through its processing states.

Advanced Settings

Note: Changes made in Advanced Settings are not saved automatically. Click Save after modifying any advanced configuration.

Filters Tab

Filters are not supported for this connector variant. The filter field is present in the interface but the connector does not currently support filter queries. All VM assets within the configured subscription scope are retrieved on each execution.

Transform Map Tab

The connector provides an out-of-box transform map for MDC VM asset data. You can view the active map to understand the field-level data transformation, or clone it to create a custom configuration. Refer to Transformation Maps for the complete field mapping reference.

How the Connection Works

Each run retrieves Host Asset records for virtual machines and associated Misconfiguration findings from Microsoft Defender for Cloud. Asset records include instance metadata, operating system details, network information, and cloud resource identifiers. Import of installed software, misconfiguration findings source tags, and filter queries are not supported for this connector variant.

The MS Defender for Cloud (VM Assets) connector executes according to its configured schedule, performing a full sync of all VM assets within the subscription scope on each run. There is no incremental (delta) sync mode.

Connector States

A successfully configured connector transitions through the following states:

  1. Registered – The connector has been successfully created and registered to fetch data from Microsoft Defender for Cloud.
  2. Scheduled – The connector is queued and scheduled to execute a connection with the vendor.
  3. Processing – A connection is executing and the connector is actively fetching asset and findings data.
  4. Processed – The connector has successfully fetched the assets. Findings ingestion may still be in progress.

Note: The Processed state indicates that asset records have been imported, but findings (misconfigurations) may still be processing. The complete first-run import process can take up to 2 hours. If no data appears after this period, verify that the Reader role is assigned at the subscription level and that the subscription contains Defender for Cloud VM asset data.

Viewing Assets and Findings in ETM

Once the connector reaches the Processed state, navigate to Enterprise TruRisk Management (ETM) to analyze the imported data.

To view imported VM assets: Go to Inventory and use the following filter token:

inventory:(source:"Defender for Cloud")

To view Misconfiguration findings: Go to Risk Management > Findings > Misconfigurations and use the following filter token:

findings.vendorProductname:"Defender for Cloud"

Troubleshooting

Use the following reference to resolve common connector errors.

401 Unauthorized The Client Secret is invalid, expired, or incorrectly entered. Verify the secret has not expired in the Azure portal under Certificates & secrets. Generate a new secret if needed and update the connector configuration with the new value.
403 Forbidden The registered application does not have sufficient permissions. Verify the application has been assigned the Reader role on the target subscription and that Microsoft Graph API permissions have been granted with admin consent.
Connection test fails Confirm the Tenant ID and Client ID match the values shown on the application Overview page in the Azure portal. Verify network connectivity from the Qualys cloud to the Microsoft authentication endpoint at https://login.microsoftonline.com/.
No assets imported after first run The connector progresses through Registered, Scheduled, Processing, and Processed states. The full import process may take up to 2 hours to complete. If no data appears after this period, verify the Reader role is assigned at the subscription level and that the subscription contains Defender for Cloud VM asset data.

Additional Information

API Reference

The following APIs are executed during each connector run.

Name Endpoint Description
Auth API https://login.microsoftonline.com/ Obtains an OAuth 2.0 access token using the Tenant ID, Client ID, and Client Secret.
Fetch Asset https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2021-03-01 Retrieves virtual machine resource records. Sample query: Resources | where type =~ 'microsoft.compute/virtualmachines'
Fetch Resources and Assessments https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2021-03-01 Retrieves security assessment findings linked to each VM resource. Sample query: securityresources | where type == "microsoft.security/assessments"
Fetch Network Interfaces https://management.azure.com/providers/Microsoft.ResourceGraph/resources?api-version=2021-03-01 Retrieves network interface details including MAC address, private IP, and public IP for each VM resource.

Transformation Maps

The connector includes an out-of-box transformation map that translates Microsoft Defender for Cloud attributes to the corresponding Qualys ETM schema fields. The table below documents each field mapping.

MDC Vulnerability Transformation MappingMDC Vulnerability Transformation Mapping

Defender Attribute Key Qualys Attribute Label
vmId externalAssetId
assessments_name findingName
assessments_id externalFindingId
assessments[].properties.metadata.severity findingSeverity
name assetName
imageReference_offer operatingSystemName
networkInterfaces_macAddress macAddress
networkInterfaces_publicIP ipAddress
imageReference_version operatingSystemVersion
assessments_firstEvaluationDate findingFirstFoundOn
assessments_displayName findingDescription
assessments_recommendationCategory recommendation
assessments_links_azurePortal policyFindingUrl
assessments_userImpact impact
assessments_type findingSubType
assessments_metadata_displayName policyTitle
assessments_severity
Informational | Low | Medium | High
findingSeverity
0 | 1 | 2 | 3 | 4
assessments_status_code
PASS | FAIL | PASS | FAIL | PASS
findingStatus
open | resolved | active | closed
assessments_metadata_description policyDescription
assessments_managedBy createdBy
assessments_managedBy updatedBy
assessments_policyDefinitionId policyId
assessments_remediationDescription remediationStrategy
ResourceType productVendor
assessments_statusChangeDate updatedOn
assessments_assessmentType policyType
ResourceProvider productName

Additional Resources