Jak mogę użyć funkcji odczytu / hosta powershell, aby zaakceptować hasło do usługi zewnętrznej?

Mam skrypt, który piszę, który łączy się z usługą SOAP. Po nawiązaniu połączenia muszę podać nazwę użytkownika / hasło z każdym wysłanym poleceniem. Mam problem z tym, że gdy używam do tego hosta do odczytu, moje hasło jest wyświetlane w postaci zwykłego tekstu i pozostaje w powłoce:

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

Jeśli ukryję to za pomocą -AsSecureString, wartość nie może być już przekazana do usługi, ponieważ jest ona teraz obiektem System.Security.SecureString:

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

Kiedy to przekazuję, nie działa. Nie dbam o to, aby hasła były przekazywane do usługi w czystym tekście, po prostu nie chcę, aby hasła były przechowywane w powłoce użytkownika po wprowadzeniu hasła. Czy można ukryć dane wejściowe do odczytu, ale mimo to hasło jest przechowywane jako czysty tekst? Jeśli nie, czy istnieje sposób, aby przekazać obiekt System.Security.SecureString jako czysty tekst?

Dzięki

questionAnswers(2)

yourAnswerToTheQuestion