Это работает как положено, работает в цикле меню, и я могу хранить и расшифровывать учетные данные.
Однако, поскольку это зацикленное меню (чтобы иметь возможность запускать разные команды), оно запрашивает диалог пользователя / пароля каждый раз при перезапуске цикла.
У всех есть какие-либо идеи о том, какизменить это ?, чтобы пользователь / пароль вводился один раз, а затем при последующих запусках пароль не запрашивается повторно для этого сеанса?
Я думаю, мне нужно условие для получения учетных данных, но я не уверен .. (частичный, но соответствующий раздел, потому что меню довольно длинное ..
Оцените любой ввод
LoadMenuSystem
$Key = New-Object Byte[] 32
[Security.Cryptography.RNGCryptoServiceProvider]::Create().GetBytes($Key)
$Key | Out-File AES.key
(get-credential).Password | ConvertFrom-SecureString -key (get-content AES.key) | set-content "AESPassword.txt"
$password = Get-Content AESPassword.txt | ConvertTo-SecureString -Key (Get-Content AES.key)
$credential = New-Object System.Management.Automation.PsCredential($env:userName,$password)
$ServerName = Read-Host -Prompt "What is the server name?"
$Command = ".\myProgram"
$arg1 = '-t'
$arg2 = $credential.GetNetworkCredential().username+'@'+$ServerName
$arg3 = '-pw'
$arg4 = $credential.GetNetworkCredential().Password
$arg5 = $scriptcmd