Powershell: Sécuriser un mot de passe

Powershell: Sécuriser un mot de passe

By ronan, 28 janvier, 2025

Pour sécuriser un mot de passe afin de l'utiliser dans des scripts Powershell, exécuter les étapes suivantes

Générer la clé avec des données aléatoires

PS > $key = (1..32 | ForEach-Object { Get-Random -Minimum 0 -Maximum 256 }) -as [byte[]]

Sauvegarder la clé dans un fichier caché qui devra être accessible par les scripts concernés

PS > [System.IO.File]::WriteAllBytes(".mykey", $Key)

Bien évidement, cette clé devra rester secrète

PS > Get-Content .mykey
¥l{}ƒ)’´Yrz’¸¯>°'ÈH'­y¼ò/Àp↕Ž

Première étape de sécurisation du mot de passe

PS > $monmotdepasse = "ceciestmonmotdepasse" | ConvertTo-SecureString -AsPlainText -Force
PS > $monmotdepasse
System.Security.SecureString

Seconde étape de sécurisation du mot de passe

PS > $monmotdepassesecurise = $monmotdepasse | ConvertFrom-SecureString -Key $key
PS > $monmotdepassesecurise
76492d1116743f0423413b16050a5345MgB8AGMAZABXAHgAOQBWAHoAcgBXADUAcABJAEkAQQBVAGIAMQA1AGsAYgBuAHcAPQA9AHwAMAAxADcANABjADgAMQAwADMAOQBhADIAZQBkAGIAZAA3ADQAYgA2AGQAMQBhADEAZgAxADkAMwBjADEAOQA4ADUANABjADUANgBmAGUAMgA2ADMAMwAxADEAYQAwAGIAYwBkADUAOAAwADMAZAA4AGEAOQBhADcANQA4ADUAMQBiAGIAOQA2ADkANABiADAAMAA4ADgAMgA2AGEANgAyADAAZgBjADkAOQAwAGEAMQAyADcAZQA2AGEAMgBjAGUA

Cette chaine de caractères devra être copiée/collée dans tous les scripts Powershell concernés.

Etiquettes