web-dev-qa-db-ja.com

コマンドラインから実行中の「セキュリティ警告」を無視する

私が信頼する共有フォルダーからスクリプトを実行しようとしています:

PowerShell -file "\\server\scripts\my.ps1"

しかし、セキュリティ警告が表示され、続行するには「R」を押す必要があります

セキュリティ警告信頼できるスクリプトのみを実行してください。インターネットからのスクリプトは有用ですが、このスクリプトは潜在的にあなたのコンピューターを傷つける可能性があります。\server\scripts\my.ps1を実行しますか? [D]実行しない[R]一度実行する[S]サスペンド[?]ヘルプ(デフォルトは「D」):d

この警告を無視できますか?必要な擬似コードは次のとおりです。

PowerShell -IGNORE_SECURITY_WARNING -file "\\server\scripts\my.ps1"
61
alex2k8

これについては、 「Lee Holmesのブログの標準イメージでのPowerShell実行ポリシー」 およびWindows Power Shellのブログの 「PowerShellのセキュリティガイド原則」で触れています

概要一部のマシンはUNCパスを大きな悪いインターネットとして扱うため、PowerShellはそれらをリモートファイルとして扱います。これらのサーバー(_UncAsIntranet = 0,_)でこの機能を無効にするか、信頼できるホストにリモートマシンを追加できます。

どちらも実行したくない場合、PowerShell v2は、擬似コードが望んでいることを正確に実行する_-ExecutionPolicy_パラメーターをサポートします。 PowerShell -ExecutionPolicy Bypass -File (...)

79
LeeHolmes

警告を回避するために、次のことができます。

Set-ExecutionPolicy bypass
42

ダウンロードしたPowerShellスクリプトからこのエラーが発生した場合、次の方法でスクリプトのブロックを解除できます。

  1. 問題の.ps1ファイルを右クリックし、Propertiesを選択します

  2. ファイルのプロパティでブロック解除をクリックします

    enter image description here

  3. [〜#〜] ok [〜#〜]をクリックします

37
mopsled

SEE_MASK_NOZONECHECKS環境変数に1を割り当てるだけです

$env:SEE_MASK_NOZONECHECKS = 1
Start-Process $msi_file_path /qn -Wait | out-null
12
Jameel Grand

これを試して、ファイルを編集してください:

notepad foo.ps1:Zone.Identifier

そして、「ZoneId = 0」を設定します

3
Don Werve

Set-ExecutionPolicyを使用して、マシンに実行ポリシーを設定します。

Set-ExecutionPolicy Unrestricted

さまざまな実行ポリシーを調査して、どのポリシーが適切かを確認できます。 「help about_signing" 詳細については。

2
zdan

これは私の特定のインスタンスでは機能しませんでした。 FQDNからNetBIOS名への変更が行われました。

の代わりに:
\\server.domain.net\file.ps1
つかいます:
\\server\file.ps1

この名前を使用すると、IEの「イントラネットネットワークを自動的に検出する」設定がバイパスされます。

ブログのオプション1を参照してください: http://setspn.blogspot.com/2011/05/running-powershell-scripts-from-unc.html

2
lightwing

サーバー上の共有上のすべてのファイルのブロックを解除するために、このPowerShellスクリプトを作成しました

Get-ChildItem "\\ServerName\e$\MyDirectory\" -Recurse -File | % {
       Unblock-File -Path $_.FullName
}
2
Peter Veg

インターネットからスクリプトをダウンロードしましたか?

次に、コマンドラインでsysinternalの streams.exe を使用して、NTFSストリームをファイルから削除します。

cmd> streams.exe .\my.ps1

次に、スクリプトを再度実行してみます。

1
Sung M. Kim

共有フォルダーからpsスクリプトを起動する必要があると仮定します

copy \\\server\script.ps1 c:\tmp.ps1 /y && PowerShell.exe -ExecutionPolicy Bypass -File c:\tmp.ps1 && del /f c:\tmp.ps1

追伸グーグルを減らす)

0
Alex

Ps1ファイルが多数ある場合は、PowerShellを開いて次のコマンドを記述するのが非常に簡単です。ここでは、パスでパスを変更する必要があります。

PS C:\Users> Get-ChildItem -Path "D:\downlod" -Recurse | Unblock-File
0
Sapnandu

Set-executionpolicy "Policyname" -forceスイッチを試してください。警告ポップアップは表示されません。

0
swapnil