如何在没有使用Powershell的提示的情况下获取凭据对象

我正在使用以下命令,

$SQLServerPSCred = Get-Credential 

获取凭据对象。

如何在没有提示的情况下获取Creds对象?

我尝试了下面的代码,但是失败了。

$SQLServerPSCred = New-Object System.Management.Automation.PSCredential -ArgumentList $username,$Password
jasonlevon 回答:如何在没有使用Powershell的提示的情况下获取凭据对象

关于该代码的实际问题,您没有提供很多信息。提示您第一个示例是正确的。当您明确告诉它要问您时。

第二个示例是不完整的。

PowerShell – How to create a PSCredential object by koteshblog举例说明了如何做到这一点:

$secpasswd = ConvertTo-SecureString "PlainTextPassword" -AsPlainText -Force 
$mycreds = New-Object System.Management.Automation.PSCredential ("username",$secpasswd)

如您所见,您首先需要将密码转换为SecureString,然后将其传递给凭证对象。它还显示了稍微不同的语法,但这没关系。

根据您正在执行的操作以及该脚本所在的位置,值得为您的机密寻找某种形式的“更安全”的存储,这也是值得的。因为每个有权访问该脚本的人都可以从中提取用户名和密码。

一种选择是存储安全字符串。但是请记住,安全字符串在某种程度上与用户相关。因此,您将无法轻松地传递包含密码的文本文件。

有关如何执行此操作的示例,请检查Powershell Tip – Storing and Using Password Credentials by robcost。这是一个基本的解决方案,可能会根据您的需求提供更好的解决方案。

本文链接:https://www.f2er.com/3152398.html

大家都在问