Enterprise Recon 2.10.0
Exchange Online
From ER 2.1, you can use the Microsoft Graph implementation of Exchange Online by adding the Exchange Online (Graph) Target.
This section covers the following topics:
- Exchange Online
Exchange Online
When Exchange Online is added as a scan Target, ER2 returns all Microsoft 365 groups and user accounts with active mailboxes in each group. You can select specific groups or individual users when setting up the scan schedule, and each group will be presented as a separate location for the Exchange Online Target.
Here are some scenarios which may benefit from scanning Exchange Online mailboxes by Microsoft 365 groups:
- Users in the organization are typically managed as groups, and assigned group memberships in your Microsoft 365 environment.
- Compliance procedures requires the capability to segregate and report scan results by business unit, division or group.
- Head of Departments are only authorized to review and remediate non-compliant mailboxes in certain groups. This can be easily managed by delegating specific Resource Permissions to the user.
You can also scan all users with mailboxes in your organization's domain by adding the "All Users" group as a scan location.
Example of Exchange Online structure:
Exchange Online [domain: example.onmicrosoft.com]
+- Exchange Online on target EXCHANGEONLINE:EXAMPLE.ONMICROSOFT.COM
+- Group All Users
+- Group Engineering
+- Group Design
Licensing
For Sitewide Licenses, all scanned Exchange Online Targets consume data from the Sitewide License data allowance limit.
For Non-Sitewide Licenses, Exchange Online Targets require Client Licenses, and consume data from the Client License data allowance limit.
See Target Licenses for more information.
Requirements
Requirements | Description |
---|---|
Proxy Agent |
|
TCP Allowed Connections | Port 443 |
Configure Microsoft 365 Account
For ER 2.1 and above, you will need to perform the following setup to scan Exchange Online Targets:
Generate Client ID and Tenant ID Key
- With your administrator account, log in to the Azure app registration portal.
- In the App registrations page, click + New registration.
-
In the Register an application page, fill in the following fields:
Field Description Name Enter a descriptive display name for ER2. For example, Enterprise Recon. Supported account types Select Accounts in this organizational directory only. - Click Register. You will be redirected to the Overview page for the newly registered app, Enterprise Recon.
-
Take down the Application (client) ID and Directory (tenant) ID. This is required when you want to Set Up and Scan an Exchange Online Target.
Generate Client Secret Key
- With your administrator account, log in to the Azure app registration portal.
- In the App registrations page, go to the Owned applications tab. Click on the app that you registered (e.g. Enterprise Recon) when generating the Client ID and Tenant ID key.
- In the Manage panel, click Certificates & secrets.
- In the Client secrets section, click + New client secret.
-
In the Add a client secret page, fill in the following fields:
Field Description Description Enter a descriptive label for the Client Secret key. Expires Select a validity period for the Client Secret key. -
Click Add. The Value column will contain the Client Secret key.
-
Copy and save the Client Secret key to a secure location. This is required when you want to Set Up and Scan an Exchange Online Target.
Save your Client Secret key in a secure location. You cannot access this Client Secret key once you navigate away from the page.
Grant API Access
To scan Exchange Online Targets, you will need to grant ER2 permissions to access specific resource APIs.
- With your administrator account, log in to the Azure app registration portal.
- In the App registrations page, go to the Owned applications tab. Click on the app that you registered (e.g. Enterprise Recon) when generating the Client ID and Tenant ID key.
- In the Manage panel, click API permissions.
- In the Configured permissions section, click + Add a permission.
- In the Request API permissions page, select Microsoft Graph > Application permissions.
-
Select the following permissions for the Enterprise Recon app:
API Permissions Description - Group.Read.All
- User.Read.All
- Directory.Read.All
- Mail.Read
- Contacts.Read
- Calendars.Read
Required for probing and scanning Exchange Online Targets. - Group.ReadWrite.All
- User.ReadWrite.All
- Directory.ReadWrite.All
- Mail.ReadWrite
- Contacts.ReadWrite
- Calendars.ReadWrite
Required for remediating Exchange Online Targets. - Click Add permissions.
- In the Configured permissions page, click on Grant admin consent for <organization name>.
- In the Grant admin consent confirmation dialog, click Yes. The Status column for all the newly added API permissions will be updated to "Granted for <organization name>".
Set Up and Scan an Exchange Online Target
This section describes how to set up Exchange Online Targets for ER 2.1 and above.
- Configure Microsoft 365 Account.
- From the New Scan page, Add Targets.
- In the Select Target Type dialog box, select Microsoft 365 > Exchange Online.
-
Fill in the following details:
Field Description Exchange Online Domain Enter the Microsoft 365 domain to scan.
Example: example.onmicrosoft.com
Only accounts where the user principal name (UPN) shares the same domain as specified in the Exchange Online Domain field will be scanned and/or listed when probing the Target.For example, if Exchange Online Domain is set to example.onmicrosoft.com, user1@example2.onmicrosoft.com will not be scanned and/or listed when probing the Target even if the user belongs to a group in the example.onmicrosoft.com domain.
To scan multiple domains within your organization's Microsoft 365 environment, add these domains as separate Exchange Online Targets.
New Credential Label Enter a descriptive label for the Exchange Online credential set.
Example: m365-exchangeonline-exampledomain
Client ID Enter the Client ID.
Example: clientid-1234-5678-abcd-6d05bf28c2bf
See Generate Client ID and Tenant ID Key for more information.
Client Secret Key Enter the Client Secret key.
Example: client~secret.key-CHvV1B5YQfr~6zDjEyv
See Generate Client Secret Key for more information.
Tenant ID Enter the Tenant ID.
Example: tenantid-1234-abcd-5678-02011df316f4
See Generate Client ID and Tenant ID Key for more information.
Agent to act as proxy host Select a Windows, Linux or macOS Proxy Agent host with direct Internet access.
- Click Test. If ER2 can connect to the Target, the button changes to a Commit button.
- Click Commit to add the Target.
- Back in the New Scan page, locate the newly added Exchange Online Target and click on the arrow next to it to display a list of available Microsoft 365 groups for the domain.
- Select the Target location(s) to scan:
-
If "All Users" is selected, ER2 scans all user accounts in the Microsoft 365 domain.
"All Users" is a default, non-configurable virtual group in ER2 that automatically includes all user accounts in the Microsoft 365 domain. If a similar "All Users" group pre-exists in your Microsoft 365 environment, we recommend that you change the display name for that group as it will be viewed as a duplicate group and will not be displayed in ER2. -
If only specific groups are selected, ER2 only scans user accounts in the selected groups.
-
- Click Next.
- On the Select Data Types page, select the Data Type Profiles to be included in your scan and click Next.
-
On the Set Schedule page, configure the parameters for your scan. See Set Schedule for more information.
- Click Next.
- On the Confirm Details page, review the details of the scan schedule, and click Start Scan to start the scan. Otherwise, click Back to modify the scan schedule settings.
Edit Exchange Online Target Path
- Set Up and Scan an Exchange Online Target.
-
In the Select Locations section, select your Exchange Online Target location and click Edit.
-
In the Edit Exchange Online dialog box, enter a (case sensitive) Path to scan. Use the following syntax:
Mailbox / Folder to Scan Path All user accounts in a specific group Syntax: <Group Display Name>
Example: Engineering (SG)
Specific user account in group Syntax: <Group Display Name>/<User Principal Name>
Example: Engineering (SG)/user1@example.onmicrosoft.com
Specific folder for user account in group (e.g. Calendar, Contacts, Notes etc) Syntax: <Group Display Name>/<User Principal Name>/<Mailbox Folder>
Example: Engineering (SG)/user1@example.onmicrosoft.com/ProjectA
All user accounts Syntax: All Users
Specific user account Recommended for scanning mailboxes of user accounts that do not belong to any Microsoft 365 group.Syntax: All Users/<User Principal Name>
Example: All Users/user1@example.onmicrosoft.com
Specific folder for user account (e.g. Calendar, Contacts, Notes etc) Recommended for scanning mailboxes of user accounts that do not belong to any Microsoft 365 group.Syntax: All Users/<User Principal Name>/<Mailbox Folder>
Example: All Users/user1@example.onmicrosoft.com/ProjectA
If there are multiple Microsoft 365 groups with the same display name in your domain, ER2 will only retrieve the first group occurrence. For example, if there are three groups with the same display name, "Engineering", ER2 will only probe, scan and return results for the first "Engineering" group for the Exchange Online Target. - Click Test and then Commit to save the path to the Target location.
Unsupported Mailbox Types and Folders
ER2 currently does not support the following mailbox types and folders for the Exchange Online Target:
- Archived mailboxes (In-Place Archives)
- Deleted mailboxes
- Unlicensed mailboxes
- Microsoft 365 Group mailboxes and conversations
Exchange Online Remediation
If an Exchange Online email / message is removed using the "Deleted Permanently" remediation option, these emails / messages may still be discovered by ER2 in the Recoverable Items or Deleted Items folder upon rescans of the Exchange Online Target. Items in the Recoverable Items or Deleted Items folder cannot be further remediated and will be retained in Exchange Online until the retention period expires.
See Exchange Online - Retention Limits for more information.
Mailbox in Multiple Groups
This section describes the behavior of mailboxes that are members of multiple groups for the Exchange Online Target.
License Consumption
A mailbox for a user account that belongs to multiple groups
- is scanned each time a group the user belongs to is scanned.
- consumes only 1x data allowance usage regardless of how many times it is scanned as part of different groups.
When both "Engineering" and "Design" groups are added to the same scan, the mailbox for "UserA" is scanned once when "Engineering" is scanned, and a second time when "Design" is scanned.
Mailbox for "UserA" consumes only one Client License, and 5 MB Client License data allowance despite having been scanned twice.
Scan Results
Matches that are found in mailboxes that belong to multiple groups will be reported as a distinct match count for each group.
Take for example a simplified Exchange Online Target for the domain "example.onmicrosoft.com" below:
EXAMPLE.ONMICROSOFT.COM 55 matches
+– Engineering 30 matches
+– UserA 10 matches
+– UserB 20 matches
+– Design 25 matches
+– UserA 10 matches
+– UserC 15 matches
Matches found in the mailbox for UserA will be included in the match count for both Engineering and Design groups.