由于信任级别或SSL问题导致的安全性异常?

时间:2013-11-18 06:31:23

标签: asp.net security web-config

当我尝试浏览.Net代码页时,它显示以下异常:

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

异常详细信息:System.Security.SecurityException:请求类型为'System.Security.Permissions.SecurityPermission,mscorlib,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089'的权限失败。

然后我试了一下:

<system.web>
<trust level="Full" />
</system.web>

它显示以下错误:

描述:处理为此请求提供服务所需的配置文件时发生错误。请查看下面的具体错误详细信息并适当修改配置文件。

分析程序错误消息:此配置部分不能在此路径中使用。当站点管理员使用继承的配置文件锁定对此节的访问权时,会发生这种情况。

我读到的某个地方

这些设置是由托管服务预定义的,这就是您无法在web.config中定义设置的原因。

现在应该如何让它发挥作用!

提前致谢。

3 个答案:

答案 0 :(得分:1)

试试这个

<system.web>
<securityPolicy>
<trustLevel name="Full" policyFile="internal"/>
</securityPolicy>
</system.web>

答案 1 :(得分:1)

我找到了解决方案,实际上是因为SSL。我的应用程序中有以下SSL相关代码。我对代码进行了评论并上传并且有效。

ServicePointManager.ServerCertificateValidationCallback = delegate(some patameterws) { return true; };

我也向托管服务部门寻求帮助,并说:

您只能在我们的托管上运行中型信任ASP.NET。由于中等信任是我们允许的最高信任级别,因此请确保您的应用程序不违反中等信任规则(例如,尝试在web.config文件中设置信任级别,即使您将其定义为中等,也不允许中等信任)。如果您确实需要完全信任级别,或者高于我们提供的中等信任级别的任何信任级别,您将需要找到另一个提供商 - 如果您确实需要完全信任,则可能需要Windows VPS提供商。我们不会为您更改此设置,也不允许您在最后更改此设置。

认为它可能会帮助其他人,所以决定在这里发布。

答案 2 :(得分:0)

我在我的网站上修复了这个解决方案

在您当地的Visual Studio中尝试将以下行添加到web.config

<system.web>
<trust level="Medium" />
</system.web>

然后在本地运行您的应用程序(网站),这将引发异常捕获行详细信息

例如我的,我试图使用fileIO类

访问本地文件

我评论说,代码和网站在中等信任下运行良好。

希望这有效