SOAP サービスに接続するスクリプトを書いています。接続が確立されたら、送信するすべてのコマンドでユーザー名/パスを渡す必要があります。私が抱えている問題は、これを行うために read-host を使用すると、パスワードがクリアテキストで表示され、シェルに残ることです。
PS C:\Users\Egr> Read-Host "Enter Pass"
Enter Pass: MyPassword
MyPassword
-AsSecureString で非表示にすると、System.Security.SecureString オブジェクトになっているため、値をサービスに渡すことができなくなります。
PS C:\Users\gross> Read-Host "Enter Pass" -AsSecureString
Enter Pass: **********
System.Security.SecureString
これを渡すとうまくいきません。パスワードがクリアテキストでサービスに渡されることは気にしません。ユーザーがパスワードを入力した後、ユーザーのシェルに残りたくないだけです。Read-Host 入力を非表示にできますが、パスワードはクリアテキストとして保存できますか? そうでない場合、System.Security.SecureString オブジェクトをクリアテキストとして渡す方法はありますか?
ありがとう