c# - Microsoft Azure Web App - ASP.NET 无权访问请求的资源

标签 c# asp.net azure file-permissions

我有一个 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 应用程序运行的网站却没有解决。

最佳答案

您应该将文件存储在 Azure 存储中,而不是虚拟目录下,因为这可能会导致 IIS 站点重新启动

关于c# - Microsoft Azure Web App - ASP.NET 无权访问请求的资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37466122/

相关文章:

c# - 如何对 Azure 存储表行键和分区键进行编码?

c# - 在c#中,如何在多线程环境下迭代IEnumerable

c# - 如何在 Unity 3d 中使用 JSON Web Token (JWT)?

.net - web 的意思是无状态的,而 http 是无状态协议(protocol)?

azure - 是否可以在 Windows Azure 上使用 cassandra 数据库部署应用程序?

c# - 从 Javascript 函数调用 AppSettings 中的全局变量

javascript - ASP.NET - 覆盖浏览器缓存的 Javascript 和样式表

c# - 如何在 Web API 应用程序中使用 ASP.net 5 Identity?基于 token 的用户认证。移动应用

c# - 运行 Web 角色(Web 应用程序)的 Azure 云服务内存问题(Gen2)

c# - 将用户分配给组,Azure AD Graph Api