Integrations : SaaS: Microsoft Intune
Adding the Microsoft Intune Integration and Its Associated Insights
Microsoft Intune Integration
Block 64's Microsoft Intune integration uses the Microsoft Graph API to collect hardware specifications and installed software from every enrolled device — Windows, macOS, iOS and Android — into a new Site named "Intune Devices", closing the inventory gap for mobile and BYOD endpoints that agent and appliance scans cannot reach.
Requires: an active Intune licence, and a Microsoft Entra administrator who can grant tenant-wide consent — Global Administrator, Privileged Role Administrator, or a least-privilege custom role.
Note: on iOS and Android, Intune reports only company-managed applications, so installed-software data is partial.
Overview
Once connected, Block 64 reads your Intune managed-device inventory on each sync and normalises it into a dedicated Site named Intune Devices. Devices appear alongside agent- and appliance-scanned endpoints in the existing hardware, software and discovery reports — no report configuration is required.
Devices already inventoried by another method are not double-counted. Block 64 identifies endpoints by device name and serial number, so a laptop seen by both the Block 64 agent and Intune resolves to a single endpoint.
This is a consent-based integration. There is no API key or secret to generate — you authorise Block 64's application in your Microsoft Entra tenant and Microsoft returns the authorisation to us.
Before You Begin
Use this sequence to set up the integration: confirm requirements, choose the consent approach, connect Intune in Block 64, wait for the first sync, then review data and reports.
Security & Privacy
- Block 64 requests a single read-only Graph permission, DeviceManagementManagedDevices.Read.All. Nothing is written back to Intune or Entra.
- No credentials or secrets are stored on your behalf — authorisation is held as a consent grant in your own tenant, and you can revoke it at any time.
- Only device inventory and installed-application metadata are collected. Device contents, user files, email, location and browsing activity are never accessed.
- On iOS and Android, only company-managed applications are visible to Intune, so personal applications are never collected.
Requirements
|
Requirement |
Details |
|
Intune licence |
Active Microsoft Intune licence on the tenant. Without one, Microsoft Graph returns 403 and the sync fails |
|
Entra role |
An administrator able to grant tenant-wide admin consent — see Granting Admin Consent below |
|
Graph permission |
DeviceManagementManagedDevices.Read.All (application permission, read-only) |
|
Enrolled devices |
Devices must be enrolled in Intune. Devices that are Entra-registered but not Intune-enrolled are not returned |
Granting Admin Consent
Connecting Intune requires tenant-wide admin consent, because Block 64 reads device inventory as an application rather than on behalf of a signed-in user.
Important: the Entra roles that sound like they should be sufficient are not. Cloud Application Administrator, Application Administrator and AI Administrator can consent to any permission for any API except Microsoft Graph application permissions — and DeviceManagementManagedDevices.Read.All is exactly that. An app registration Owner cannot grant tenant-wide consent either.
You have three options:
|
Option |
Who can do it |
Notes |
|
1 · Global Administrator |
Global Administrator |
Simplest. Most tenants use this |
|
2 · Privileged Role Administrator |
Privileged Role Administrator |
Works, but this role can assign any directory role including Global Administrator. Prefer Option 1 or 3 |
|
3 · Least-privilege custom role |
A Global Administrator creates it once; anyone assigned it can then connect |
Most secure. Requires Microsoft Entra ID P1 and one-time setup via Microsoft Graph PowerShell
|
Option 3 — Least-privilege custom role
If your organisation does not want to involve a Global Administrator every time an integration is connected, Microsoft supports delegating consent through a custom directory role bound to a scoped app consent policy. The role can consent to approved applications and nothing else — it cannot assign directory roles, so it creates no privilege-escalation path.
A Global Administrator performs this once:
- Create an app consent policy scoped to the permission Block 64 needs
DeviceManagementManagedDevices.Read.All:
DeviceManagementConfiguration.Read.AllDeviceManagementApps.Read.AllDeviceManagementRBAC.Read.AllDeviceManagementServiceConfig.Read.All
- Create a custom role definition whose only permission is microsoft.directory/servicePrincipals/managePermissionGrantsForAll.<policy-id> — New-MgRoleManagementDirectoryRoleDefinition.
- Assign the role to the people who connect integrations — New-MgRoleManagementDirectoryRoleAssignment.
Prerequisites: Microsoft Entra ID P1, and Microsoft Graph PowerShell — the Entra admin center cannot add these permissions to a custom role definition. Consider making the assignment PIM-eligible rather than permanent if you have P2.
Reference: Microsoft, App consent permissions for custom roles.
Connect Intune in Block 64
- In Block 64, navigate to Config › Integrations.
- Locate the Microsoft Intune card and click Connect.
- You are redirected to Microsoft. Sign in with an account holding one of the roles above.
- Review the requested permission and click Accept.
- Microsoft returns you to Block 64 and the integration is recorded. The first sync is queued automatically.
Tip: the first sync makes roughly two Graph calls per device, so a large fleet can take several minutes. Refresh the Integrations page to watch the status change.
Data Collected
Device hardware
|
Field |
Source |
|
Device name, serial number |
Intune managed-device record |
|
Manufacturer, model |
Intune managed-device record |
|
Operating system and version |
Intune managed-device record |
|
Chassis type |
Per-device hardware detail (desktop, laptop, tablet, phone, …) |
|
Physical memory |
Per-device hardware detail |
|
Total and free storage |
Intune managed-device record |
|
Ethernet and Wi-Fi MAC addresses |
Per-device hardware detail |
|
Assigned user |
Intune managed-device record |
|
Enrolment date, last sync date |
Intune managed-device record |
|
SKU family, management state |
Intune managed-device record |
Installed software
Collected per device from Intune's detected-applications inventory: application name, version and publisher.
Limitations
|
Limitation |
Detail |
|
iOS and Android software is partial |
Intune reports only company-managed applications on these platforms. Personally installed apps are not visible, by design — this is a privacy boundary Microsoft enforces, not a Block 64 gap |
|
iOS publishers are blank |
Intune returns no publisher for iOS applications, so they are recorded as unknown |
|
Store / MSIX app names |
Microsoft Store and MSIX packages report a package identifier rather than a product name, so some Windows Store apps may not match Block 64's software library. Publisher is recovered from the signing certificate where possible |
|
Enrolment required |
Entra-registered devices that are not Intune-enrolled are not returned |
|
Stale devices |
Intune devices are considered stale after 90 days without a sync, rather than the 30 days used for agent-scanned Remote Devices. MDM devices sync on their own policy interval and can legitimately go quiet for weeks |
Troubleshooting
|
Issue |
Resolution |
|
Consent screen shows an error, or the Accept button is unavailable |
The signed-in account lacks a role that can grant consent to Microsoft Graph application permissions. See Granting Admin Consent — note that Cloud Application Administrator and Application Administrator are not sufficient |
|
Connected, but no devices appear |
The first sync may still be running. If it has completed, confirm the tenant has an active Intune licence and that devices are Intune-enrolled |
|
Sync fails after working previously |
Admin consent may have been withdrawn, or the Intune licence may have lapsed. Reconnect the integration from Config › Integrations |
|
Device count lower than expected |
Only Intune-enrolled devices are returned. Devices already inventoried by the Block 64 agent or appliance are merged into a single endpoint rather than counted twice |
|
Windows Store apps not matching the software library |
Expected — see Limitations |
Disconnecting Intune
Available options on the card.
- Navigate to Config › Integrations.
- Locate the Microsoft Intune card and click Disconnect.
Revoking Block 64's consent from the Microsoft side (Entra admin center › Enterprise applications) also stops collection.