我有一个网站,它位于IIS服务器上,我在另一台服务器上有一个文件夹文件服务器。我已将虚拟目录设置为文件服务器上的文件夹。此应用程序两个服务器位于同一个域中,但将来我将拥有不在同一个域上的服务。
我尝试在两台计算机上设置本地用户,并设置应用程序池以使用本地帐户,我得到了
System.UnauthorizedAccessException:拒绝访问路径。 和 401 - 未授权:由于凭据无效,访问被拒绝。 您无权使用您提供的凭据查看此目录或页面。
我已将虚拟设置为本地用户连接并获得相同的错误。
我已经设置了域用户,然后将应用程序池设置为使用域用户并设置为使用传递,当我在目录浏览中测试设置时,它说一切都很好但我从网页上得到了相同的错误。
我已经设置了一个域用户,然后将应用程序池设置为使用域用户并设置为用户连接,当我在目录浏览中测试设置时,它说一切都很好,但我得到了相同的错误网页。
我已将apppool设置为使用我的登录信息,它可以使用传递权限。
我有什么遗漏。
答案 0 :(得分:4)
您需要在单独的文件夹中设置文件夹权限,以便访问托管应用程序的服务器的“computer $”帐户。
见这里:https://www.iis.net/learn/manage/configuring-security/application-pool-identities
应用程序池标识也使用计算机帐户进行访问 网络资源。
因此,在拥有数据文件的服务器中,您应设置文件夹权限,以允许访问托管您网站的计算机名称。
答案 1 :(得分:1)
在 Windows 2012 服务器上使用 IIS 部署 Web 应用程序时,我遇到了同样的挑战。
问题是 App Pool Account
没有 Website Root
的全部权限。
我所要做的就是转到 Website Root
所在的目录,然后右键单击它。接下来,我选择了安全,然后授予 IIS-Users 组对该目录的完全访问权限。
对我来说,IIS-Users 组包含在 IIS 中创建的所有用户/应用程序池帐户。
仅此而已。
我希望这会有所帮助
答案 2 :(得分:0)
我已经专门为虚拟目录创建了一个域用户,它似乎可行,但这是最佳做法吗?