Skip to content
  • There are no suggestions because the search field is empty.

Integrations : SaaS : Microsoft 365

Adding the Microsoft 365 Integration and Its Associated Insights

Overview

The Microsoft 365 connection in Block 64 enables secure, read-only access to Microsoft 365 tenant data.

This integration collects licensing, security, and usage metrics to provide detailed insights into license allocation, adoption trends, and security posture.

Once connected, the data collected from this integration appears in the following Block 64 Insights reports:

  • Reports → SaaS → Licensing – Displays license allocation, usage, and related costs.

  • Reports → Cloud → Microsoft Secure Scores – Shows security score metrics for evaluating organizational security.

  • Reports → SaaS → Usage – Tracks user activity trends, adoption metrics, and inactive accounts.

The credentials needed for this Integration

To set up this integration, you’ll need:

  • A Microsoft 365 account with Global Administrator or another role authorized to grant tenant-wide permissions.

  • The ability to approve delegated permissions for the M365 Connection (Read-Only) app.

For ease of use, we recommend using a credential that has the Global Administrator role. However, if you would prefer to use a credential that does not have the Global Administrator role, below is a list of the minimum permissions required to conduct a comprehensive inventory of your M365 Data.

How to add this Integration

  1. In the Block 64 portal, navigate to Integrations → Microsoft 365.

  2. Enter your Global Admin account and click on Connect.

  3. Sign in with a Microsoft 365 account that has the required admin role.

  4. On the Permissions requested screen for M365 Connection (Read-Only), review and approve the following access:

  5. Select Consent on behalf of your organization to prevent other admins from needing to approve the app separately.
  6. Click Accept to authorize the integration.
  7. Upon acceptance, you will be redirected to insights.block64.com where you will be notified of the connection.

  8. The connection will be activated shortly, and Microsoft 365 data will begin appearing in your SaaS reports within a few hours.

Security & Privacy

  • All access is read-only. Block 64 cannot make changes to your Microsoft 365 environment.

  • No email or document contents are accessed; only metadata required for licensing, usage, and security reporting is collected.

  • Data is handled in compliance with Block 64’s Privacy Policy and Microsoft’s Terms of Service.

  • Permissions can be reviewed or revoked at any time in Microsoft 365 Enterprise Applications settings.


Why is this Integration failing?

If the integration isn’t working, it’s usually because the correct permissions haven’t been granted, the consent has expired, or Microsoft Entra ID (Azure AD) security policies are blocking the connection.

To fix this:

  • Reconnect using an account with the appropriate admin role and grant all requested permissions.

  • Select Consent on behalf of your organization during setup.

  • In Microsoft 365 Enterprise Applications, confirm that M365 Connection (Read-Only) is still authorized.

How to remove this Integration

From Block 64:

You can disable this integration temporarily by clicking on the Enable switch in the integration.

Alternatively, you can disconnect the integration entirely by clicking on the Disconnect button.

From Microsoft 365:

  1. Sign in to the Microsoft Entra admin center.

  2. Navigate to Enterprise Applications.

  3. Search for and select M365 Connection (Read-Only).

  4. Choose Delete to remove the app and revoke all permissions.

Administrative Roles and Graph API Permissions

Firstly, ensure the credential has the following administrative roles assigned:

  • Reports Reader
  • Application Administrator
  • Global Reader
  • Teams Administrator

Secondly, ensure the credential has the following Graph API permissions:

Get User

/me Directory.Read.All

Get Users

/users

Directory.Read.All

AuditLog.Read.All for signInActivity

Get Groups

/groups Directory.Read.All

Get Licenses

/subscribedSkus Directory.Read.All

Get Mailboxes

/reports/getMailboxUsageDetail Reports.Read.All

Get Secure Scores

/security/secureScores SecurityEvents.Read.All

Get Secure Score Control Profiles

/security/secureScoreControlProfiles SecurityEvents.Read.All

Get Organization

/organization Directory.Read.All

Get User Activation Usage

/reports/getOffice365ActivationsUserDetail Reports.Read.All

Get Teams Usage

/reports/getTeamsUserActivityUserDetail Reports.Read.All

Get Sharepoint Usage

/reports/getSharePointActivityUserDetail Reports.Read.All

Get OneDrive Usage

/reports/getEmailActivityUserDetail Reports.Read.All

Get Outlook Usage

/reports/getEmailActivityUserDetail Reports.Read.All

Get M365 App User Details

/reports/getM365AppUserDetail Reports.Read.All

Get SharePoint Sites

/sites?search=* Sites.Read.All

Get SharePoint Drives

/sites/{site_id}/drive Files.Read.All

Get SharePoint Drive Items

/sites/{site_id}/drive/list/items Files.Read.All

Get SharePoint Drive Item Permissions

/sites/{site_id}/drive/items/{item_id}/permissions Files.Read.All

Get User's OneDrive

/users/{user_id}/drives Files.Read.All

Get OneDrive Drive Items

/drives/{drive_id}/list/items

Files.Read.All

Get OneDrive Drive Item Permissions

/drives/{drive_id}/items/{item_id}/permissions

Files.Read.All

Get PSTN Calls

/communications/callRecords/getPstnCalls

CallRecords.Read.All

Get Sensitivity Labels

/security/informationProtection/sensitivityLabels

InformationProtectionPolicy.Read.All