描述:应用程序尝试执行安全策略不允许的操作。要授予此应用程序所需的权限,请与系统管理员联系或在配置文件中更改应用程序的信任级别。
异常详细信息:System.Security.SecurityException:请求类型'System.Security.Permissions.FileIOPermission,mscorlib,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089'的权限失败。
我的代码在我的本地服务器中正常运行,在将其上传到服务器时会产生问题。
已经完成了以下代码,但它对我不起作用:
样本1:
<system.web>
<securityPolicy>
<trustLevel name="Full" policyFile="internal"/>
</securityPolicy>
</system.web>
样本2:
<location allowOverride="false">
<system.web>
<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>
</system.web>
</location>
样本3:
<system.web>
<trust level="Full" originUrl="" />
</system.web>
我无法访问IIS我只有FTP详细信息才能上传文件。请建议我从webconfig文件中解决它的选项。
答案 0 :(得分:15)
您在示例三中使用的方法与我的解决方案类似,但我没有添加您拥有的其他属性。试试这个简单的方法。
<system.web>
<trust level="Full"/>
</system.web>
这来自MSDN posting我读过。
答案 1 :(得分:0)
注意:如果您使用的是共享主机,则它们通常具有允许对文件进行读/写访问的Web界面。
我不建议,但您可以冒充特定帐户:
<system.web>
<identity impersonate="true" username="user" password="pass" />
</system.web>
否则,请确保您已授予试图访问应用程序池中使用的Identity
的文件的正确权限。