运行脚本时的安全警告 - Unblock-File not unblocking file

ATu*_*Tur 4 security powershell powershell-ise

在我的计算机上运行任何脚本时,我突然开始收到此警告:

仅运行您信任的脚本。虽然来自 Internet 的脚本可能很有用,但此脚本可能会损害您的计算机...

截屏:

Powershell 安全警告

文件没有被阻止。

我有

  • 在文件资源管理器> 属性中检查。
  • 也使用Unblock-Filecmdlet 解除阻止。
  • 使用 cmdlet 检查流:Get-Content -Path '\\Path\Script.ps1' -Stream Zone.Identifier。未找到流。
  • 二手Streams.exe Sysinternals公司:streams.exe -d \\Path\Script.ps1。未找到包含流的文件。

还尝试使用 Powershell 删除流:

Remove-Item -Path \\Path\Script.ps1 -Stream Zone.Identifier
Run Code Online (Sandbox Code Playgroud)

当然没有成功,因为没有流。

执行政策不受限制。

当我运行 Set-ExecutionPolicy Bypass 时,它可以在没有警告的情况下工作。但是,它也应该在不受限制的情况下工作。

老实说,我不知道发生了什么。

小智 5

搜索后,我发现有人有类似问题,并解释说经典 UNC 路径可以在不提示取消阻止文件的情况下工作:

\\Servername\Path...
Run Code Online (Sandbox Code Playgroud)

但是,默认情况下 FQDN 路径不被视为安全,并且会提示:

\\Servername.foo.local\Path...
Run Code Online (Sandbox Code Playgroud)

我自己的测试证实这是正确的,因为.foo.local从路径中删除会导致Unblock-File提示停止。