我想在我的开发机器上模拟共享托管环境的信任级别,以便在部署我的解决方案时没有令人讨厌的意外。
我在web.config中添加了这个设置:
<trust level="Medium" originUrl="*"/>
唯一的问题是,当我尝试保存到我的数据库时,我收到了这个异常:
的InnerException: System.Security.SecurityException Message =“请求类型的许可 'System.Net.SocketPermission,System, 版本= 2.0.0.0,文化=中立, 公钥= b77a5c561934e089' 失败“。 源= “mscorlib程序”
如何在保持媒体“喜欢”信任的同时具体允许这一点。还有其他我能合理允许的东西吗?我会在GoDaddy上主持。
答案 0 :(得分:5)
我联系了Godaddy,得到了回应:
GoDaddy.com ASP.NET共享主机 服务器使用默认的中等信任 等级加上 OleDbPermission,OdbcPermission和a 限制较少的WebPermission 。
在Medium下运行的应用程序 信任级别没有注册表访问权限, 无法访问Windows事件日志, 并且不能使用反射。这样 应用程序只能与之通信 定义的网络地址范围 和文件系统访问仅限于 应用程序的虚拟目录 层次结构。请确保你的 应用程序可以在中等信任中工作 环境,如果你有任何 它的问题。
因此,人们可以将此作为共享托管权限通常的标志。
当我弄清楚如何创建这些权限时,如@blowdards链接中所述。或者,如果有人能发布一个很棒的例子。
答案 1 :(得分:0)
所以你拥有的是默认的中等信任,你看到的错误是正确的。
当然,服务器管理员可以随心所欲地调整这一点,您只需要确切了解他们对默认信任策略所做的更改。您可以按照MSDN中列出的步骤创建自定义信任级别。现在你需要做的就是找出godaddy对他们做了什么:)