Titre

Crypter un mot de passe dans un script powershell

Comment stocker le mot de passe d'un compte de façon sécurisée dans powershell

Vous devez exécuter la procédure depuis le serveur sur lequel le script sera exécuté et avec le compte qui va lancer le script.

Lancez une session powershell

De base, dans un script, vous pouvez convertir votre mot de passe et écrire sa clé dans un fichier.

Notez que la procédure ne concerne que le mot de passe. Le login n'entre pas en ligne de compte pour générer la clé de cryptage. Par contre le compte qui lance la procédure de cryptage du mot de passe à son importance. La clé de cryptage devra être utilisée dans un script lancé avec le même compte qui a crypté le mot de passe.

Lien vers le fichier : cliquez ici

Avec la commande suivante, vous pouvez aussi générer une fenêtre dans laquelle il faudra saisir le login/mot de passe à sécuriser :

Lien vers le fichier : cliquez ici

Entrez le login/mdp

Puis obtenez la clé du mot de passe qui est stocké dans une SecureString avec cette commande :

Lien vers le fichier : cliquez ici

Récupérez la clé :

Maintenant vous pouvez utilisez la clé dans vos script sur ce serveur. La clé correspond à votre mot de passe crypté.
Il vous faut stocker cette clé dans une variable en la convertissant au préalable avec la fonction ConvertTo-SecureString -String

Lien vers le fichier : cliquez ici

Exemple :

Maintenant créez un objet credential qui va stocker le couple login/mot de passe et qui pourra par la suite être utilisé dans le reste du script :

Lien vers le fichier : cliquez ici

Cet objet créé, vous pouvez récupérer le mot de passe en clair ainsi :

Lien vers le fichier : cliquez ici

Vous pourrez, par exemple, passer un login/mot de passe a des utilitaires tel que psexec :

Lien vers le fichier : cliquez ici

Ou utiliser directement l'objet credential dans vos scripts powershell :

Lien vers le fichier : cliquez ici

Article(s) précédent(s)