Une des nombreuses nouveautés de System Center Configuration Manager 1702 est la capacité de déployer des applications disponibles en ligne uniquement sur le Windows Store aux périphériques gérés de manière traditionnelle avec le client ConfigMgr. Bien qu’elle fût déjà disponible en gestion moderne (MDM avec Microsoft Intune), la capacité pour la gestion traditionnelle a été introduite avec Windows 10 1703 (Creators Update).
On retrouve différents types de distribution des applications du Windows Store et Windows Store for Business :
- Les applications disponibles hors ligneque les entreprises peuvent ajouter à l’inventaire et dont il est possible de récupérer les binaires (APPX et APPXBundle) adéquats au déploiement hors ligne. Il devient possible de side-loader l’application à différentes phases : dans le master, lors du déploiement, lorsque le système est en ligne, etc. Ce mode de gestion est totalement déconnecté et n’assure ainsi pas de suivi de licence.
- Les applications disponibles en ligne sont celles dont les binaires ne sont pas mis à disposition par le développeur. Dans ce mode de fonctionnement, la récupération ne peut se faire que via le Windows Store en utilisant un compte Azure Active Directory pour associer l’acquisition à une identité utilisateur. Oubliez ainsi les modes de déploiement dans le master ou lors du déploiement, ce mode de déploiement n’a lieu que lorsque le système est chargé et configuré.
Une application peut être disponible dans les deux modes. C’est le cas de quasiment toutes les applications mises à disposition par Microsoft (Sway, OneNote, Word, etc.). Néanmoins comme je vous le disais, le mode de distribution (en ligne/hors ligne) est à la discrétion du développeur. La grande majorité des applications reste uniquement disponible en ligne.
Du coup, vous imaginez bien que la mise à disposition d’applications du Windows Store va vous diriger rapidement vers les modes de distribution en ligne.
Cet article n’a pas pour but de donner un pas à pas mais de détailler les grands prérequis et les erreurs à ne pas faire.
Mise en œuvre des prérequis
Parmi les prérequis nécessaires au déploiement d’applications disponibles en ligne via ConfigMgr, on retrouve :
Côté Infrastructure
- Une infrastructure System Center Configuration Manager :
- En version 1606 ou supérieure pour le déploiement en gestion moderne via Microsoft Intune
- En version 1702 ou supérieure pour le déploiement en gestion traditionnelle pour des clients ConfigMgr.
- L’ouverture d’un tenant Azure Active Directory et la synchronisation des comptes utilisateurs de votre entreprise avec Azure Active Directory Connect.
- La création de votre tenant Windows Store for Business avec le même tenant Azure Active Directory.
- Vous devez avoir configuré la connexion avec le Windows Store for Business dans System Center Configuration Manager. Outre les prérequis détaillés dans le lien, la création s’effectue dans la partie Administration > Overview > Cloud Services > Windows Store for Business de la console d’administration.
Côté client
- Des clients Windows 10 :
- En version 1606 (Anniversary Update) ou supérieure pour le déploiement en gestion moderne via Microsoft Intune
- En version 1703 (Creators Update) ou supérieure pour le déploiement en gestion moderne via Microsoft Intune
- Les clients doivent avoir une connexion Internet permettant l’accès au Windows Store for Business.
- La machine doit être :
- Soit jointe à Azure Active Directory (AAD). D’un point de vue expérience utilisateur, ce scénario est le plus simple puisque le compte de l’utilisateur est associé au système lors de cette phase. Il n’a ainsi pas besoin d’avoir accès au Windows Store et ce dernier peut d’ailleurs être bloqué par GPO. Ce scénario fait notamment sens lorsque la machine est gérée de manière moderne (via Microsoft Intune). Elle donne une approche hybride un peu moins cohérente lorsqu’elle est gérée de manière traditionnelle avec le client SCCM.
- Soit jointe à Active Directory (AD) et enregistrée dans Azure AD. Ceci peut se faire de deux façons :
- L'administrateur a configuré l'enregistrement automatique du périphérique dans Azure AD via la GPO Computer Configuration > Policies > Administrative Templates > Windows Components > Device Registration. Right-click Register domain-joined computers as devices. Voici plus en détails les prérequis pour réaliser l'enregistrement dans Azure AD : https://docs.microsoft.com/en-us/azure/active-directory/active-directory-conditional-access-automatic-device-registration-setup#prerequisites
- l’utilisateur doit avoir renseigné son compte Azure Active Directory dans l’application Windows Store dans la partie compte d’entreprise (Cf partie expérience utilisateur). L’expérience est moins user-friendly car l’association se fait manuellement. Dans ce scénario bien que le déploiement n’ait pas spécifiquement besoin du Windows Store. L’utilisateur doit y avoir accès pour faire l’association. Il n’est ainsi pas possible de le bloquer. Vous pouvez par contre limiter son accès à la partie Windows Store for Business via le paramétrage Only display the private store within the Windows Store app.
Une fois que ces prérequis sont validés, vous pouvez ensuite vous connecter au Windows Store for Business et acquérir les applications que vous souhaitez déployer à vos utilisateurs.
Ces dernières sont ensuite synchronisées par le connecteur et visibles dans Software Library > Overview > Application Management > License Information for Store Apps. Cette espace regroupe aussi les applications synchronisées au travers du Google Play Store for Work et de l’Apple Volume Purchase Program (VPP). D’ici, vous pouvez procéder à la création de l’application pour ensuite la déployer sur une collection d’utilisateurs ou de périphériques. Vous pouvez bien entendu déployer l’application de manière optionnelle (en libre-service) ou obligatoire.
Expérience de déploiement
En déployant une application de manière optionnelle, cette dernière apparaît dans le Software Center de l’utilisateur où il peut initier son installation :
On peut ensuite voir l’installation de l’application se dérouler dans le fond :
Côté expérience utilisateur, la facilité dépend véritablement de si la machine est jointe à Azure Active Directory ou Active Directory. Dans le premier cas, la réalisation est simple et l’administrateur peut même complétement bloquer l’accès au Windows Store. Dans le second cas, l'opération est réalisée par la GPO (voir précédemment). Dans le troisième cas, l’utilisateur doit configurer son compte Azure Active Directory et doit à minima avoir besoin à la partie Windows Store for Business de l’application.
Dépannage
L’installation de l’application échoue et vous observez des erreurs 0x80041001 dans le fichier AppEnforce.log :
+++ Starting Install enforcement for App DT "WindowsStoreBSPDeeplinkDT_Apprends l'anglais et l'espagnol avec Duolingo - Windows app package (in the Windows Store)" ApplicationDeliveryType - ScopeId_82996E66-2052-4906-8F4D-BA1F65942CA9/DeploymentType_7fa83bdc-051c-47fc-851f-866dfb409b41, Revision - 1, ContentPath - , Execution Context - User
The content path is not specified for DeploymentType ScopeId_82996E66-2052-4906-8F4D-BA1F65942CA9/DeploymentType_7fa83bdc-051c-47fc-851f-866dfb409b41. Content is assumed to be locally available.
A user is logged on to the system.
Failed to execute StoreInstallMethod with error = 0x80041001
+++ AppX Install Info added. [AppDT Id: ScopeId_82996E66-2052-4906-8F4D-BA1F65942CA9/DeploymentType_7fa83bdc-051c-47fc-851f-866dfb409b41]
AppXHandler::EnforceApp failed (0x80041001).
AppProvider::EnforceApp - Failed to invoke EnforceApp on Application handler(0x80041001).
CommenceEnforcement failed with error 0x80041001.
Method CommenceEnforcement failed with error code 80041001
++++++ Failed to enforce app. Error 0x80041001. ++++++
Dans ce scénario, le client n’est pas en capacité de récupérer l’identité Azure Active Directory de l’utilisateur connecté. Cela signifie que la machine n’a pas été joint à Azure Active Directory (à Active Directory simplement par exemple) et que l’utilisateur n’a pas renseigné son compte Azure Active Directory dans le Windows Store.
L’installation de l’application échoue et vous observez des erreurs 0x87D0032D dans le fichier AppEnforce.log :
Returns CCM_E_ONLINE_LICENSED_INPROGRESS for online licensed app.
+++ AppX Install Info added. [AppDT Id: ScopeId_587F978D-F05C-45D1-B5FB-A2100497A689/DeploymentType_6a0061c2-cb67-4348-a7f5-4fd81703423b]
AppXHandler::EnforceApp failed (0x87d0032d).
AppProvider::EnforceApp - Failed to invoke EnforceApp on Application handler(0x87d0032d).
CommenceEnforcement failed with error 0x87d0032d.
Method CommenceEnforcement failed with error code 87D0032D
++++++ Failed to enforce app. Error 0x87d0032d. ++++++
Dans ce scénario, le client exécute une version plus ancienne que Windows 10 1703 ou ultérieure.