Donc, j'ai un client qui doit exécuter un logiciel avec des privilèges plus élevés, mais l'utilisateur travaille avec un compte limité et je ne suis pas disposé à lui donner le mot de passe pour plusieurs raisons.
Je cherchais un moyen de laisser le programme commencer sans demander à un mot de passe administrateur, et j'ai couru dans runas
.
C'est la commande que j'utilise:
runas/Utilisateur: Administrateur/Savecred "chemin\to\logiciel.exe"
Ce qui se passe, c'est que cela demande le mot de passe la première fois, mais rien ne se passe après avoir inséré le mot de passe. Le programme ne serait tout simplement pas lancé, peu importe combien de fois j'ai exécuté la commande.
Le chemin est correct et le compte administrateur est bien, toujours aucun résultat.
J'ai également vérifié que 2 services sont en cours d'exécution (ne vous souviennent pas de leurs noms, mais ils sont liés à la gestion des applications avec des privilèges différents).
Avez-vous une solution pour que cela fonctionne?
Si le contrôle de compte d'utilisateur (UAC) est activé sur votre ordinateur (j'espère que la réponse est "Oui"), la commande "Runas" n'élevait pas vos privilèges. C'est-il exécuter l'application, mais pas avec des privilèges administratifs.
Cependant, essayez cette commande Windows PowerShell:
Start-Process "Path\To\Software.exe" -Verb "runas"
Naturellement, vous devez entrer cette commande dans Windows PowerShell au lieu de l'invite de commande.
Cela dit, ce n'est certainement pas une solution à votre problème. la politique de Microsoft est de ne pas fournir ou de ne pas refuser tout droit à utiliser chaque moyen qui encourage à utiliser des privilèges administratifs. (cette politique est entrée en vigueur après le fiasco de sécurité de 2003.) La chose la plus proche que Microsoft fournit est une compatibilité des applications. Toolkit qui vous permet d'ignorer le manifeste de l'application et de gérer avec des privilèges limités. Cela fait l'affaire pour les applications qui sont assez stupides pour ne pas vérifier si elles ont obtenu ce qu'ils ont demandé dans leurs manifestes.
Bien sûr, je remarque de temps en temps des solutions de sécurité tierces, qui permettent à ce que vous voulez. Sauf que, en raison de l'impopularité, ils disparaissent rapidement.
Nous avons constaté que si le profil Runas n'était pas complètement chargé (c'est-à-dire que les runas uid ne s'étaient pas complètement connectés à la machine auparavant), cela ne fonctionnerait pas correctement ...
CBB & LTSB 1607.
L'utilisation d'un programme pour stocker des informations d'identification va être mauvaise, peu importe la façon dont vous le regardez. Si l'utilisateur est capable d'obtenir une partie des informations d'identification stockées, ils sont capables de décrypter le mot de passe (indice: ils pourront y accéder, sinon le programme ne fonctionnerait pas), à moins que le programme n'utilise de la tokénisation. . Même dans le cas où il fait une tokénisation, il est possible d'exécuter d'autres commandes en tant qu'utilisateur administratif si elles "passent le hash" comme disent dans le champ de sécurité (les jetons ne sont pas cryptés/déchiffrés aussi loin que je peux le dire, alors ils ont été séparés exprès; et même s'ils sont/étaient, un utilisateur peut les déchiffrer).
Votre meilleur choix depuis que vous ne voulez pas donner à cette personne, l'accès admin sera de leur accorder un accès spécifique aux fichiers et aux dossiers que le programme tente d'utiliser. Plus de détails sont nécessaires sur le programme ou les fichiers/dossiers qui sont accessibles avant qu'une bonne recommandation puisse être donnée. Si vous leur accédez à l'aide de l'onglet Security
dans la zone Propriétés du dossier, ils pourraient peut-être exécuter le programme sans privilèges d'administration. Sinon, le programme n'a pas été très bien fait. Vous pouvez également utiliser une machine virtuelle ou avoir un autre bureau que l'utilisateur peut être éloigné de manière à ce qu'ils puissent avoir accès à celui-ci et non au système qu'ils travaillent.
Si vous souhaitez voir quels fichiers et dossiers à un utilisateur utilisent sous Windows, vous pouvez utiliser l'outil Process Monitor
. Cet outil répertoriera une quantité d'informations insensées que tous les processus font sur la machine (vous pouvez filtrer les données). Les fichiers, les dossiers, les fils, la mise en réseau, le registre et les événements de profilage sont tous surveillés par l'outil. Il s'agit de Sysinternals et une partie de la suite Sysinternals située ici sur TechNet . Je n'ai aucun lien avec eux, mais j'ai utilisé leurs outils pendant de nombreuses années.