Comment puis-je utiliser la fonction read-host de powershell pour accepter un mot de passe pour un service externe?

J'ai un script que j'ai écris qui établit une connexion à un service SOAP. Une fois la connexion faite, j'ai besoin de passer par un identifiant/pass avec chaque commande j'envoie. Le problème que j'ai est que lorsque j'utilise read-host pour ce faire, mon mot de passe apparaît en clair et reste dans le shell:

PS C:\Users\Egr> Read-Host "Enter Pass"
Enter Pass: MyPassword
MyPassword

Si je le cacher avec -AsSecureString, la valeur ne peut plus être transmis au service, car il est maintenant un Système.De sécurité.SecureString objet:

PS C:\Users\gross> Read-Host "Enter Pass" -AsSecureString
Enter Pass: **********
System.Security.SecureString

Quand je passe la ce, il ne fonctionne pas. Je ne me préoccupe pas des mots de passe transmis au service en clair, je ne veux pas me planter sur un shell utilisateur après ils entrer leur mot de passe. Est-il possible de masquer la Lecture de l'Hôte d'entrée, mais qui ont toujours le mot de passe stockés en tant que texte clair? Si non, est-il possible que je peux passer le Système.De sécurité.SecureString objet clair?

Grâce

source d'informationauteur EGr