2010-05-04 4 views
4

Je rencontre des problèmes de sécurité lors de la migration d'une application de .NET 3.5 à 4.0.Assembly.LoadFrom() permissioning dans .NET 4.0

J'ai une application qui démarre avec succès depuis un partage réseau que j'ai mappé vers z: - Z: \ MyApp \ App.exe.

Cette application utilise des compléments, et il est parfois demandé de charger des assemblages à partir d'un emplacement séparé sur l'intranet - y: \ MyLib \ Lib.dll

Dans .NET 4.0, je reçois un système. Security.Security exception alors cela se produit:

System.IO.FileLoadException: Impossible de charger le fichier ou l'assembly 'XXXX' ou l'une de ses dépendances. Une erreur relative à la sécurité s'est produite. (Exception de HRESULT: 0x8013150A) ---> System.Security.SecurityException: Demande pour l'autorisation de type 'System.Security.Permissions.FileIOPermission, mscorlib, Version = 4.0.0.0, Culture = neutre, PublicKeyToken = b77a5c561934e089' a échoué.

Cependant, si je lance ma demande localement à partir de C: \ MyApp \ App.exe, il est capable de charger avec succès Assembly.LoadFrom() le Addin à y: \ MyLib \ Lib.dll.

Que dois-je faire pour «bénir» l'emplacement y: \ MyLib afin que les applications exécutées à partir de partages réseau puissent exécuter du code à partir de là?

Merci, Dave

Répondre