Azure Security Score provides a centralized view of an organization’s security posture by measuring how well Azure resources follow Microsoft’s recommended security best practices. These logs help track overall security improvements and identify areas that need attention. Common use cases include secure scores and secure score controls. For more details refer to Microsoft’s official documentation.
Integration Method: API
Tables: Assessment Finding (99402001)
This integration supports the following events.
Event(s) | Description |
|---|---|
Secure Scores | List secure scores for all your Microsoft Defender for Cloud initiatives within your current scope. |
Secure Score Controls | Get all security controls within a scope |
This integration supports the following versions.
Azure Security Score API version | 2020-01-01 |
Prerequisites
The user should have access to the Azure portal with an account that has the Global Administrator privileges.
The user should have access to the DataBee console.
Configuration Overview
Create an application with required permissions to fetch the data.
Create Azure Security Score Data Feed in the DataBee console with the required Client credentials.
DataBee Parameter
Azure Parameter
Client Key
Client Secret
Client secret Value
Token URL(<tenant_id>)
Subscription ID (subscriptionId)
Azure Configuration
Create an application
Log on to Azure portal with an account that has the Global Administrator role.
In the search bar, search for App registrations and select it.

On the “Register an application” window:
On the app Overview page, copy the Application (client) ID and Directory (tenant) ID for later use.

Login on to Azure portal with an account that has the Global Administrator role. In the search bar, check for Subscriptions and select it.

Select the Subscription name as shown below.

On the Overview page, copy the Subscription ID for later use.

Add Endpoint Access
Once the application is created, permission should be provided to fetch data. The appropriate permission for the application are needed to access these endpoints. The following section details how to configure and add permissions to the required endpoints.
From the Azure Active Directory portal:
Under Manage, click API permissions and then click Add a permission; the “Request API permissions” window will appear.

On “Request API permissions” window, click on Microsoft APIs then on Microsoft Graph.

Click on Application permissions and search SecurityEvents.Read.All and select it. Click on Add permissions.

The following permissions need to be granted for the endpoint to function properly:
Permission Name
Type
SecurityEvents.Read.All
Application

In the search bar, check for Subscriptions and select your Subscription name.

Assign the Reader Role to the Subscription. Click on Access Control (IAM) and select Add.
Role : Security Reader
Scope: Subscription

Under Role, search security reader and select it. Click Next.

Under Members, select member to be added. Click Next.

Under Assignment type, Click Review + assign and click Next.

Under Review + assign, verified the details (role, member etc.) and click on Review + assign.

Action: Grant the Reader role to the Subscription for the App Registration to enable read-only access to subscription-level resources.
Create the Client Secret
The final step in accessing the APIs is creating a Client Secret. To create it from the Azure Portal:
Select the application created above.
Under Manage, Click Certificates & secrets, and then Client secrets.

Click New client secret. Then “Add a client secret” window appears.

On “Add a client secret” window:
Enter a ‘Description’ for this client secret and select the desired expiry period from the ‘Expires’ drop-list.
Then click on Add to create the client secret.

Note:
The user needs to re-create the client's secret when it expires.
This completes the setup for Azure Security Score API integration.
DataBee Configuration
Login to the DataBee UI, navigate to Data > Data Feeds and click the Add New Data Feed button.

Search for the Azure Security Score and click it as shown below.

Click on the API Ingest option for collection method.

Enter feed contact information, keep Entity Resolution checkbox checked if you want it, else uncheck it and scroll down.

In the configuration page, confirm the following:
Client Key: Paste the Application (Client) ID generated previously.
Client Secret: Paste the Client Secret generated previously.
Token URL: Replace <tenant_id> placeholder with your Directory (Tenant) ID.
Subscription ID: Paste the Subscription ID noted earlier.
Event Types: Preselected for all the event types that integration pulls.

Click on the Test Connection button once details are added.

Click on the Submit button once Test Connection is successful.
Troubleshooting Tips
If you are facing an invalid client or unauthorized client error this might be possibly due to incorrect credentials. Ensure the client key, client secret and Tenant ID are pasted correctly. Since you cannot view the client secret after the 1st time, re-create it, paste it on a text editor to ensure no spaces or unexpected characters are included and reconfigure the DataBee feed.
If you are facing response code - 403 this might be possibly due to missing permissions. Ensure that all the required permissions are granted correctly as per the above-mentioned steps.
