1 votes

Win10 - Powershell - Combiner "net user" et "runas" pour éviter l'effacement des identifiants

Je souhaite pouvoir automatiser certains PC que je gère. Actuellement, j'utilise Ansible, mais je ne suis pas opposé à un autre outil.

L'objectif est de pouvoir modifier à distance le mot de passe d'un compte utilisateur individuel sur une machine Windows 10 sans que l'utilisateur ne perde l'accès à ses informations d'identification sauvegardées dans le Credential Manager.

Je sais que sous Windows 10, il semble que, par conception, à moins qu'un utilisateur ne déclenche lui-même une commande via la fonction CTRL + ALT + DEL Lorsque le mot de passe est modifié, les informations d'identification enregistrées et les secrets associés sont effacés.

Cependant, je suis certain de ne pas être le premier utilisateur à vouloir changer le mot de passe d'un utilisateur à distance sans vouloir brûler son Credential Manager et ses Secrets.

J'ai cherché sur Google pendant plusieurs jours toutes les combinaisons possibles du problème, mais je n'ai pas trouvé de solution raisonnable.

  • Une solution utilisant la commande "RunAs" fonctionnerait-elle de manière automatisée sur une machine sans tête ?
  • Si ce n'est pas le cas, existe-t-il un moyen de supprimer la fonctionnalité d'effacement des informations d'identification d'un compte d'utilisateur lors d'un changement de mot de passe ?

0voto

harrymc Points 394411

Je ne connais pas de moyen d'éviter que les informations d'identification soient effacées lors d'un changement de mot de passe.

En guise de solution de contournement, vous pouvez dans Panneau de configuration > Credential Manager utiliser les boutons "Back up Credentials" et "Restore Credentials". pour sauvegarder et restaurer les informations d'identification de l'utilisateur après la modification.

Je suppose que les informations d'identification Windows sont plus importantes que les informations d'identification Web.

Je vous conseille de tester cette méthode sur un ordinateur de test.

0voto

Daemin Points 5651

Pour autant que je sache, il existe deux façons de modifier le mot de passe d'un utilisateur local de Windows.

  1. Fournir le nom d'utilisateur, l'ancien mot de passe et le nouveau mot de passe. Ceci est utilisé sur le CTRL + ALT + DEL page. Dans ce cas, toutes les données d'identification enregistrées sont conservées.

  2. Réinitialiser le mot de passe à l'aide de divers outils Windows, notamment net user . Dans ce cas, il suffit de fournir le nom d'utilisateur et le nouveau mot de passe, mais pas l'ancien. Dans ce cas, toutes les informations d'identification enregistrées sont perdues, sinon n'importe quel administrateur pourrait changer le mot de passe d'un utilisateur et avoir accès aux informations d'identification enregistrées de l'utilisateur.

Par conséquent, si vous souhaitez conserver vos informations d'identification, vous devez connaître l'ancien mot de passe lorsque vous le modifiez.

Je sais qu'il existe des outils en ligne de commande qui permettent d'utiliser la première méthode. En fin de compte, il s'agit simplement d'un appel à l'API WIN32.

Dans le passé, j'ai utilisé passwd.exe par un certain Alexander Frink, mais je ne suis pas sûr qu'il soit encore disponible en ligne.

0voto

James Mertz Points 390

Appeler le NetUserChangePassword() API, par exemple par l'intermédiaire de PyWin32 .

Si ce n'est pas le cas, existe-t-il un moyen de supprimer la fonctionnalité d'effacement des informations d'identification d'un compte d'utilisateur lors d'un changement de mot de passe ?

Non, la fonctionnalité ne consiste pas tant à "effacer" qu'à "perdre la clé de décryptage". Bien que les données puissent effectivement être effacées, c'est principalement parce que la clé principale DPAPI de chaque utilisateur est cryptée à l'aide de son mot de passe de connexion, et que toutes les informations d'identification et les clés privées sont cryptées avec elle. Ainsi, un "changement" de mot de passe recrypte la clé principale de l'interface DPAPI, mais une "réinitialisation" est incapable de le faire (puisque l'ancien mot de passe n'est pas fourni).

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