Configuring Microsoft Graph Security API Connectors
This connector allows Stellar Cyber to ingest logs from Microsoft Graph Security API and add the records to the data lake. It integrates with the Microsoft Graph API to ingest alert data.
Refer to the rate limit information in the Microsoft documentation. The global usage rate limit is 130,000 requests per 10 seconds.
Stellar Cyber connectors with the Collect function (collectors) may skip collecting some data when the ingestion volume is large, which potentially can lead to data loss. This can happen when the processing capacity of the collector is exceeded.
Connector Overview: Microsoft Graph Security API
Capabilities
-
Collect: Yes
-
Respond: No
-
Native Alerts Mapped: No
-
Runs on: DP
-
Interval: Configurable
Collected Data
Content Type |
Index |
Locating Records |
---|---|---|
Alert Incident |
Windows Events |
Domain
https://graph.microsoft.com/ |
Response Actions
N/A
Third Party Native Alert Integration Details
N/A
Required Credentials and Configurations
-
Tenant ID, Client ID, and Password
Adding a Microsoft Graph Security API Connector
To add a Microsoft Graph Security API connector:
Obtaining Microsoft Graph Security API Credentials
Before you configure the connector in Stellar Cyber, you must obtain the following Microsoft Graph Security API credentials:
-
Tenant ID—The tenant from which to request permission, also known as the Directory ID
-
Client ID—The client ID, also known as the Application ID that the app registration portal assigned when the app was registered
-
Password—The password that you generated for your app in the app registration portal, also known as the Client Secret
Registering an Application
To register an application, follow the guidance in the Microsoft documentation:
-
With an administrative account, log in to the endpoint in which you want to register the Stellar Cyber application.
-
In the navigation pane, select App registrations. A pane for adding and managing App registrations is displayed.
-
Click New registration. A pane is opened for your new parameters.
-
Enter a display Name for your application.
-
Choose a supported account type. Accounts in this organizational directory only is typical.
-
The Redirect URI setting is not required.
-
Click Register. The initial app registration is completed and a summary of it is displayed.
-
Copy the following details to a file:
-
Display Name
-
Application (client) ID, which is the Client ID you will use to add the connector in Stellar Cyber
-
Directory (tenant) ID, which is the Tenant ID you will use to add the connector in Stellar Cyber
-
Configuring the Application
To configure the application by setting permissions and obtaining the client secret, follow the guidance in the Microsoft documentation:
-
To set the permissions for your application, in the navigation pane under Manage, select API Permissions. Click Add a permission. The Request API permissions pane appears. Click Microsoft Graph.
-
Click Application permissions.
You can type in the Search box to find permissions.
-
Set the following permissions for the logs you want to collect.
Permission Description SecurityAlert.Read.All Read all security alerts SecurityEvents.Read.All Read your organization's security events SecurityIncident.Read.All Read all security incidents -
Click Add permissions. The API permissions page redisplays with your added permissions.
-
If you are the super admin, grant the permissions. Select the checkmark to Grant admin consent for <account name>.
Otherwise, wait for the super admin to grant them.
Make sure that the permissions are granted. If you add the connector before permissions are granted, the process fails.
When the permissions are granted successfully, there will be green checkmarks in the Status column.
-
-
To add a client secret to the application, select Certificates & secrets and New client secret.
Supporting Microsoft Defender for Identity
This connector also supports identity-based security alert and incident ingestion.
To get Microsoft Defender for Identity events from Microsoft Graph Security API, ensure that Microsoft Defender for Identity is properly configured or integrated with Microsoft 365 Defender. Refer to the section on alerts and incidents in Use the Microsoft Graph security API.
Alert ingestion needs the following permissions (refer to List alerts_v2):
-
Least privileged permissions: SecurityAlert.Read.All
-
Higher privileged permissions: SecurityAlert.ReadWrite.All
Incident ingestion needs the following permissions (refer to List incidents):
-
Least privileged permissions: SecurityIncident.Read.All
-
Higher privileged permissions: SecurityIncident.ReadWrite.All
Adding the Connector in Stellar Cyber
To add a Microsoft Graph Security API connector in Stellar Cyber:
-
Log in to Stellar Cyber.
-
Click System | INTEGRATIONS | Connectors. The Connector Overview appears.
-
Choose Extended Detection & Response from the Category dropdown.
-
Choose Microsoft Graph Security API from the Type dropdown.
The asterisk (*) indicates a required field.
-
For this connector, the supported Function is Collect, which is enabled already.
-
Enter a Name.
Notes:- This field does not accept multibyte characters.
- It is recommended that you follow a naming convention such as tenantname-connectortype.
-
Choose a Tenant Name. The Interflow records created by this connector include this tenant name.
-
Choose the device on which to run the connector.
-
(Optional) When the Function is Collect, you can apply Log Filters. For information, see Managing Log Filters.
-
Click Next. The Configuration tab appears.
The asterisk (*) indicates a required field.
-
Select the applicable Microsoft Subscription Plan from the menu:
-
Enterprise Plan
-
GCC Government Plan
-
GCC High Government Plan
-
DoD Government Plan
To learn about US government plans, refer to the following Microsoft documentation: Microsoft Defender XDR for US Government customers.
-
-
Enter the Tenant ID you noted above in Obtaining Microsoft Graph Security API Credentials.
-
Enter the Client ID you noted above.
-
Enter the Password you noted above.
-
Choose the Content Type you would like to collect. The logs for Alert and Incident are supported.
-
Choose the Interval (min). This is how often the logs are collected.
-
(Optional) Click Disable SSL Certificate Verification if you want to disable SSL certificate verification. Only disable SSL certificates if you have a reason to, otherwise, it is not a good security practice.
-
Click Next. The final confirmation tab appears.
-
Click Submit.
The new connector is immediately active.
Testing the Connector
In addition to testing for connectivity, the Test button for the Microsoft Graph Security API connector tests that the Tenant ID, Client ID, and Password are correct and data requests for the requested content type returns successful responses.
When you add (or edit) a connector, we recommend that you run a test to validate the connectivity parameters you entered. (The test validates authentication and connectivity).
For connectors running on a sensor, Stellar Cyber recommends that you allow 30-60 seconds for new or modified configuration details to be propagated to the sensor before performing a test.
-
Click System | INTEGRATIONS | Connectors. The Connector Overview appears.
-
Locate the connector by name that you added, or modified, or that you want to test.
-
Click Test at the right side of that row. The test runs immediately.
Note that you may run only one test at a time.
Stellar Cyber conducts a basic connectivity test for the connector and reports a success or failure result. A successful test indicates that you entered all of the connector information correctly.
To aid troubleshooting your connector, the dialog remains open until you explicitly close it by using the X button. If the test fails, you can select the button from the same row to review and correct issues.
The connector status is updated every five (5) minutes. A successful test clears the connector status, but if issues persist, the status reverts to failed after a minute.
Repeat the test as needed.
If the test fails, the common HTTP status error codes are as follows:
HTTP Error Code | HTTP Standard Error Name | Explanation | Recommendation |
---|---|---|---|
400 | Bad Request | This error occurs when there is an error in the connector configuration. |
Did you configure the connector correctly? |
401 | Unauthorized |
This error occurs when an authentication credential is invalid or when a user does not have sufficient privileges to access a specific API. |
Did you enter your credentials correctly? Are your credentials expired? Are your credentials entitled or licensed for that specific resource? |
403 | Forbidden | This error occurs when the permission or scope is not correct in a valid credential. |
Did you enter your credentials correctly? Do you have the required role or permissions for that credential? |
404 | Not Found | This error occurs when a URL path does not resolve to an entity. | Did you enter your API URL correctly? |
429 | Too Many Requests |
This error occurs when the API server receives too much traffic or if a user’s license or entitlement quota is exceeded. |
The server or user license/quota will eventually recover. The connector will periodically retry the query. If this occurs unexpectedly or too often, work with your API provider to investigate the server limits, user licensing, or quotas. |
For a full list of codes, refer to HTTP response status codes.
Verifying Ingestion
To verify ingestion:
-
Select Threat Hunting.
The Interflow Search tab appears.
-
Change the Indices to Windows Events.
The table immediately updates to show ingested Interflow records.