Я пытаюсь выяснить, есть ли способ взять сохраненные учетные данные в хранилище Windows Cred и передать их в файл bat, который нуждается в учетных данных. Я нашел очень старый файл bat, в котором есть имя пользователя и пароль в виде открытого текста. Они используются для аутентификации на портале и должны быть прочитаны летучей мышью в виде открытого текста. На моем сервере хранятся учетные данные, которые я хочу использовать, чтобы я мог закрыть этот пробел в безопасности, но я не уверен на 100%, как передать пароль, потому что он должен быть в открытом виде. Вот что у меня есть:
$creds = Get-StoredCredential -Target "Username"
$password = $creds.Password
$username = $creds.UserName
Start-Process cmd.exe "/c C:\trigger.bat `"argument1`" $username $password `"Argument2`" Argument3" -NoNewWindow -Verbose
Когда я вписываю пароль в текстовом виде в моей строке, он работает. Если я использую $ пароль, он выдает ошибку аутентификации. Я предполагаю, что это потому, что $ пароль является сохраненным PSObject и не передается в cmd «правильно». Есть ли способ обойти это?
PS: Get-StoredCredential из модуля CredentialManager.