Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
executer_un_script_au_lancement_d_une_session_windows [2021/06/30 14:23] – [Méthode 1 : Déployer un script d'ouverture de session avec Netlogon] superadminexecuter_un_script_au_lancement_d_une_session_windows [2022/04/11 16:34] (Version actuelle) – modification externe 127.0.0.1
Ligne 21: Ligne 21:
 :?: Le chemin pour accèder à netlogon est ''\\SERVEUR\netlogon'' (remplacer //SERVEUR// par le nom du contrôleur de domaine ou du domaine Active Directory). :?: Le chemin pour accèder à netlogon est ''\\SERVEUR\netlogon'' (remplacer //SERVEUR// par le nom du contrôleur de domaine ou du domaine Active Directory).
  
 +Pour l'exemple, je souhaite créer un script qui va automatiquement mapper des lecteurs réseau (dossiers partagés par le serveur sur le réseau) dans l'explorateur de fichiers Windows.
 +
 +D'abord, j'ai commencé par créer différents répertoires partagés à la racine du disque du serveur :
 +  * Un dossier partagé "Commun" accessible à tous les utilisateurs du domaine en lecture et en écriture.
 +  * Un dossier partagé "Scan" accessible en écriture par l'utilisateur "Copieurs" utilisé par les photocopieurs, mais uniquement en lecture pour les autres utilisateurs du domaine.
 +  * Un dossier "Utilisateurs" qui contient un dossier par utilisateur du domaine, nommés par le nom d'utilisateur correspondant, qui serviront à stocker les fichiers personnels de chacun. Évidemment, seul l'utilisateur concerné a accès en lecture et en écriture à son propre répertoire.
 +
 +Pour mapper ces répertoire partagés en tant que lecteurs dans l'explorateur de fichiers, j'ai créé le script suivant avec le bloc-notes Windows :
 +
 +<code>net use X: \\VM-AD\Commun /persistent:No
 +net use Y: \\VM-AD\Scan /persistent:No
 +net use Z: \\VM-AD\Utilisateurs\%username%</code>
 +
 +C'est la commande ''net use'' utilisée ici qui monte les lecteurs en précisant la lettre qui lui sera attribuée dans Windows. L'argument ''/persistant:No'' permet de préciser que l'on souhaite démonter les lecteurs à chaque fermeture de session, pour éviter qu'un autre utilisateur du poste ne puisse utiliser des lecteurs qui ne lui sont pas attribués.
 +
 +On remarque aussi la variable d'environnement ''%username%'' à la dernière ligne du script. Cette ligne sert justement à monter le répertoire personnel de l'utilisateur. L'utilisation de la variable ''%username%'' indique le nom de l'utilisateur courant dans le chemin du partage afin de monter son propre répertoire sans avoir à créer un script par utilisateur. L'astuce revient à nommer le dossier personnel de chaque utilisateur sur le partage par le nom de l'utilisateur exact auquel il appartient.
 +
 +Pour être exécutable, ce script doit être au bon format. Pour cela, lors de l'enregistrement du fichier, sélectionner le type de fichier "Tous les types" et ajouter manuellement l'extension ''.bat'' ou ''.cmd'' (l'une des deux, au choix) à la fin du nom du fichier.
 +
 +Si on exécute ce petit programme sur la session d'un utilisateur du domaine pour tester, ça fonctionne : mes 3 lecteurs sont bien montés avec la lettre que je leur ai assigné. La preuve :
 +
 +{{ ::38.lecteursreseau.png?500 |Lecteurs réseau montés via le script}}
 +
 +Donc on a déjà un script qui fonctionne, maintenant faisons en sorte qu'il soit exécuté à chaque ouverture de session par nos utilisateurs.
 +
 +A cet effet, il faut se rendre dans le partage ''Netlogon'' du contrôleur de domaine, dont j'ai parlé plus haut, et y copier le ou les script(s) à exécuter.
 +
 +Enfin, on fait un détour par la console ''Utilisateurs et Ordinateur Active Directory'' pour indiquer sur le profil de chaque utilisateur quel script d'ouverture de session il doit exécuter, via l'onglet ''Profil'' des propriétés des comptes [1] :
 +
 +{{ ::39.profiluserscript.png?400 |Réglage du script d'ouverture de session pour chaque utilisateur}}
 +
 +:!: Il suffit simplement d'entrer le nom du script à utiliser contenu dans le partage Netlogon à côté de ''Script d'ouverture de session'' [2].
 +
 +Une fois terminé, on valide, on ouvre une session avec un utilisateur à qui on a appliqué ce réglage, et ça fonctionne, les lecteurs se montent tous seuls !
 +
 +N'oubliez pas que les scripts d'ouverture de session peuvent servir à plein d'autres choses...
  
 ===== Méthode 2 : Déployer des scripts d'ouverture/fermeture de session via GPO ===== ===== Méthode 2 : Déployer des scripts d'ouverture/fermeture de session via GPO =====
 +
 +Les 2 inconvénients majeurs de la méthode 1 sont qu'elle ne permet pas de programmer de scripts de fermeture de session, et que la configuration des comptes AD peut être longue lorsqu'il y a beaucoup d'utilisateurs.
 +
 +C'est pourquoi je vais vous montrer une méthode encore plus simple et avantageuse, non plus basé sur Netlogon, mais sur des stratégies de groupe (GPO).
 +
 +Les stratégies de groupes sont des ensembles de réglages définis pouvant être appliqués à des ordinateurs ou à des utilisateurs du domaine. Elles utilisent les unités d'organisation présentes dans l'annuaire Active Directory afin de cibler les objets concernés.
 +
 +Si on veut exécuter des scripts personnalisés à certains utilisateurs, il va donc d'abord falloir les trier de façon hierarchique dans des unités d'organisation, en fonction de leur service d'appartenance ou de leur grade par exemple.
 +
 +
 +