如何拒绝对路径的访问?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (12)

我正在尝试将图像保存到.NET c#中的文件夹中,但获得此异常:

Access to the path 'C:\inetpub\wwwroot\mysite\images\savehere' is denied.The error occured at mscorlib because    at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy)
at System.IO.FileStream..ctor(String path, FileMode mode)

我完全控制了这个文件夹(保存在这里)network serviceiis_iusrs,甚至完全控制了everyone但还是有例外。我试图通过资源管理器和IIS管理器进行访问,但仍然没有成功。

我是在WindowsServer 2008 R2和IIS7.5上做的,我需要给谁访问权限?

提问于
用户回答回答于

您需要从该网站的应用程序池中了解它正在运行的身份(默认情况下这是Application Pool Identity)并授予正确的权限。

用户回答回答于

path: 'C:\inetpub\wwwroot\mysite\images\savehere' is denied

您正在尝试保存到与目录名称相同的文件中。这无法工作,您不能覆盖一个包含单个新文件的文件目录。这将导致不可诊断的数据丢失,“对路径的访问被拒绝”是文件系统为防止这种情况发生而进行的反击。

扫码关注云+社区