IIS: System.UnauthorizedAccessException: 访问路径

IIS: System.UnauthorizedAccessException: Access to the path

我有一个网站,它位于 IIS 服务器上,我在另一台服务器(文件服务器)上有一个文件夹。我已将虚拟目录设置为文件服务器上的文件夹。此应用程序两台服务器都在同一个域中,但将来我会有不在同一个域中的服务。

我尝试在两台机器上设置本地用户并设置应用程序池以使用本地帐户,我得到了

System.UnauthorizedAccessException: 访问路径被拒绝。 和 401 - 未经授权:由于凭据无效,访问被拒绝。 您无权使用您提供的凭据查看此目录或页面。

我已将虚拟机设置为以本地用户身份连接,但出现了同样的错误。

我设置了一个域用户,然后将应用程序池设置为使用该域用户并设置为使用直通,当我测试目录浏览中的设置时,它说一切都很好,但我从网页。

我已经设置了一个域用户,然后将应用程序池设置为使用该域用户并设置为连接至该用户,当我在目录浏览中测试设置时,它说一切都很好,但我得到的是一样的来自网页的错误。

我已将 apppool 设置为使用我的登录名,并且它适用于传递权限。

有没有我遗漏的东西。

您需要在单独的文件夹中设置文件夹权限,以授予对托管应用程序的服务器的 "computer$" 帐户的访问权限。

看这里:https://www.iis.net/learn/manage/configuring-security/application-pool-identities

application pool identities also use the machine account to access network resources.

因此,在您拥有数据文件的服务器中,您应该设置文件夹权限以允许访问托管您网站的机器名称。

我专门为虚拟目录创建了一个域用户,它似乎可以工作,但这是最佳做法吗?

Windows 2012 服务器上使用 IIS 部署 Web 应用程序时,我遇到了同样的挑战。

问题是 App Pool Account 没有 Website Root 的完整权限。

我所要做的就是转到 Website Root 所在的目录,然后右键单击它。接下来,我选择 Security,然后授予 IIS-Users 组对该目录的完全访问权限。

对我来说 IIS-Users 组包含所有 Users/App Pool AccountsIIS.

中创建

就这些了。

希望对您有所帮助