我在将应用程序从.NET 3.5迁移到4.0时遇到了安全问题。
我的应用程序成功地从映射到Z:的网络共享启动-Z:\MyApp\App.exe。
该应用程序使用插件,并且有时被要求从Intranet上的单独位置加载程序集-y:\MyLib\Lib.dll。
在.NET 4.0中,当发生以下情况时,我会得到一个System.Security.Security异常:
System.IO.FileLoadException: 无法加载文件或程序集“XXXX”或其某个依赖项。与安全性相关的错误已发生。(HRESULT 的异常:0x8013150A) ---> System.Security.SecurityException: 请求的类型为'System.Security.Permissions.FileIOPermission, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'的权限失败。
但是,如果我从C:\ MyApp \ App.exe本地启动我的应用程序,则能够成功加载y:\ MyLib \ Lib.dll中的插件。
我需要做什么才能“祝福”y:\ MyLib位置,以便允许从网络共享运行的应用程序执行来自那里的代码?
谢谢, Dave
我的应用程序成功地从映射到Z:的网络共享启动-Z:\MyApp\App.exe。
该应用程序使用插件,并且有时被要求从Intranet上的单独位置加载程序集-y:\MyLib\Lib.dll。
在.NET 4.0中,当发生以下情况时,我会得到一个System.Security.Security异常:
System.IO.FileLoadException: 无法加载文件或程序集“XXXX”或其某个依赖项。与安全性相关的错误已发生。(HRESULT 的异常:0x8013150A) ---> System.Security.SecurityException: 请求的类型为'System.Security.Permissions.FileIOPermission, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'的权限失败。
但是,如果我从C:\ MyApp \ App.exe本地启动我的应用程序,则能够成功加载y:\ MyLib \ Lib.dll中的插件。
我需要做什么才能“祝福”y:\ MyLib位置,以便允许从网络共享运行的应用程序执行来自那里的代码?
谢谢, Dave