ms365 exchange online management alert.md
For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to page URLs; this page is available as Markdown.
Microsoft 365 Exchange Online Management
{% hint style="info" %} This configuration is only required if you are using Dropzone AI to analyze Quarantined Emails in Microsoft Defender for Office 365. {% endhint %}
To enable Office 365 Exchange Online Management, you must first install Dropzone Certificate Credentials.
Some Dropzone actions use x509 certificate based authentication, for example retrieving quarantined emails during phishing analysis. In this section we will set up the Dropzone certificate as trusted by Microsoft.
{% hint style="info" %} Each Dropzone tenant uses a unique Dropzone certificate for maximum security. {% endhint %}
- Navigate to your Dropzone AI tenant home page e.g. https://mycompany.dropzone.app
- In the bottom left hand corner, click Settings > Integrations
Integrations Dropdown
- Click "Available"
Click Available
- In the Search bar, search MS 365/Defender, then click "Configure"
- Under "Connection", click "mycompany.dropzone.app.crt" and download the file
Download your Dropzone certificate
- Return to the Application Overview for your new application
- https://entra.microsoft.com
- Applications > App Registration > All Applications > Dropzone AI
- In the left side bar, click "Certificates & Secrets"
Certificates & Secrets
- Navigate to Certificates, then click "Upload Certificate"
Upload Certificate
- Select the certificate file you downloaded from the Dropzone UI earlier
- For description, use "Dropzone AI"
Upload Certificate File
You should now see the certificate in the UI, including a 'thumbprint' (a cryptographic hash of the certificate.)
Certificate installed
Once you have installed your Dropzone credentials, you may assign the Office 365 Exchange Online Management permissions. To do so, do the following:
- In the left sidebar, return the API permissions page
- Click "Add a permission"
- Select "APIs my organization uses"
- Type "Office 365 Exchange Online" in the search bar
Office 365 Exchange Online
- Click "Application permissions"
Add the following permissions:
| Permission | Purpose |
|---|---|
Exchange.ManageAsApp |
Read file details |
- Once done selecting all the permissions, click "Add permissions"
- Click "Grant admin consent for [mycompany.net]"
- Click "Yes"
Create and Authorize Service Account
Next we need to run PowerShell commands to grant permissions. You may use whatever PowerShell environment you prefer. The examples below were performed using Azure's interactive Cloud Shell. You may find some of the Microsoft Azure Documentation useful.
- Open your powershell environment
- For example go to https://portal.azure.com and click on the Cloud Shell icon
Azure Cloud Shell Icon
- Connect to Entra ID and get information about the application we configured. The value for the
-AppIDparameter is the "Application (Client) ID" you recorded earlier
PowerShell 7.4.5
# Connect to "AzureAD"
PS /home/wbagg> <b>Connect-AzureAD</b>
VERBOSE: Authenticating to Azure ...
VERBOSE: Building your Azure drive ...
Loading personal and system profiles took 8788ms.
# Run the following to get the object-id of our application, replacing
# application-id with the actual Application (Client) ID of our new app
#
# PS /home/wbagg> <b>Get-AzADServicePrincipal -AppID "<application-id>" | Select-Object DisplayName, AppId, Id | Format-List
#
# For example:
PS /home/wbagg> <b>Get-AzADServicePrincipal -AppID aaaaaaaa-1111-2222-3333-444444444444 | Select-Object DisplayName, AppId, Id | Format-List
DisplayName : Dropzone AI
AppId : aaaaaaaa-1111-2222-3333-444444444444
Id : 44726f70-7a6f-6e65-5761-734865726521
- Note this
Idfield which we'll use in the next command, which we refer to as theobject-spid(Service Principal ID) - Connect to Exchange Online and Create an Exchange Online Service Principal for our Application
# Connect to ExchangeOnline
PS /home/wbagg> Connect-ExchangeOnline
# Run the following to create the service principal, replacing
# application-id and object-spid from the earlier values
#
# PS /home/wbagg> New-ServicePrincipal -AppId "<application-id>" -ObjectId "<object-spid>" -DisplayName "Dropzone AI"
#
# for example
PS /home/wbagg> New-ServicePrincipal -AppId "aaaaaaaa-1111-2222-3333-444444444444" -ObjectId "44726f70-7a6f-6e65-5761-734865726521" -DisplayName "Dropzone AI"
DisplayName ObjectId AppId
----------- -------- -----
Dropzone AI 44726f70-7a6f-6e65-5761-734865726521 aaaaaaaa-1111-2222-3333-444444444444
- Lastly, we assign Transport Hygiene Exchange Role to our Application
# Run the following to enable the Transport Hygiene role, replacing the
# application-id with the actual Application (Client) ID of our new app
#
# PS /> New-ManagementRoleAssignment -App "application-id" -Role "Transport Hygiene"
#
PS /> New-ManagementRoleAssignment -App "aaaaaaaa-1111-2222-3333-444444444444" -Role "Transport Hygiene"
Name Role RoleAssigneeName RoleAssigneeType AssignmentMethod EffectiveUserName
---- ---- ---------------- ---------------- ---------------- -----------------
Transport Hygiene-44726f70... Transport Hygiene ba0efd83-6465-48a... ServicePrincipal Direct
Locate Organization ID
- Sign into Entra home as an administrator
- In the left navigation, select Manage > Custom domain names
Azure Custom Domain Names
- In the domain list you'll find one that ends in
.onmicrosoft.com. Record this domain for use later in the Dropzone UI where it is called "Organization ID"
Azure Custom Domain Names List