C#-NET 4.0-そのアセンブリは部分的に信頼できる発信者を許可しません
-
27-09-2019 - |
質問
ネットワーク共有から実行するとき、私のアプリケーションは次の例外をスローします。
そのアセンブリは、部分的に信頼できる発信者を許可しません。
私のアプリケーションは2つのDLLファイルを参照してください:
- bitfactory.logging.dll
- filehelpers.dll
どれが問題を抱えているのかわかりません。
AllowPartiallyTrustedCallersAttribute
: :それを読み上げますが、DLLファイルのいずれのソースがないので、それらのDLLファイルに属性を追加することはできません。CASPOL.EXE
: :次のようないくつかのバリエーションを使用して、ネットワーク共有を追加しましたcaspol -machine -addgroup 1. -url \\netserver\netshare\* LocalIntranet
何も影響しないようです。
.NET 3.5で以前にCaspol Hackを使用しましたが、現在は.NET 4.0で動作しないようです。誰もがこの「部分的に信頼できる発信者」チェックをバイパスできる方法についてsuggeestすることができますか?
ありがとう。
解決
.NET 4.0があります デフォルトのルールを変更しました セキュリティポリシーのため。作成または変更する必要があります App.config
このアプリケーションのファイル。
コードアクセスセキュリティ(によって構成されています CASPOL
)。デフォルトでは.NET 4.0で無視されます。有効にしたい場合は、次のことを追加する必要があります app.config
ファイル:
<configuration>
<runtime>
<!-- enables legacy CAS policy for this process -->
<NetFx40_LegacySecurityPolicy enabled="true" />
</runtime>
</configuration>
.net 4.0を構成して、ネットワークからコードを扱うように構成できます LoadFrom
次の構成項目で完全に信頼されています。
<configuration>
<runtime>
<!-- Treat assemblies from network locations as fully trusted. -->
<!-- Caution: Do not point this loaded gun at your foot. -->
<loadFromRemoteSources enabled="true" />
</runtime>
</configuration>