Réponses:
Pour vous authentifier automatiquement, ajoutez le /savecred
drapeau. Vous devrez entrer le mot de passe lors de la première exécution du script, mais il sera enregistré après cela.
Sachez que vous runas
pourrez ensuite utiliser les informations d'identification enregistrées pour exécuter un programme donné , alors pensez à la façon dont cela pourrait être un problème de sécurité avant de suivre cette voie.
Votre utilisation est correcte cependant, ajoutez simplement le chemin du programme à la fin.
runas /noprofile /user:joe@example.com /savecred script.bat
ou
runas /noprofile /user:joe-pc\joe /savecred script.bat
Pour supprimer une information d'identification enregistrée, recherchez le gestionnaire d'informations d'identification dans le Panneau de configuration.
La runas
commande doit vous demander les informations d'identification lorsque vous exécutez le fichier de commandes pour exécuter la commande spécifiée. Tant que vous l'exécutez dans cmd.exe . Cela est dû à la nécessité de l'entrée standard nécessaire pour demander le mot de passe. Vous ne pouvez pas simplement double-cliquer dessus. Stocker un mot de passe en texte brut dans un fichier batch est une mauvaise idée car il n'est pas sécurisé . C'est pourquoi il vous invite à l'exécution.
Vous pouvez cliquer avec le bouton droit sur l'exécutable et cliquer Run as Administrator
, sans la runas
commande. C'est probablement la solution que vous recherchez.
Si vous souhaitez exécuter la tâche en tant que tâche planifiée, vous pouvez la configurer pour l'exécuter en tant qu'utilisateur différent.
Run as Administrator
ou à définir la tâche pour qu'elle s'exécute en tant qu'utilisateur tel que la tâche planifiée. Toute autre option qui authentifie comme un administrateur ouvriraient des principaux risques de sécurité. Il semble que Windows n'ait pas cette capacité. Si vous souhaitez plus d'informations sur le sujet, voir setuid pour windows . setuid
est utilisé dans les environnements Unix pour permettre à un non-administrateur d'exécuter un programme en tant que root (admin). Un programme qui utilise setuid
doit être très soigneusement codé pour ne pas créer de vulnérabilités.
setuid
peut être configuré pour assumer les privilèges des autres utilisateurs ainsi que root sur un système Unix.
Vous pouvez utiliser RunAs lorsque vous appelez le fichier batch (cliquez avec le bouton droit sur le fichier batch et cliquez sur runas) pour exécuter le batch en tant qu'administrateur. Je soupçonne que les runas ne fonctionneront pas dans le lot. Je recommande de ne PAS mettre le mot de passe dans le fichier de commandes, même si cela a fonctionné, les fichiers de commandes sont en texte brut, vous pouvez donc aussi bien mettre le mot de passe sur une note post-it sur le moniteur.
Ce site Web explique comment créer un script d'auto-filtrage qui obscurcit le contenu du fichier vers le bas du fichier.
http://www.neowin.net/forum/topic/922704-secure-use-of-passwords-in-batch-files/