【问题标题】:System.UnauthorizedAccessException in Server.MapPath()Server.MapPath() 中的 System.UnauthorizedAccessException
【发布时间】:2013-08-12 12:18:59
【问题描述】:

我需要将 word 文件上传到我的解决方案文件中的一个文件夹,以便我可以将它显示给每个上传它的用户。我成功地将文件上传到一个文件夹。现在,我想将用户的详细信息和上传的单词发送给系统管理员。

但我面临 System.UnauthorizedAccessException。在下面的代码行中。

Msg.Attachments.Add(new Attachment((Server.MapPath(filePath)))); 

详细的异常信息如下:

*ASP.NET 无权访问请求的资源。考虑向 ASP.NET 请求授予对资源的访问权限 身份。 ASP.NET 有一个基本进程标识(通常 IIS 5 上的 {MACHINE}\ASPNET 或 IIS 6 和 IIS 7 上的网络服务,以及 IIS 7.5 上配置的应用程序池标识),如果 该应用程序不是模拟的。如果应用程序是 冒充 via ,身份将是 匿名用户(通常是 IUSR_MACHINENAME)或经过身份验证的用户 请求用户。要授予 ASP.NET 对文件的访问权限,请右键单击该文件 在文件资源管理器中,选择“属性”并选择“安全”选项卡。 单击“添加”以添加相应的用户或组。突出显示 ASP.NET 帐户,然后选中所需访问权限的复选框。*

请帮我解决问题..

【问题讨论】:

  • 您为该文件夹中的匿名用户添加读取权限。
  • 您是否尝试过消息中的提示?它告诉您如何解决问题...
  • 我启用了匿名身份验证。我还授予用户完全控制权

标签: c# asp.net


【解决方案1】:

授予 ASP.Net 帐户或网络服务帐户的完全权限。或者检查这些帐户是否具有对 Temp 文件夹的完全访问权限...

【讨论】:

    【解决方案2】:

    我同意@Lingaraj 提出的解决方案,请检查 IIS_IUSERS 用户是否对您上传文件的文件夹具有必要的权限。

    【讨论】:

    • 是的。我授予了 IIS_IUSERS 的权限。还有一些问题!
    【解决方案3】:

    以所有人的身份授予您部署网站的文件夹的权限。

    【讨论】:

      猜你喜欢
      • 2010-09-21
      • 2013-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-29
      • 1970-01-01
      相关资源
      最近更新 更多