IIS Windows身份validation由于目录权限而无法正常运行

我有一个IIS 8.0上运行的ASP.NET MVC 5应用程序。 应用程序池运行在域用户下,fi IISPoolUser 。 匿名authentication也使用这个标识。

我给了根池文件夹( C:\inetpub\wwwroot )的完全控制权限,一切正常。

现在,我想启用Windows身份validation。 当某人(fi, WebUser )尝试访问此应用程序时,他将获得login提示对话框,然后获取401 Unathorized – “由于凭据无效而导致访问被拒绝”错误。 浏览器发送适当的身份validation标头 – 问题与目录访问有关。

如果我授予用户WebUser到文件夹C:\inetpub\wwwroot权限,那么它工作正常。 ASP.NET模拟被禁用。

图示

为什么IIS使用WebUser标识访问目录? 我希望IIS以应用程序池标识 – IISPoolUser的身份访问此文件夹。 如何使它做到这一点? 我不想将Everyone添加到目录权限,因为它听起来是错误的,一般来说 – 我只想允许通过我的IIS应用程序修改此目录。

您应该将权限授予YOURDOMAIN\Domain Users

出于明显的安全原因,您不应该为所有人授予读取权限。

IIS使用模拟来访问该文件夹,如果域用户没有对该文件夹的读取权限,他们会不断收到密码提示,并在第三次尝试中收到401错误。