【发布时间】:2016-09-24 18:27:10
【问题描述】:
我有一个 Azure Web 应用程序。直到几天前,我还有一个运行良好的简单文件上传表单。
大约一周前,它开始导致以下错误:
拒绝访问路径“D:\home\site\wwwroot\Accounts\XXX\test.sqlite”。
说明:在执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.UnauthorizedAccessException:对路径“D:\home\site\wwwroot\Accounts\XXX\test.sqlite”的访问被拒绝。
ASP.NET 无权访问请求的资源。考虑向 ASP.NET 请求标识授予对资源的访问权限。 ASP.NET 有一个基本进程标识(通常是 IIS 5 上的 {MACHINE}\ASPNET 或 IIS 6 和 IIS 7 上的网络服务,以及 IIS 7.5 上配置的应用程序池标识),如果应用程序不是模拟的,则使用该标识。如果应用程序通过 模拟,则身份将是匿名用户(通常是 IUSR_MACHINENAME)或经过身份验证的请求用户。
我知道这是在我的本地机器还是更传统的托管服务提供商上运行,我可以右键单击该文件夹并管理权限。
但我有一个托管的 Azure Web 应用程序。我可以使用以下工具:
- IIS 远程管理器
- 新的 Azure 门户(具有沙盒命令 控制台)
- FTP
我该如何解决这个问题?我应该注意,我尝试将源代码重新部署到另一个 Azure Web 实例......并且表单运行良好!- 大约 2 天,然后开始返回相同的错误。
非常感谢您提供一个非常基础的教程,甚至可能带有屏幕截图。对于作为 Azure Web 应用程序运行的站点,我看到这个问题被问了很多次。
【问题讨论】:
标签: c# asp.net azure file-permissions