Déploiement d’une application en Sideloading

Introduction

J’ai récemment dû développer une application « Moderne », c’est à dire une application pour Windows 8.1. Je devais ensuite déployer cette application sans passer le Windows Store (c’est à dire en sideloading). N’ayant pas trouvé de site résumant la totalité des choses à faire, j’écris ceci pour résumer tous ce que j’ai pu trouvé. Ce document a pour but de présenter la procédure de déploiement d’une application Windows Store en sideloading sur un poste client.

Il faut savoir qu’au 1er mai 2014, Microsoft à changé ses règles sur le sideloading.
Avant, il fallait acheter une clé de sideloading par poste pour activer cette fonctionnalité (sauf sur les Windows Entreprise raccordé à un Active Directory, cette fonctionnalité était activé par défaut).
Maintenant, les clés de sideloading s’achètent 100$ et elles sont illimités. Une seule clé de sideloading est maintenant nécessaire par entreprise, elle peut activer un nombre de poste illimité. L’activation par défaut de la fonctionnalité de sideloading est désormais étendu aux Windows Professionnal raccordé à un Active Directory. En revanche, les versions familiales de Windows ne peuvent activer la fonctionnalité de sideloading.

I] Génération du package de l’application

A) Signature du package d’application

Il faut savoir que le package d’une application moderne est obligatoirement signé par un certificat pour authentifier son auteur.
Par défaut, Visual Studio émet un certificat auto-signé pour faciliter la tâche pendant le développement.
Cependant, vous pouvez (devez) acheter un certificat propre à votre entreprise reconnu par une autorité de certification. Cela vous permettra entre autre de vous épargner une étape dans le déploiement.

NB : Si vous souhaitez garder le certificat auto signé de Visual Studio, vous pouvez passer directement à la prochaine partie.

Il va donc falloir configurer Visual Studio afin de lui donner un certificat spécifique, pour cela il vous faut un certificat en .pfx.
Une fois muni du certificat, lancez Visual Studio 2012 (ou supérieur) et ouvrez votre solution.

1) Dans l’explorateur de solution ouvrez le fichier Package.appxmanifest

Package.appxmanifest

2) Allez dans l’onglet Packages et cliquez sur le bouton « Choisir un certificat »

Choisir un certificat

3) Cliquez sur « Configurer le certificat… » et sélectionnez l’option « À partir d’un fichier… »

Choisir Certificat

4) Choisissez votre certificat, validez et enregistrer votre solution

Et voilà, votre certificat sera désormais utilisé pour signer le package lors de la publication du celui-ci.

B) Génération du package

Maintenant, il faut générer le package de l’application que l’on souhaite installer.
Pour cela, lancez Visual Studio 2012 (ou supérieur) et ouvrez la solution de l’application voulu.

1) Allez dans Projet > Windows Store > Créer des packages d’application

Créer le package de l'application

2) Sélectionner « Non » et cliquez sur Suivant

Cliquez sur Non

3) Désignez un emplacement de sortie du package et laissez les paramètres par défaut. Puis cliquez sur « Créer »

Sélectionnez un emplacement

A partir d’ici le package d’application est généré et signé. On peut passer au déploiement.

II] Déploiement d’un package d’application

A) Préparation du poste pour installation

Avant d’installer le package d’application, il est nécessaire de configurer le poste afin qu’il accepte d’installer celui-ci.

1) Accepter les sources externes

Afin d’autoriser le sideloading, il nous faut activer une stratégie Windows.
Pour cela, il suffit d’ajouter une clé dans le registre Windows :

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Appx]

« AllowAllTrustedApps » = dword:00000001

Si vous ne savez pas comment faire, suivez ces instructions :

  1. 1. Ouvrez une invite de commande ou « Exécuter »
  2. 2. Tapez « regedit » puis appuyez sur Entrée
  3. 3. Allez au chemin HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Appx (si la clé Appx n’existe pas, créez la)
    Registre
  4. 4. Ajoutez une nouvelle valeur DWORD avec comme nom « AllowAllTrustedApps » et comme valeur « 1 »
    Nouvelle valeur

2) Enregistrer le certificat qui a signé le package

NB : Cette partie vous concerne uniquement dans le cas où vous n’avez pas fourni un certificat signé par une autorité de certification (si vous avez laissé Visual Studio signer le package avec un certificat auto signé).

Il vous faut maintenant installer le certificat de sécurité qui a servi à signer le package de l’application sur le poste client afin que Windows le désigne comme valide et de confiance. Pour cela, vous devez disposer des droits administrateur.
Vous trouverez ce certificat (.cer) dans le dossier du package de l’application généré par Visual Studio (chemin renseigné dans la partie I]B)3)).

Pour l’installer :

  1. 1. Double cliquez sur le certificat, puis cliquez sur « Installer un certificat »
    Installer le certificat
  2. 2. Dans l’assistant qui viens d’apparaitre, cliquez sur « Ordinateur local » puis sur « Suivant »
    Step 1
  3. 3. Sélectionnez « Placer tous les certificats dans le magasin suivant », puis cliquez sur « Parcourir » et sélectionnez « Autorités de certification racines de confiance ». Ensuite, cliquez sur « Suivant »
    Step 2
  4. 4. Cliquez sur « Terminer »

Maintenant que le certificat est installé, il ne reste plus qu’une étape avant de pouvoir installer l’application.

3) Ajouter la fonctionnalité de sideloading

NB : Cette étape ne concerne que les postes clients n’ayant pas une version Windows 8.1 Entreprise ou Windows 8.1 Professionnel, reliée à un domaine Active Directory.

Afin d’activer la possibilité d’installer une application en sideloading, il est nécessaire d’installer une clé de sideloading puis de l’activer.

a) Installer une clé de sideloading

Afin d’installer une clé de sideloading, il vous faut déjà démarrer un invite de commande et vous positionnez dans le répertoire Windows/System32 (grâce à la commande « cd »).

Une fois au bon endroit, rentrez la commande suivante :

cscript slmgr.vbs /ipk <votre clé>

Votre clé est maintenant installée. Il vous reste à l’activer.

b) Activer une clé de sideloading

Pour activer une clé de sideloading, comme pour l’activation, vous devez ouvrir un invite de commande et de vous placer dans le répertoire Windows/System32.

Une fois au bon endroit, rentrez la commande suivante (exactement celle-ci) :

cscript slmgr.vbs /ato ec67814b-30e6-4a50-bf7b-d55daf729d1e

NB : L’identifiant ec67814b-30e6-4a50-bf7b-d55daf729d1e sert à identifier une clé de sideloading.

c) Vérifier qu’une clé de sideloading est installée et activée

Afin de vérifier qu’une clé de sideloading est installée et activée sur une machine, même chose qu’au-dessus mais la commande suivante :

cscript slmgr.vbs /dlv

Le premier bloc d’information concerne la licence Windows de la machine, ce qui nous intéresse est le second bloc identifié par la mention « APPXLOB » ainsi que la clé d’activation « ec67814b-30e6-4a50-bf7b-d55daf729d1e »  qui concerne la licence de sideloading (ce bloc est inexistant si aucune clé n’est installée).

Clé active

B) Installation du package d’application

Maintenant que le poste est prêt à accueillir notre package d’application, nous pouvons enfin l’installer.

Il ne suffit que d’une commande PowerShell pour l’installer :

Add-AppxPackage <fichier.appx>

Et voilà, c’est est tout pour cet article. Si vous avez des questions ou si vous souhaitez que je détail plus un aspect de la procédure, laissez un commentaire.

Sources :
Sideloading Windows 8.1 Apps
Windows 8.1 Sideloading Enhancements
Sideloading : Installer des applications modernes sur Windows 8 et Windows RT


Pas encore de commentaires

Laisser un commentaire