获取 SecureString 作为纯文本参数

2024-05-05

我正在尝试将 SecureString 作为纯文本参数获取到命令行 PowerShell。

我知道安全字符串的形式是什么。 例如,字符串“abc”将是安全字符串“71289371289”。

然后,我想将“71289371289”作为参数传递给脚本(从命令行运行它),这将是我的安全字符串,然后将其解密为明文,以将其传递给我从 Powershell 调用的另一个程序。

我该怎么做这样的事情?

Update:

我最终使用 Credfile 和 PSCredential 在重新启动时保留凭据,直到脚本完成。


您可以使用 SecureStringToBSTR 将其转换回明文密码:

Param(
    $securestring = (Read-Host -AsSecureString)
)
Write-Host "Encrypted Password: $(ConvertFrom-SecureString $securestring)"
$ClearText = [Runtime.InteropServices.Marshal]::PtrToStringAuto([Runtime.InteropServices.Marshal]::SecureStringToBSTR($securestring))
Write-Host "Original Password: $ClearText"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

获取 SecureString 作为纯文本参数 的相关文章

随机推荐