๐ฑ Recipe ยท Intune & Device Management
Deploy an Intune App to a Specific User and Verify Installation
Validate user eligibility, locate the app in Intune, assign it to the target user or group, and confirm successful installation
Complexity
Intermediate
Impact
user-productivity + endpoint-management + software-lifecycle
Context
Why This Matters
IT admins frequently receive software installation requests from individual users. Rather than granting local admin rights or manually installing software, the correct path in a Microsoft 365 / Intune-managed environment is to deploy the application through Intune's app catalog. This ensures the install is tracked, licensed, compliant with security policy, and uninstallable through the same channel.
This recipe walks through the full lifecycle for a single-user deployment: verifying the user exists and is active, confirming they have an Intune-enrolled device capable of receiving the app, locating the app (or importing it) into the Intune catalog, assigning it to the user (directly or via a group), and verifying the install reached the endpoint.
When to run this recipe
- A user requests a specific application (e.g., Figma, Slack, Adobe Reader) via a ticket or self-service portal.
- You need to push a licensed application to a new hire on their first day.
- You are replacing a manual install with a managed Intune deployment.
Expected Outcomes
- The target user is confirmed as an active, licensed Microsoft 365 account with at least one Intune-enrolled device.
- The requested application exists in the Intune mobile app catalog (or has been added).
- An app assignment exists targeting the user (or a group containing the user) with the correct intent (Required or Available).
- Installation status has been verified on the user's device either via the Intune admin center or the Graph
userAppInstallStatusesendpoint. - A short audit note or ticket comment records the deployment and completion time.
Risks & Considerations
Before you deploy
- Licensing: Confirm the app is appropriately licensed for the user. Deploying a paid app (e.g., Figma) without a purchased seat violates vendor terms.
- Device enrollment: If the user has no Intune-enrolled device, the assignment will sit in a pending state indefinitely. Verify enrollment first โ do not create an assignment to a nonexistent endpoint.
- Assignment intent:
requiredforces install (good for line-of-business apps),availablepublishes it to Company Portal for user-initiated install (preferred for optional productivity tools). Choose deliberately. - Group assignments: Prefer assigning to a dynamic or static security group over direct user assignment โ it scales and is easier to audit.
- App not in catalog: If the app is not yet in Intune, adding it (especially Win32 LOB or macOS PKG) is itself a multi-step task requiring packaging and is out of scope for a single-user deploy.
Common gotchas
- Case-sensitive
$filterondisplayNamecan miss apps โ prefercontains()or list and match client-side. complianceStatemust becompliantfor Conditional Access-protected apps to actually reach the device.- Installs can take 15 minutes to several hours depending on device check-in cadence. Don't close the ticket before verifying.
Required Permissions
| Permission | Why It's Needed |
|---|---|
| User.Read.All | Resolve the target user's object ID, UPN, and account status. |
| DeviceManagementManagedDevices.Read.All | Enumerate the user's Intune-enrolled devices and compliance state. |
| DeviceManagementApps.ReadWrite.All | Read the app catalog and create or update app assignments. |
| Group.ReadWrite.All | Add the user to a deployment target group if assigning by group membership. |
| DeviceManagementConfiguration.Read.All | Read install status reports for the user and device. |
The fastest way to get this done โ just ask Dex. Copy the prompt below and paste it into your Dex conversation.
For IT Admins
Paste into Dex CoAdmin
For End Users
How an employee would ask Dex for help