私は Visual Studio でプログラミングを教えています。ターミナル サーバーで実行したいと考えています。問題は、プログラムをコンパイルするたびに、Windows が作成された exe ファイルの起動を拒否することです。(すべての exe ファイルをブロックする機能があることすら知りませんでした。プログラミングをしているときに、これはあまり面白くありません。) exe ファイルの実行がグループ ポリシーによってブロックされていることを示すメッセージ ボックスが表示されます。これは、.NET と単純な Win32 exe プログラムの両方に適用されます。問題は、IT 管理者が、なぜこのようなことが起こるのか、ブロックをオフにする方法がわからないと言っていることです。誰か助けてくれませんか?
答え1
まず、ターミナル サーバーが仮想マシンであることを願います。続行する前に、VM のクリーンなスナップショットがあることを確認してください。生徒の 1 人が、任意のアプリケーションを実行する機能を利用してサーバーを台無しにする可能性があります。定期的にスナップショットに戻す必要があります。また、パッチを適用する前、またはソフトウェアをインストールまたはアップグレードする直前に必ず戻してください。その後、それが完了した後、サーバーが使用可能になる前にスナップショットを作成します。こうすることで、誰かがサーバーを破壊したときに、スナップショットを元に戻すだけで済みます。
プログラムの実行を制限する方法はいくつかあります。
グループ ポリシーでは、との 2 つの領域を確認する必要があります
Policies -> Windows Settings -> Security Settings
。Application Control Policies
Software Restriction Policies
レジストリキーもあります
RestrictRun
。最後に、サードパーティのアプリケーションはレジストリ キーを使用できます
Appinit_DLLs
。
答え2
calc.exe、notepad.exe、explorer.exe を含むすべての exe ファイルですか、それとも一部の exe ファイルだけですか? これにはさまざまなアプローチがあります。
よく知っている単一の実行ファイルをブロックしようとしている場合は、設定を使用して GPO から無効にすることができます: ユーザーの構成/管理用テンプレート/システム/指定された Windows アプリケーションを実行しない
もう 1 つのオプションは、許可するアプリケーションのみを指定することです。[ユーザーの構成]/[管理用テンプレート]/[システム]/[指定された Windows アプリケーションのみを実行する] を使用します。このオプションは、多数のアプリケーションがインストールされているシステムや企業環境では、設定に多くの作業が必要になる可能性があります。
上記の 2 つの設定はいずれも、ユーザーが exe ファイルに任意の名前を付けられることを考慮していないため、mydangerousapp.exe を explorer.exe に名前変更すると、完全に正当な実行可能ファイルになります。