コード署名なしでファイル共有から.NETアプリケーションを実行する
質問
.NET exeがファイル共有から実行されるたびに、.NETセキュリティモデルはセキュリティエラーをスローします。ローカルドライブから実行した場合、エラーは表示されません。コードに署名する必要なく、これを回避する方法を知っている人はいますか?
他のヒント
caspol.exe を使用して割り当てますそのファイルは、プログラムを実行するのに十分な権限を共有します。
このバージョンがこのセキュリティ設定を削除していた.net 3.5 sp1に対してアプリケーションをビルドできる場合があります。
これを回避するために、.exeをバッチファイルにラップしました。バッチファイルは.exeをローカルドライブにコピーし、そこから実行しました。しかし、それほどハッキングの少ない方法があると確信しています!
.Net 3.5SP1がソフトウェアを実行しているマシンにインストールされていることを確認してください。このバージョンでは、ファイル共有から実行するアプリのセキュリティ制限が削除されます。制限された環境に置かれていた以前のモデルに対して、完全に信頼して実行することができます。
この件に関するVanceのブログ記事へのリンク
.Net構成ウィザードを使用して、特定のアセンブリとその場所のセキュリティを緩めることができます。これは、グループポリシーを通じて展開できます。前述のようにcaspolを使用することもできます。
他の方法は、コードアクセスセキュリティを使用することです。素晴らしいMSDNの記事こちらで説明しています。
3番目の選択肢はclickonceデプロイメントを使用することですが、実行するとアセンブリのローカルインスタンスが作成されます。
Click Onceデプロイメントを使用して、アプリケーションをデプロイできます。ファイル共有。