1

ネットワーク共有から実行すると、アプリケーションで次の例外がスローされます。

そのアセンブリは、部分的に信頼された呼び出し元を許可しません。

私のアプリケーションは 2 つの DLL ファイルを参照します。

  • BitFactory.Logging.dll
  • FileHelpers.dll

どちらに問題があるのか​​ わかりません。

  • AllowPartiallyTrustedCallersAttribute: よく読んでください。ただし、どちらの DLL ファイルのソースも持っていないため、これらの DLL ファイルに属性を追加できません。

  • CASPOL.EXEcaspol -machine -addgroup 1. -url \\netserver\netshare\* LocalIntranet:何も影響がないように見えるなど、いくつかのバリエーションを使用してネットワーク共有を追加しました。

以前に.NET 3.5でCASPOLハックを使用したことがありますが、現在.net 4.0では機能しないようです。この「部分的に信頼された発信者」チェックをバイパスする方法について誰かが提案できますか?

ありがとう。

4

1 に答える 1

12

.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>

LoadFrom次の構成項目を使用して、ネットワークからのコードを完全に信頼できるものとして扱うように .NET 4.0 を構成できます。

<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>
于 2010-11-23T21:01:15.420 に答える