检查什么需要完全信任

本文关键字:信任 什么 检查 | 更新日期: 2023-09-27 18:27:25

我刚刚完成了网站的核心功能开发,现在已经将其上传到主机上进行测试。

不幸的是,我得到以下错误:

安全异常

描述:应用程序试图执行安全策略不允许的操作。若要授予此应用程序所需的权限,请与系统管理员联系,或在配置文件中更改应用程序的信任级别。

经过乏味的搜索,我意识到这是因为我是在一个完全信任的环境中发展起来的,而我固执的主人只允许中等信任。

当我在web.config中设置中等信任时,调试器不会显示完全信任环境的确切需求。

有没有办法明确检查这一点,或者以某种方式迫使网站合作?

我将MVC与FormsAuthentication、Code First Databased等结合使用。

检查什么需要完全信任

经过大量的尝试和错误,我发现了错误。

微软的SignalR需要完全的信任,而且没有办法绕过它

禁用它可以修复问题。

编辑
从长远来看,任何能帮助该网站的图书馆似乎都已经过时了。如果有人收到这个错误,只需在修改核心代码之前禁用(注释掉)您使用的任何三级库。

断点根本没有帮助,因为在禁用SignalR后,我在某个页面上出现了错误。设置断点并没有停止错误事件中的代码,因为事实证明,安全异常是在C#内部的某个深处抛出的,而不是顶部。

您有两个选项

  1. 您可以有两个web.config文件,一个用于调试,另一个用于在尽可能接近宿主环境的环境下发布和测试
  2. 另一个选项可以是两个具有介质信任集的单个配置文件,并使用日志记录到文件/事件记录器以允许您调试