Comment puis-je faire en sorte que le logiciel Windows s'exécute en tant qu'utilisateur différent dans un script?

StackOverflow https://stackoverflow.com/questions/98134

Question

J'utilise un script de construction qui appelle Wise pour créer des fichiers d'installation. Le problème est que la licence Wise ne permet son exécution que sous un seul compte d'utilisateur, ce qui n'est pas le même compte que celui utilisé par mon script de génération. Je sais que Windows dispose de la commande runas , mais cela ne fonctionnera pas pour un script automatisé car il est impossible de saisir le mot de passe via la ligne de commande.

Était-ce utile?

Autres conseils

Je vous recommande de consulter CPAU .

  

Outil de ligne de commande pour le démarrage du processus   dans un contexte de sécurité alternatif.   Fondamentalement, ceci est un remplacement de runas.   Permet également de créer des fichiers de travail   et encoder l'id, mot de passe, et   ligne de commande dans un fichier afin qu'il puisse être   utilisé par les utilisateurs normaux.

Vous pouvez l'utiliser comme ceci ( exemples ):

CPAU -u user [-p password] -ex "WhatToRun" [switches]

Vous pouvez également créer un ".job". fichier dans lequel l'utilisateur et le mot de passe seront codés. De cette façon, vous éviterez de mettre le mot de passe de l'utilisateur dans votre script de construction.

C'est un peu une solution de contournement, mais vous pouvez créer une tâche planifiée qui s'exécute sous votre compte d'utilisateur et la faire exécuter régulièrement, peut-être une fois par minute. Oui, vous devrez attendre son exécution ensuite.

Cette tâche peut ensuite rechercher certains fichiers de données à traiter et effectuer le travail réel uniquement s’ils se trouvent là.

Cela pourrait aider, c’est un cours que j’ai utilisé dans un autre projet pour permettre aux gens de créer leurs propres comptes; Tout le monde devait avoir accès au programme, mais le même compte ne pouvait pas être autorisé à accéder au contenu LDAP. Le programme utilise donc cette classe pour l'exécuter en tant qu'utilisateur différent.

http://www.codeproject.com/KB/dotnet/UserImpersonationInNET.aspx

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top