Scripting Windows: Automatiser les tâches d’administration avec VBScript, WSH, WMI, ADSI et les objets COM

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Author(s): Antoine Habert, Cédric Bravo

Language: French
Pages: 352

Avant-propos......Page 6
Table des matières......Page 10
La mauvaise réputation......Page 21
Les limites des interfaces graphiques......Page 22
Améliorer la productivité côté administration et support technique......Page 23
Améliorer la productivité côté poste de travail......Page 24
N’en rajoutent-t-ils pas un peu ?......Page 25
2 - Panorama des outils de script......Page 27
Introduction aux outils de scripting......Page 28
VBScript......Page 29
Comment se présente un script VBS ?......Page 30
Quelle est la différence entre mode fenêtré et mode console ?......Page 31
Qu’est ce qu’un objet ?......Page 33
Script Runtime : agir sur le système de fichier......Page 35
De quoi est composé Script Runtime ?......Page 36
WMI, c’est quoi ?......Page 37
Vais-je m’y retrouver ?......Page 38
Est-ce que le scripting d’ADSI est compliqué ?......Page 39
Ce qu’il faut retenir : qui fait quoi ?......Page 40
3 - VBScript : le fondement des solutions de scripting......Page 41
Pour bien commencer......Page 42
Utiliser les fonctions de bases : variables, constantes, chaînes de caractères......Page 43
Les variables......Page 44
Les chaînes......Page 46
Qu’est ce qu’une déclaration explicite ou implicite de variable ?......Page 48
Pourquoi déclarer explicitement ?......Page 49
Qu’est-ce qu’un objet d’automation ?......Page 51
Qu’est-ce qu’une méthode ?......Page 53
Mise en pratique : utilisation d’objet d’automation......Page 54
Créer un lecteur réseau pointant sur le partage d’un serveur de ressources......Page 55
Extraire le code Site du nom de machine pour déterminer le nom du serveurde ressources......Page 56
Définir le nom du serveur......Page 57
Comment se présente une collection VBScript ?......Page 58
Les boucles For Each......Page 59
Faire des boucles For Next......Page 61
La boucle Do While......Page 62
Principe de fonctionnement......Page 63
Exemple de test de contrôle......Page 64
Retour sur l’exemple de la société Noobex......Page 65
Les procédures Sub......Page 67
Les procédures Function......Page 68
Mettre en oeuvre l’interactivité avec l’utilisateur......Page 70
On Error Resume Next......Page 72
Exemple de gestion d’erreur......Page 73
Conclusion......Page 74
4 - Interprétation des scripts par le système d’exploitation : Windows Script Host......Page 75
Le fonctionnement de l’interprétation WSH et le retour d’erreur......Page 76
Les objets WSH (Wscript/WshShell/WshNetwork/WshController)......Page 78
Wscript......Page 79
Connexion aux objets avec WSH......Page 81
Présentation de l’objet WshShell......Page 82
Utiliser un outil en ligne de commande : méthode Run de WshShell......Page 83
Suppression d’un mappage réseau avec la méthode RemoveNetworkDrive de WshNetwork......Page 87
Créer une connexion à une imprimante réseau avec la méthode AddWindowsPrinterConnection de WshNetwork......Page 88
Syntaxe de WshController......Page 89
Exécution d’un script sur une machine distante avec la méthode CreateScript de WshController......Page 90
Périmètre d’utilisation de Script Runtime......Page 91
FSO ou WMI ?......Page 92
Exemple de gestion de disque avec la propriété Drives de l’objet FSO......Page 93
Les propriétés de l’objet Drive disponibles......Page 94
Exemple d’utilisation des propriétés de Drive......Page 95
Faire référence à un ou plusieurs répertoires avec la méthode GetFolder de FSO......Page 96
Autres méthodes de FSO disponibles pour les répertoires......Page 97
Les propriétés liées aux répertoires......Page 98
Propriétés des fichiers avec FSO......Page 100
Attributs des fichiers......Page 101
Créer un fichier avec nom aléatoire......Page 102
Ouvrir un fichier texte......Page 103
Lecture d’un fichier texte......Page 104
Écrire dans un fichier texte......Page 107
Qu’est-ce qu’un objet dictionnaire ?......Page 109
Définir ses propriétés......Page 110
Afficher les éléments contenus dans un dictionnaire......Page 111
Vérifier l’existence d’une clé dans un dictionnaire......Page 112
Quand utilise-t-on les dictionnaires ?......Page 113
Comprendre l’architecture de WMI......Page 115
Périmètre de WMI dans la gestion d’infrastructure Microsoft......Page 116
Qu’est-ce que le modèle CIM ?......Page 117
Comment se connecter à WMI et retrouver desressources ?......Page 118
Un premier exemple de script WMI......Page 119
Agir sur un objet spécifique d’une classe......Page 122
Personnification de l’exécution d’un script WMI......Page 123
Utilisation de Scriptomatic V2......Page 125
Les classes les plus représentatives en Scripting d’infrastructure......Page 126
Utiliser WMI pour superviser des ressources matérielles et logicielles......Page 128
WHERE, ISA, AND : définir l’élément audité......Page 130
NextEvent : choix de l’action à effectuer......Page 131
Autre possibilité de surveillance avec WMINous avons vu que WMI......Page 132
Comment créer un script avec ADSI ?......Page 133
Un petit mot sur les chemins LDAP......Page 134
Création d’une OU......Page 136
Création d’un groupe......Page 137
Suppression d’une OU......Page 138
Multiplier les créations ou les suppressions......Page 139
Lecture d’attributs d’un objet......Page 140
Modification d’attributs d’un objet......Page 141
Gérer les attributs à plusieurs valeurs......Page 142
Faire des recherches dans Active Directory......Page 145
Spécification de la connexion active......Page 146
Affecter le contenu de notre commande à l’objet Command préalablement instancié......Page 147
Création d’une boucle pour traiter les résultats......Page 148
Exemple de recherche Active Directory......Page 149
Lister des conteneurs : intérêt et mise en pratique......Page 151
8 - Techniques courantes d’administration système......Page 153
Modifier des objets utilisateur dans une OU......Page 154
Modifier des objets utilisateur dans une arborescence d’OU avec requête ADO......Page 156
Modifier des objets utilisateurs dans une arborescence d’OU avec une procédure récursive......Page 157
L’exemple global......Page 159
Tester la mémoire système sur un ensemble de machines......Page 161
Autre méthode de surveillance : surveiller les services......Page 168
Relancer un service arrêté, et amélioration de la lisibilité des requêtes WMI......Page 171
Lecture de la valeur d’une clé de registre par script......Page 173
Écriture d’une clé ou valeur dans le registre......Page 174
Supprimer une clé de registre......Page 175
Conclusion......Page 176
Travailler en ligne de commande dans vos scripts......Page 177
Réservation d’adresse IP sur des serveurs DHCP......Page 178
Gérer des inscriptions DNS à partir d’un fichier CSV à plusieurs entrées......Page 182
Import-export de droits sur des fichiers et dossiers avec FileAcl.exe......Page 185
Gestion Active Directory......Page 191
Administration du système d’exploitation......Page 193
Gestion d’imprimante réseau avec PRNADMIN.DLL......Page 196
Envoi d’un mail avec pièce jointe par l’objet CDO.Message et la fonction With de VBScript......Page 204
Lecture du calendrier de réplication Active Directory et objet ADS......Page 206
Exemples de gestion de fichiers de log : rapports d’erreur......Page 209
Création d’un mode Debug : dites 33......Page 210
Traçabilité des erreurs......Page 211
Création d’une procédure de test d’erreur......Page 213
Activation du mode Debug par argument en ligne de commande......Page 214
Récupération d’un code d’erreur générée par une méthode ou fonction......Page 216
Présentation de LogParser......Page 217
Exemple d’utilisation de LogParser......Page 219
Utiliser LogParser pour manipuler le gestionnaire d’événements deWindows......Page 222
Requête du nombre d’événements inscrit dans le journal système......Page 223
Connexion à un journal distant......Page 224
Analyse de connexion réseau avec Iperf et exécution distante WMI......Page 225
11 - Scripts de logon dans les environnements Windows 2000 et 2003......Page 231
Conception d’un script de logon via VBScript......Page 232
L’importance de la convention de nommage......Page 233
Les parties spécifiques......Page 234
Récupérer les informations utilisateur et stations de travail......Page 236
Isoler le nom complet d’OU dans le nom complet utilisateur......Page 238
Détermination de l’appartenance de l’utilisateur à un groupe......Page 239
Interaction avec l’utilisateur......Page 246
Problématique......Page 248
Objectifs......Page 249
Méthode de résolution......Page 250
Script d’attribution de script de logon aux utilisateurs......Page 254
Interaction avec l’utilisateur du script......Page 255
Procédure d’inscription de l’attribut Logon dans Active Directory......Page 256
Génération d’un fichier journal dans le script d’attribution de logon......Page 259
Création du script de retour arrière......Page 260
Mesure de temps d’exécution d’un script de connexion : fonction Now et DateDiff de VBScript......Page 263
Conclusion......Page 265
Dans quel cas ?......Page 267
Syntaxe......Page 268
Retour de valeurs......Page 269
Exemples d’application......Page 270
Inputbox......Page 272
Interprétation de la valeur saisie dans la boîte Inputbox......Page 273
Création d’un répertoire sur un serveur donné......Page 274
Pour aller plus loin......Page 279
Structure de base d’un formulaire HTML......Page 280
Ligne de saisie......Page 283
Zone de texte sur plusieurs lignes......Page 285
Les listes déroulantes......Page 286
Interaction entre un formulaire HTML et un script VBScript......Page 287
Gérer la validation du formulaire : boutons HTML......Page 288
Gestion de l’action sur les boutons......Page 289
Utiliser un formulaire HTML dans un VBScript......Page 293
Paramétrage de serveurs DHCP par formulaire HTML......Page 298
Pour aller plus loin......Page 307
13 - Scripting, sécurité et chiffrement......Page 309
Quels sont les risques réels des scripts ?......Page 310
Sécuriser l’exécution des scripts en environnement Microsoft......Page 311
Changer le droit par défaut sur wscript et cscript......Page 312
Changer le programme d’exécution par défaut des fichiers .vbs......Page 313
Création d’une nouvelle extension pour les fichiers .vbs......Page 315
Utiliser un langage compilable proche de VBScript : AutoIt v3......Page 318
Lancement d’une application avec des droits administrateurs......Page 319
Masquer la saisie de mot de passe......Page 320
Méthode de résolution......Page 321
Chiffrement de VBS : le format VBE......Page 322
Chiffrement d’un fichier texte......Page 324
Déchiffrement d’un fichier texte......Page 325
Conclusion......Page 326
14 - Certificats, scripting pour Windows XP SP2 et avenir du shell sous Windows......Page 327
Génération d’un certificat......Page 328
Signer un script... par script !......Page 334
Comment signer plusieurs scripts ?......Page 335
Scripting et Service Pack 2 Windows XP......Page 336
Vérifier le niveau de Service Pack sur une station......Page 337
Conclusion......Page 338
Les règles d’or......Page 339
Indenter son programme......Page 340
Script Center Microsoft......Page 341
Scripting Answers......Page 342
La documentation portable......Page 343
LogParser 2.2......Page 344
VBS Factory......Page 345
Scriptomatic V2......Page 346
Conclusion......Page 347
Index......Page 349