Powershell在所有执行模式下执行代码之前要求确认

时间:2013-09-04 15:45:54

标签: powershell certificate code-signing

我们已经购买了Thawte代码签名证书,并且可以使用它签署脚本。在所有已签名的执行策略模式下,powershell仍会在运行代码之前要求在服务器上进行确认。我需要在许多服务器上按计划运行此代码,并且想知道它们是否有任何解决方法。

在我的搜索中,似乎证书需要在执行脚本之前在受信任的发布者中。我找不到任何可以在远程服务器上的TrustedPublisher中放置证书的脚本。

感谢您提供的所有帮助。

1 个答案:

答案 0 :(得分:1)

PowerShell有关PS C:\>help about_Execution_Policies轻松找到的执行策略的帮助表明,在AllSigned模式下,它会在您从尚未归类为受信任或不受信任的发布者运行脚本之前提示您。您可以尝试使用RemoteSigned或者尝试由Scott Hanselman http://www.hanselman.com/blog/SigningPowerShellScripts.aspx

解释这个奇妙的解释
  

签名脚本可以通过导出(从原始文件)传输   计算机)和导入(到新计算机)Powershell   在受信任的根证书颁发机构中找到的证书   容器。 (可选)还可以将受信任的发布者移动到   防止第一次提示。

博客上的最后说明

  

请注意,Powershell将在第一次运行时提示您,除非   您还可以导入受信任的发布者证书。