【问题标题】:Issues with running script without credentials dialog box没有凭据对话框运行脚本的问题
【发布时间】:2019-07-09 19:21:40
【问题描述】:

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

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

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

尝试在不弹出对话框的情况下使用上面的代码

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

【问题讨论】:

标签: powershell powershell-ise


【解决方案1】:

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

$mycreds = New-Object System.管理.Automation.PSCredential("xxxx", $secpasswd)

【讨论】:

    【解决方案2】:

    您的代码中似乎有错字:Managemnet 应该是 Management,如 System.Management.Automation。这就是你的错误被抛出的原因。

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

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

    这不会显示对话框。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多