我们有多个PowerShell脚本,需要技术用户的凭据。
我们尝试将哈希作为安全字符串,但这需要每个用户对凭据进行哈希处理,因为安全字符串与用户的配置文件相关联。
我试图实现这样的事情是不成功的:
"以管理员身份运行脚本 - >单击是以对话框 - >切换到科技用户 - > unhash凭证 - >记录在用户中的rehash - >保存到文件"
(用户确实拥有管理员权限)
我可以让每个用户输入一次凭据,然后将用户特定的散列保存到文件中。但我认为有一个最好的做法,我还没有找到这个。
答案 0 :(得分:2)
$username = "user1@domain.com"
$pwdTxt = Get-Content "C:\temp\Stored_Password.txt"
$securePwd = $pwdTxt | ConvertTo-SecureString
$credObject = New-Object System.Management.Automation.PSCredential -ArgumentList $username, $securePwd
# Now, $credObject is having the credentials stored and you can pass it wherever you want.
## Import Password with AES
$username = "user1@domain.com"
$AESKey = Get-Content $AESKeyFilePath
$pwdTxt = Get-Content $SecurePwdFilePath
$securePwd = $pwdTxt | ConvertTo-SecureString -Key $AESKey
$credObject = New-Object System.Management.Automation.PSCredential -ArgumentList $username, $securePwd
# Now, $credObject is having the credentials stored with AES Key and you can pass it wherever you want.
您可以输入任何密钥来加密凭据,同样可以解密。 希望它有所帮助。