asp.net 报错 无法获取所需的权限
无法获取所需的权限。说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
无法获取所需的权限。
说明:
执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Security.Policy.PolicyException: 无法获取所需的权限。
发生此错误,是由于服务器设置的信任级别太低了,将web.config(C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG)中的信任级别设置为full就OK
如果是使用的虚似空间,那么,只能联系空间运营商
这是由ASP.NET安全性引起的异常,有可能的原因是部署服务器上的machine.config或web.config中配置的安全策略被修改过。
在.net2.0中,Asp.Net默认在C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.config中配置了网站的信任级别:
<securityPolicy>
<trustLevel name="Full"
policyFile="internal"/>
<trustLevel name="High"
policyFile="web_hightrust.config"/>
<trustLevel name="Medium"
policyFile="web_mediumtrust.config"/>
<trustLevel name="Low"
policyFile="web_lowtrust.config"/>
<trustLevel name="Minimal"
policyFile="web_minimaltrust.config"/>
</securityPolicy>
<trust
level="Full" originUrl=""/>
本来默认是Full级别,但可能服务器供应商出于安全考虑而采用了其他策略。
当前有一种办法,就是在你网站根目录下的web.config中重新声明所选用的策略为Full:
<trust level="Full" originUrl=""/>
它在配置文件中的层次结构如下:
<location
allowOverride="true">
<system.web>
<trust
level="Full" originUrl=""/>
</system.web>
</location>
location是根元素。