Je vous propose dans ce tutoriel de découvrir comment créer un fichier Logon Script sur un domaine Active Directory. L’objectif d’un fichier Logon Script est d’exécuter des tâches diverses et variées, automatiquement, lorsqu’un utilisateur du domaine ouvre une session sur sa machine.
Cette fonctionnalité est fréquemment utilisée et devient très vite indispensable. Il est ainsi possible de mapper un lecteur réseau sur le poste d’un utilisateur selon l’appartenance de ce dernier à un groupe Active Directory, de spécifier la page par défaut du navigateur de l’utilisateur, d’installer un programme ou une mise à jour, etc …
Créer un fichier Logon Script
Un fichier de commande Logon Script peut être créé dans de nombreux langages (VBS, Fichier de commandes MS-DOS, Powershell, …). Il faut simplement bien comprendre que c’est le client sur lequel la session sera ouverte qui exécutera ce script, ce dernier devra donc être à même de l’exécuter.
Ainsi si vous créez un fichier Logon Script avec des instructions en Powershell et que le parc informatique est essentiellement composé de station Windows 2000, XP ou Vista vous devrez alors vous préalablement déployer Powershell sur ces stations. Powershell étant par contre nativement intégré à Windows 7 / 8 votre script fonctionnera normalement. Voilà il est donc important de garder en tête que le script doit être compatible avec le poste sur lequel il s’exécute.
Nous allons dans cet exemple créer un fichier de script en VBS nommé logonscript.vbs dans lequel nous allons mettre le code suivant. Je vous recommande l’utilisation d’un éditeur de texte comme PsPad.
'****************************************************************** ' Fichier logonscript.vbs ' Version 1.0 '****************************************************************** On Error Resume Next Set objNetwork = WScript.CreateObject("Wscript.Network") WScript.sleep 1000 objNetwork.RemoveNetworkDrive "R:" objNetwork.MapNetworkDrive "R:" , "\\NOMDUSERVEUR\NOMDUPARTAGE"
Ce code en VBScript permet de mapper le partage \\NOMDUSERVEUR\NOMDUPARTAGE sur le lecteur réseau R:\ du poste client sur lequel le script va s’exécuter. Vous pouvez d’ailleurs le tester sur votre machine avant de le “publier” sur un contrôleur de domaine.
Mettre en place le fichier Logon Script sur un contrôleur de domaine
C’est on ne peut plus simple de mettre en place un fichier Logon Script. Il suffit en effet de le déposer dans le partage par défaut \\nomducontrôleur\NETLOGON de l’un de vos contrôleurs de domaine. Ce fichier sera automatiquement répliqué sur tous les contrôleurs de domaine du dit domaine et ainsi potentiellement accessible à tous les clients.
Paramétrer le compte Active Directory des utilisateurs du domaine
Ouvrez la console d’administration Active Directory Users and Computers
Sélectionnez le compte auquel vous souhaitez attribuer le fichier logonscript.vbs et accédez auxpropriétés du compte
Dans l’onglet Profile, renseignez le nom du fichier logonscript.vbs dans le champ Logon Script. Inutile de spécifier le chemin complet puisque Active Directory va directement regarder dans le partage \\nomducontrôleur\NETLOGON
Validez en cliquant sur Appliquer puis OK.
Il est peut être nécessaire d’attendre plusieurs minutes avant que cela soit opérationnel, cela dépend de la topologie de réplication de votre environnement Active Directory. En effet le client qui va exécuter le script ne sera peut être pas authentifié sur le même controleur de domaine que celui sur lequel vous venez de modifier le compte 😉
Tester le fonctionnement du Logon Script
Vous pouvez vérifier le bon fonctionnement du Logon Script en ouvrant une session avec le compte sur lequel vous avez attribuer le fichier logonscript.vbs
Un lecteur réseau R:\ doit apparaitre dans le poste de travail.
Si l’utilisateur supprime son lecteur réseau, à chaque démarrage de sa session, le lecteur sera de nouveau présent ! Même s’il se connecte sur un autre ordinateur, il aura accès à son lecteur réseau.
J’ai des difficultés pour refaire ce tuto, que faut il modifier dans le script et ou mets on le script?
Merci.