Manipulation informatique
Fiche : Manipulation informatique. Recherche parmi 300 000+ dissertationsPar dissertation • 12 Mars 2013 • Fiche • 1 113 Mots (5 Pages) • 908 Vues
Exemples de dissertations, mémoires et discours de qualité
Plus de 155.000+ exemples de dissertations, de fiches de lectures
30 000 d'élèves nous référencent tous les mois!Compte gratuit sur DissertationsEnLigne.com. Il n'y a ABSOLUMENT aucun frais d'adhésion.
Nous vous prions tout simplement de faire don d'un document pour le site. Votre compte sera activé immédiat Préparer votre document
Dissertations gratuites, mémoires, discours et notes de recherche
Dissertations
Voir la version complète Uac Windows Et Delphi
Uac Windows Et Delphi
Imprimer Document!
S'inscrire - Rechercher de 155.000+ Dissertations
Catégorie: Histoire et Géographie
Soumis par: Lisle 06 décembre 2011
Mots: 1559 | Pages: 7
...
nstater que même si la démarche est louable, dans les faits il existe beaucoup trop de limites à ce dispositif pour être utilisé avec efficacité …
2/Que vous soyez utilisateur standard ou administrateur, tout lancement d’un processus devant accéder au système doit provoquer l’appel d’un écran de confirmation d’exécution. Deux boites de dialogues différentes assurent cette tâche.
[pic]
En mode utilisateur, demande du mot de passe pour une élévation de privilège.
[pic]
En mode administrateur, une simple confirmation.
Important
C’est le processus (l’exe ou le COM) dans sa globalité qui fonctionne en mode administrateur ou utilisateur. N’envisagez donc pas d’avoir dans le même programme une partie du code demandant l’élévation de privilège administrateur. C’est au lancement du programme vous qu’il faut déterminer si le mode utilisateur standard suffit ou si le mode administrateur sera nécessaire.
Quelques règles de bonne conduite
Un ensemble de règles pour les nouveaux développements et bien sûr pour la reprise des anciens programmes peu facilement être appliqué.
1/Placer les données utilisateurs dans le répertoire de l’utilisateur ou dans un répertoire commun.
2/ Séparation du code en deux exécutables (ou 1 exécutable + 1 composant COM ). Toutes les fonctions ne nécessitant pas une élévation de privilège seront placées dans le programme principal. Les fonctions réservées à l’administrateur seront regroupées dans le second programme. Le premier ou le second processus devra disposer d’un mécanisme d’élévation de privilège pour les fonctions administrateurs.
3/Définir le niveau de sécurité que requière votre programme et créer un fichier manifest avec un des trois niveaux suivants (voir comment plus loin pour la création du fichier manisfest).
AsInvoker = le programme s’exécute avec le même niveau de droit que le parent.
HighestAvailable = l’application s’exécute avec les privilèges les plus hauts que l’utilisateur puisse obtenir.
RequireAdministrator = l’application ne peut être exécutée que par un administrateur.
Dans les 3 cas, il n’y aura plus de redirection vers VirtualStore.
4/ Dans vos sources, ne pas ouvrir les fichiers situés dans les répertoires protégés ou dans la registry avec un Flag WRITE ou dans un mode autorisant l’écriture.
5/ Ne pas utiliser le dossier de redirection (VirtualStore) pour vos nouveaux programmes et faites en sorte que ceux existants ne l’utilisent plus, car il n’est pas garanti que ce dossier et sa philosophie d’utilisation soient maintenus dans les prochaines versions de Windows.
6/ Est-il nécessaire de le préciser, ne jamais désactiver l’UAC, même, si cela permet de rendre a nouveau opérationnel un programme dans l’urgence. Il y a d’autres solutions.
7/ Informer l’utilisateur de la nécessité d’une élévation des droits par le symbole Bouclier (Shield)
[pic]
Pour le moment, nous en savons suffisamment pour commencer à travailler, mais je vous conseille néanmoins la lecture de l’excellent article de jacques MASSA sur l’UAC
http://msdn2.microsoft.com/fr-fr/library/bb469893.aspx
Cet article n’est pas orienté Delphi (et pour cause), mais vous y trouverez un complément d’information et disposerez ainsi d’une base de connaissance solide.
Comment faire pour
Déplacer les données vers un répertoire autre que ceux protégés.
Pour cela, utilisez les fonctions habituelles de localisation des répertoires particuliers
http://delphi.developpez.com/faq/?page=repertoire#specialdirectory
Rendre rapidement opérationnel un programme dont vous n’avez pas le source
Attention : opérationnel ne veux pas dire compatible VISTA au sans UAL du terme
Par l’ajout d’un fichier manifest externe.
Exemple
Voici le source d’un fichier manifest édité avec le notepad et enregistré sous le nom ‘NonExecutable.Exe.Manisfest’ et dans le même répertoire que l’exécutable. Ligne 8, choisissez le niveau de protection entre AsInvoker, HighestAvailable, et RequireAdministrator.
...