C’est un nouveau mode de fonctionnement des applications spécifique à Windows VISTA. Par défaut, vos applications vont s’exécuter avec des privilèges restreints quelque soit le login de l’utilisateur (même l’administrateur).
1 – Pas de manifeste :
Les applications vont fonctionner comme avant sous Windows XP en exploitant la « Virtualisation » de VISTA. (Redirection des écritures dans des zones non autorisées)
2 – Avec Manifeste :
Manifeste Admin : On peut tout faire mais à chaque lancement de l’application, l’UAC va se déclencher et demander la validation à l’utilisateur et le LOGIN et mot de passe si l’utilisateur courant n’est pas ADMIN.
Manifeste Privilèges maxi de l’utilisateur : On peut faire tout ce que l’utilisateur çà le droit de faire mais l’UAC va demander confirmation à chaque lancement de l’exe.
Manifeste User : L’UAC ne demande rien et on a les limitations suivantes (liste non exhaustive) :
- Pas de droits d’écriture à la racine du disque système (C:\),
- Pas de droits d’écriture dans le répertoire de Windows (donc attention à la gestion des .INI),
- Pas de droits d’écriture dans \Program Files\ (cela peut être contraignant si votre application utilise le répertoire courant des programmes pour les données),
- Pas d’accès à la base de registre pour « HKEY_LOCAL_MACHINE ».
La bonne solution ?
Je pense qu’il faut utiliser un manifeste sous VISTA. D’abord parce qu’il est important d’intégrer les nouvelles technologies et éviter d’utiliser des systèmes ne fonctionnant que par compatibilité avec d’anciennes méthodes. Ce mécanisme bien que contraignant va certainement sécuriser les installations et donc a de grandes chances d’être imposé dans de nombreuses société, autant livrer des applis aux normes VISAT dés aujourd’hui.
Quel manifeste ?
Dans la mesure du possible, il faut prendre comme objectif de créer une application qui fonctionne en manifeste USER. C’est celui qui impose le moins de contraintes à l’utilisateur. Il faut adapter ses applications pour respecter les contraintes.