2 votes

Exécuter des fichiers batch Windows au démarrage ou lorsque tout utilisateur se connecte

J'ai un accès serveur où je veux que certains fichiers batch s'exécutent automatiquement pour n'importe quel utilisateur au démarrage.

Le problème est le suivant :

  1. Les autres utilisateurs ne peuvent pas exécuter ce fichier et il est nécessaire de l'exécuter en tant qu'utilisateur ayant créé le fichier (Je ne sais pas pourquoi, peut-être parce qu'ils n'ont pas les privilèges administratifs)

  2. Même avec runas, ils sont invités à entrer un mot de passe. Je n'ai pas de problème à partager le mot de passe mais je ne sais pas comment la tâche sera automatisée.

J'ai essayé runas /savecred /user:NomUtilisateur "c:/xyz.bat" mais cela échoue. La commande runas fonctionne avec /netonly mais alors elle demande un mot de passe.

Y a-t-il un moyen de faire en sorte que le script batch s'exécute pour n'importe quel utilisateur ?

3voto

Dj S Points 101

Si vous utilisez Windows Server ou une édition Professionnelle de Windows, vous pouvez le faire en utilisant la stratégie de groupe. Les scripts seront exécutés en tant qu'utilisateur connecté, quel qu'il soit, avec leurs autorisations respectives. Ils ne seront pas liés à un utilisateur spécifique.

Enregistrez vos scripts batch dans C:\Windows\System32\GroupPolicy\User\Scripts\Logon. Ensuite, ouvrez l'Éditeur de stratégie de groupe (gpedit.msc), allez dans Configuration utilisateur > Stratégies > Scripts (Ouverture Fermeture), puis sélectionnez Ouverture dans le panneau principal. Cliquez sur Ajouter dans la boîte de dialogue Propriétés d'ouverture, puis Parcourir pour sélectionner le script. Répétez cette opération pour chaque script que vous souhaitez exécuter au démarrage. Pour plus d'informations détaillées, consultez cet article Microsoft.

Ajout de scripts d'ouverture à l'aide de l'Éditeur de stratégie de groupe


Notez que le processus ci-dessus concerne les utilisateurs se connectant. Si vous souhaitez exécuter des scripts au démarrage du système avec les autorisations du Système Local, allez dans Configuration de l'ordinateur > Stratégies > Scripts (Démarrage Arrêt) et sélectionnez Démarrage, puis suivez le reste de la procédure ci-dessus. Les scripts pour le démarrage du système doivent être stockés dans C:\Windows\System32\GroupPolicy\Machine\Scripts\Startup.

2voto

Créez une tâche planifiée et exécutez-la en tant qu'utilisateur spécifié.

entrer la description de l'image ici

0voto

Chris Points 201

Pour permettre aux utilisateurs d'exécuter le fichier en tant qu'utilisateur différent (préconfiguré), j'ai eu du succès par le passé en utilisant Run as SPC lorsque j'ai eu une situation similaire. Vous configurez le cryptfile avec le nom d'utilisateur et le mot de passe prévus, ainsi que l'exécutable à exécuter, et il peut ensuite être utilisé par n'importe qui sans leur donner réellement accès au compte en dehors de la possibilité d'exécuter cet exécutable spécifique.

0voto

Doktoro Reichard Points 5220

Windows a un fichier appelé Autoexec.bat qui vous permet d'exécuter plusieurs commandes après la connexion d'un utilisateur. En ce qui concerne les autorisations, il est possible que vous ayez placé l'application dans un emplacement verrouillé pour les utilisateurs ordinaires (en supposant qu'il s'agissait d'une partition NTFS), donc une solution serait de placer le programme à la racine du lecteur (par exemple, C:/). Ensuite, et AFAIK, les programmes demandent la permission lorsque :

  • ils sont bloqués dans un dossier accessible uniquement par des utilisateurs administrateurs.
  • ils interagissent avec le Registre ou d'autres parties du système d'exploitation (auquel cas l'UAC intervient).

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X