[SCCM] 2016 Déploiement d'applications
Avec SCCM vous avez la possibilité d’installer une application (ou un package) en mode administrateur ou bien utilisateur. Le mode utilisateur installe l’application avec les permissions de l’utilisateur en cours, qui n’est généralement pas administrateur de sa machine. Pour cette raison, les déploiements d’applications se font en grande majorité en mode administrateur.
Cependant, il arrive parfois que l’on soit forcé d’installer une application en mode utilisateur, et ça complique un peu le déploiement. Si l’application est au format MSI, une solution simple consiste à utiliser une GPO qui active ces 2 paramètres :
Configuration Ordinateur \ Modèle d’administration \ Composants Windows \ Windows Installer \ Toujours installer avec des droits élevés
Configuration Utilisateur \ Modèle d’administration \ Composants Windows \ Windows Installer \ Toujours installer avec des droits élevés
Ainsi, un utilisateur peut exécuter un fichier MSI qui va s’installer sans demander de droits administrateur. Vous pourrez ainsi déployer une application avec SCCM sans vous soucier des permissions. Mais ceci vous oblige à laisser la GPO active en permanence, ce qui n’est pas recommandé en terme de sécurité.
Il existe une autre solution qui consiste octroyer temporairement à l’utilisateur en cours des droits élevés, installer l’application souhaitée, puis les retirer ces droits quelques minutes après. Pour donner les droits élevés à un utilisateur, il faut configurer ces 2 clés de registre :
- HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Installer
- HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\Installer
- Clé (DWORD) : AlwaysInstallElevated
- valeur : 1
Si l’une des 2 clés est manquante, l’utilisateur n’aura pas de droits élevés.
La clé HKLM sera inscrite par un script PowerShell et la clé HKCU sera inscrite par GPO. La GPO configure la clé de registre au niveau utilisateur (et de façon permanente) tandis que le script PowerShell va inscrire la clé au niveau ordinateur et planifiera une tâche pour désactiver les droits élevés N minutes plus tard (en changeant la valeur de la clé de registre à 0). Ainsi, l’utilisateur aura des droits élevés juste pendant le temps de l’installation de l’application.
Côté SCCM, vous devrez créer une application qui contiendra le script PowerShell.
La GPO a créer est la suivante :
Configuration utilisateur / Préférence / Paramètres Windows / Registre
- Ruche : HKEY_CURRENT_USER
- Chemin de la clé : Software\Policies\Microsoft\Windows\Installer
- Valeur : AlwaysInstallElevated
- Type de valeur : REG_DWORD
- Données de valeur : 00000001
Puis un script PowerShell avec les 3 commandes suivantes :
%windir%\system32\reg.exe add HKEY_LOCAL_MACHINE\software\policies\microsoft\windows\installer /v AlwaysInstallElevated /t reg_dword /d 1
$heure = (get-date).AddMinutes(15).ToString(« HH:mm »)
schtasks /CREATE /SC ONCE /TN « InstallElevated » /TR « %systemroot%\system32\reg.exe add HKEY_LOCAL_MACHINE\software\policies\microsoft\windows\installer /v AlwaysInstallElevated /t reg_dword /d 0 » /ST $heure /F /RU « NT AUTHORITY\SYSTEM »
- La 1ere commande écrit la clé de registre qui autorisera l’installation avec des droits élevés.
- La seconde commande récupère l’heure courante dans une variable et ajoute 15 minutes.
- La 3eme commande créé une tâche planifiée pour interdire l’installation avec des droits élevés et s’exécutera 15 minutes plus tard. Cette tâche s’exécute une seule fois et sous un compte SYSTEM.
- Déposez le script PowerShell dans un emplacement source.
- Créez une nouvelle application
- Spécifiez les informations manuellement :
- Nommez votre application :
- Renseignez les informations pour le catalogue des applications :
- Ajoutez un type de déploiement :
- Spécifiez les informations manuellement :
- Nommez le type de déploiement :
- Renseignez l’emplacement source
- La commande d’installation est la suivante :
powershell.exe -executionpolicy unrestricted .\InstallElevated.ps1
- Ajoutez une clause de détection :
- La clause sera de type Registre
- Ruche : HKEY_LOCAL_MACHINE
- Clé : Software\policies\microsoft\windows\installer
- Valeur : AlwaysInstallElevated
- Data type : Integer
- La valeur doit être égale à 1
- Sélectionnez Install for system
Editez maintenant votre application.
















/image%2F0881799%2F20140610%2Fob_a8c7fe_logo2.jpg)
Commenter cet article