1

私のアプリケーションは、多くの異なるプラグイン アセンブリを読み込みます。各プラグインは、独自のサービスを IoC コンテナーに追加でき、メイン アプリケーションによって提供されるすべてのサービスを使用することもできます。

私は自家製のセキュリティ ソリューションから CAS (PrincipalPermissionAttribute と CodeAccessSecurityAttribute から派生した独自のもの) を使用するように移行しています。

読み込まれたアセンブリが System.Threading.Thread.CurrentPrincipal を変更するのを防ぐことはできますか (そのようにして、セキュリティ チェックを回避できますか)?

4

1 に答える 1

0

プラグインに対する SecurityPermission\ControlPrincipal アクセス許可を拒否する必要があります。これは、たとえば、厳密な名前の署名を持たないすべてのコードに対してこのアクセス許可を拒否する appdomain にそれらをロードすることによって実行できます。このアプローチの例については、http://blogs.msdn.com/b/shawnfa/archive/2005/08/08/449050.aspxを参照してください。

于 2010-09-02T12:59:34.763 に答える