我正在创建一个带有secureString密码的文件,如下所示
[string][ValidateNotNullOrEmpty()]$secureStringPwd = "password123"
$secpasswd = ConvertTo-SecureString $secureStringPwd -AsPlainText -Force
$secureStringText = $secpasswd | ConvertFrom-SecureString
Set-Content "C:\folder\user.txt" $secureStringText现在,我正尝试以下列方式检索密码
$Password = Get-Content "C:\folder\user.txt" | ConvertFrom-SecureString
$creds = New-Object System.Management.Automation.PSCredential ("user", $Password)
$creds.Password
$creds.UserName但我得到了一个错误如下:
New-Object : Cannot find an overload for "PSCredential" and the argument count: "2".
At line:1 char:10
+ $creds = New-Object System.Management.Automation.PSCredential ("user ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [New-Object], MethodException
+ FullyQualifiedErrorId : ConstructorInvokedThrowException,Microsoft.PowerShell.Commands.NewObjectCommand发布于 2018-06-22 17:32:44
您需要将文本文件中的密码转换回安全字符串。
$Password = Get-Content "C:\folder\user.txt" | ConvertTo-SecureString此外,您还需要使用网络凭据将密码输入纯文本
$creds.GetNetworkCredential().Password下面是一个有用的例子
[string][ValidateNotNullOrEmpty()]$secureStringPwd = "password123"
$secpasswd = ConvertTo-SecureString $secureStringPwd -AsPlainText -Force
$secureStringText = $secpasswd | ConvertFrom-SecureString
Set-Content "C:\folder\user.txt" $secureStringText
$Password = Get-Content "C:\folder\user.txt" | ConvertTo-SecureString
$creds = New-Object System.Management.Automation.PSCredential ("user", $Password)
$creds.GetNetworkCredential().Password
$creds.UserNamehttps://stackoverflow.com/questions/50992967
复制相似问题