“/”应用程序中的服务器错误。
安全性异常
说明: 应用程序试图执行安全策略不允许的操作。要授予此应用程序所需的权限,请与系统管理员联系,或在配置文件中更改该应用程序的信任级别。
异常详细信息: System.Security.SecurityException: 请求失败。
源错误:
执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。 |
堆栈跟踪:
|
版本信息: Microsoft .NET Framework 版本:2.0.50727.3625; ASP.NET 版本:2.0.50727.3634
今天有碰到一个客户的站点出现如上提示,我一直百度,最终看到有位兄弟写的文章给我的提示才知道:
http://hackserver.cn/post/168.html
为程序部署在被第三方安全组件设置过权限的机器,有些默认值可能被修改。
C:\Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.config
打开修改
<trust level=”Full” originUrl=”"/>
其中的 Full 值可能已经被修改为其它级别,恢复即可。
我就把web.config备份下,先打开看一下这个文件的这一行是Full还是其他的,再用星外的设置net的安全设置一下,再打开看一下,原来星外在设置NET安全时把这个Full改成Hight,也就是最高级别,所以我的站点才会出现这样错误,再用星外取消设置net的安全时,这个Hight又变成Full,我才知道原来问题在于这里的区别,但我又怕权限太大,查了一下这个trust level的参数有几个,总的有
这几个,可我各个都试了都不行,只有Full才可以,最终没办法只能用这个,但Full或这里面的其他几个参数要书写规范,第一个字母只能大写,你要是写成full,它就会提示无法识别那个full节,看来net太麻烦了,安全性也不高
trust level="[Full|High|Medium|Low|Minimal]"