没有凭据对话框的运行脚本问题

时间:2019-07-09 19:21:40

标签: powershell powershell-ise

我正在尝试运行一个Powershell脚本,该脚本创建一个计算机名并将该计算机放置在AD中正确的OU中。唯一的问题是我需要输入凭据才能完成此操作,但是我想这样做而不必在Powershell凭据对话框中输入凭据。

我使用了System.Management.Automation.PSCredential,但这显然是给我对话框。

$secpasswd = ConvertTo-SecureString 'xxxxxx' -AsPlainText -Force
$mycreds = New-Object System.Managemnet.Automation.PSCredential("xxxx", $secpasswd)

尝试使用上面的代码而不会弹出对话框

  

新对象:找不到类型[System.Managemnet.Automation.PSCredential]:验证是否已加载包含此类型的程序集。   在第2行:char:12   + $ mycreds =新对象System.Managemnet.Automation.PSCredential(“ xxxx ...   + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~ + CategoryInfo:InvalidType:(:) [New-Object],PSArgumentException   + FullyQualifiedErrorId:TypeNotFound,Microsoft.PowerShell.Commands.NewObjectCommand

2 个答案:

答案 0 :(得分:0)

您似乎在代码中输入了错误:Managemnet应该是Management,就像System.Management.Automation一样。这就是引发您的错误的原因。

但是,PSCredential不需要使用完整的定义。请改用以下内容:

$secpasswd = ConvertTo-SecureString 'xxxxxx' -AsPlainText -Force
$mycreds = New-Object PSCredential("xxxx", $secpasswd)

这不会显示一个对话框。

答案 1 :(得分:0)

您在“ Managemnet”上打了错字。应该是-

$ mycreds =新对象系统。管理。Automation.PSCredential(“ xxxx”,$ secpasswd)