请求“System.Security.Permissions.FileIOPermission”类型的权限失败

时间:2009-07-06 07:54:01

标签: web-services security

调用Web服务方法时,我收到此错误,该方法写入Windows 2003上本地驱动器上的文件。

“System.Security.SecurityException:对类型'System.Security.Permissions.FileIOPermission,mscorlib,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089'的权限的请求失败。”

我已经完成了以下步骤:

  • 网站使用localSystem标识
  • 在appPool中运行
  • 网站模拟管理员组中的用户。
  • Web服务程序集具有完全信任
  • Web服务的url完全信任计算机的web.config。
  • 写入安全性的文件夹具有模拟用户

那么为什么这个Web服务仍在抱怨FileIOPermission? Fulltrust包括FileIOPermission。

2 个答案:

答案 0 :(得分:2)

经过大量的故障排除后,它归结为我在web.config中犯了一个错误,其中location标记的路径为www.example.com,但在IIS中它是example.com!

答案 1 :(得分:0)

最后我们发现了这个问题。在Windows中构建文件后,我们将它们放在一个zip文件中。将文件添加到zip窗口时,会在解压缩文件夹后为所有文件添加阻止属性。这些导致文件无法正常运行。 "块"右键单击文件(当时一个)可以删除属性,选择"属性"然后单击"取消阻止"底部的按钮。这是一个示例图片:

https://www.howtogeek.com/wp-content/uploads/2011/08/image10.png

为防止Windows添加此阻止属性,可以查看以下线程:

Can I stop windows from “Blocking” zip files