Question
comment crypter des credential dans un script ?
- darphboubou
- Auteur du sujet
- Hors Ligne
- Membre premium
Réduire
Plus d'informations
- Messages : 135
- Remerciements reçus 0
il y a 10 ans 2 mois #16997
par darphboubou
comment crypter des credential dans un script ? a été créé par darphboubou
Bonjour,
Je suis en train de mettre en place un script devant être lancé par une tache planifiée et faisant appel a des crédentials pour ouvrir une session distante.
C’est crédential sont cryptés (et donc lié au compte a partir duquel le fichier exchange.pwd a été créé). Donc si j’utilise ce script à partir d’une autre session, ce script devient inutilisable.
[code:1] $User = \"tatasd@totoO365.onmicrosoft.com\"
$Password = Cat \"C:\Temp\pass\exchange.pwd\" | ConvertTo-SecureString
$Credential = New-Object -typename System.Management.Automation.PSCredential -ArgumentList $User, $Password
CONNECT-MSOLService -credential $Credential[/code:1]
Il faudrait donc que se script puisse exploiter les crédentials depuis n'importe qu'elle compte ( pas uniquement le compte a partir du quel le fichier contenant le mot de passe à été créé).
Comment faire
Je suis en train de mettre en place un script devant être lancé par une tache planifiée et faisant appel a des crédentials pour ouvrir une session distante.
C’est crédential sont cryptés (et donc lié au compte a partir duquel le fichier exchange.pwd a été créé). Donc si j’utilise ce script à partir d’une autre session, ce script devient inutilisable.
[code:1] $User = \"tatasd@totoO365.onmicrosoft.com\"
$Password = Cat \"C:\Temp\pass\exchange.pwd\" | ConvertTo-SecureString
$Credential = New-Object -typename System.Management.Automation.PSCredential -ArgumentList $User, $Password
CONNECT-MSOLService -credential $Credential[/code:1]
Il faudrait donc que se script puisse exploiter les crédentials depuis n'importe qu'elle compte ( pas uniquement le compte a partir du quel le fichier contenant le mot de passe à été créé).
Comment faire
Connexion ou Créer un compte pour participer à la conversation.
- ANTRI Mohamed
- Hors Ligne
- Membre premium
Réduire
Plus d'informations
- Messages : 124
- Remerciements reçus 0
il y a 10 ans 2 mois #16998
par ANTRI Mohamed
Réponse de ANTRI Mohamed sur le sujet Re:comment crypter des credential dans un script ?
Hello,
Tu peux utiliser un [code:1]get-credential[/code:1] au début de ton script pour récupérer les credentials. Le soucis c'est que le mot de passe sera de type [code:1]System.Security.SecureString[/code:1]. Et ce type est déchiffrable grâce à une autre classe du framework. Si tu est en niveau fonctionnel de forêt 2008R2 tu peux regarder au niveau des comptes gérés de services pour ce genre de tâche ainsi cela pourra t'évité de gérer toi même les mots de passe.
Tu peux utiliser un [code:1]get-credential[/code:1] au début de ton script pour récupérer les credentials. Le soucis c'est que le mot de passe sera de type [code:1]System.Security.SecureString[/code:1]. Et ce type est déchiffrable grâce à une autre classe du framework. Si tu est en niveau fonctionnel de forêt 2008R2 tu peux regarder au niveau des comptes gérés de services pour ce genre de tâche ainsi cela pourra t'évité de gérer toi même les mots de passe.
Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
Réduire
Plus d'informations
- Messages : 1778
- Remerciements reçus 21
il y a 10 ans 2 mois #16999
par Philippe
Réponse de Philippe sur le sujet Re:comment crypter des credential dans un script ?
bonjour darphboubou
une astuce consiste a utilisé une clé qui fonctionne pour tout les utilisateurs :
[code:1]$Password = Cat \"C:\Temp\pass\exchange.pwd\" | ConvertTo-SecureString -key $key
[/code:1]
voir l'aide de ConvertFrom-SecureString et de ConvertTo-SecureString
Mais ATTENTION comme dis ANTRI, il est toujours possible de décrypter le mot de passe
c'est un sujet plusieurs fois abordé :
Crypter password ou Matthew BETTON propose des solutions alternatives
ou
Crypter une chaîne dans un script
une astuce consiste a utilisé une clé qui fonctionne pour tout les utilisateurs :
[code:1]$Password = Cat \"C:\Temp\pass\exchange.pwd\" | ConvertTo-SecureString -key $key
[/code:1]
voir l'aide de ConvertFrom-SecureString et de ConvertTo-SecureString
Mais ATTENTION comme dis ANTRI, il est toujours possible de décrypter le mot de passe
c'est un sujet plusieurs fois abordé :
Crypter password ou Matthew BETTON propose des solutions alternatives
ou
Crypter une chaîne dans un script
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.069 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- comment crypter des credential dans un script ?