Managing apps and software deployment through Microsoft Intune
Use a combination of WinGet Group Policy, centralized source control, and application control.
- Control which WinGet sources are allowed WinGet includes Group Policy settings for Source Control, letting IT administrators specify which sources are allowed or blocked. This is the primary way to stop users from pulling packages from any source you do not approve.
- Deploy WinGet policy centrally
Beginning in Windows 11, WinGet Group Policy templates are included with each release. Download the
DesktopAppInstallerPolicies.zippackage from the WinGet GitHub releases, extract it, copy the.admxand matching.admlfiles intoC:\Windows\PolicyDefinitionsand the language folder such asC:\Windows\PolicyDefinitions\en-US, then configure the policies in Group Policy Management Console (GPMC). On a domain controller, these templates can be stored in the Central Store. - Use an enterprise-controlled repository for approved apps For internal or approved corporate apps, WinGet can be pointed to a private enterprise repository. A documented approach is to use the WinGet REST API reference implementation as an Azure Web App, or host a static pre-indexed package index in Azure Blob Storage. Then distribute that repository configuration centrally using Group Policy or Microsoft Intune.
- Restrict execution of non-approved apps, not just download sources If the goal is to allow only approved apps or only Microsoft-signed apps, source restriction alone is not enough. Use App Control for Business policies to define what is allowed to run based on signing identity and file attributes. Code signing lets the system verify files have not been tampered with and ties them to a publisher identity. The guidance recommends requiring app binaries and scripts to be code signed wherever possible.
- Be careful with certificate-pinning bypass
WinGet supports a policy named
BypassCertificatePinningForMicrosoftStore, but enabling the bypass reduces protection against man-in-the-middle risks. Leave it Not configured unless there is a specific enterprise need, such as SSL inspection causing Microsoft Store source connection errors. - Validate current WinGet policy state on clients
Run
winget --infoon a client to view detailed WinGet information, including configured group policies.
Practical approach for the scenario:
- Block or limit public sources with WinGet Source Control policy.
- Publish only approved apps through a private enterprise WinGet repository.
- Enforce allowed publishers or signed apps with App Control for Business.
- Use Intune or Group Policy to deploy all of the above consistently across devices.