Powershell Set AuthenticodeSignature返回对路径的访问被拒绝错误

Powershell Set AuthenticodeSignature返回对路径的访问被拒绝错误,powershell,certificate,Powershell,Certificate,我有一个简单的powershell脚本,用于在服务器出现问题时向我发送电子邮件。除非已签名,否则脚本将被限制在该服务器上运行。因此,我创建了一个自签名证书,将其移动到受信任的根文件夹中,当我在其上运行Get ChildItem时,我看到返回的指纹,并且属性在我看来是正确的(尽管我承认我对证书知之甚少)。最后一步是对脚本进行签名,我正在尝试使用它: $cert=(Get-ChildItem -Path Cert:\LocalMachine\Root -CodeSigningCert)[0] Set

我有一个简单的powershell脚本,用于在服务器出现问题时向我发送电子邮件。除非已签名,否则脚本将被限制在该服务器上运行。因此,我创建了一个自签名证书,将其移动到受信任的根文件夹中,当我在其上运行
Get ChildItem
时,我看到返回的指纹,并且属性在我看来是正确的(尽管我承认我对证书知之甚少)。最后一步是对脚本进行签名,我正在尝试使用它:

$cert=(Get-ChildItem -Path Cert:\LocalMachine\Root -CodeSigningCert)[0]
Set-AuthenticodeSignature -FilePath "C:\Scripts\ServiceFailureAlert.PS1" $cert
但我无法进入这条路。
我确信这是一件非常简单的事情,但我现在正把头撞在墙上。脚本是我创建的。它不是只读的,目录不是只读的,所有用户都有完全的权限,我是服务器上的管理员,我以管理员的身份运行powershell。任何帮助都将不胜感激。

该操作被服务器上的应用程序阻止,而我无法看到该应用程序。我与服务器团队进行了交谈,获得了添加的权限,并毫无问题地重新运行了该命令。现在一切都好了。谢谢你的眼神/回应,西奥,谢谢你。

你对我的感觉有点奇怪。。。参数
-FilePath
-Certificate
都是位置
1
上的位置参数。也许如果你把它们都命名了
Set AuthenticodeSignature-FilePath“C:\Scripts\ServiceFailureAlert.PS1”-Certificate$cert
我尝试了使用-Certificate和不使用-Certificate,但不幸的是仍然收到相同的错误。