ASP.NET错误消息401.3"访问被拒绝"的详细解决方案

Cur*_*rly 2 asp.net asmx

我刚刚使用Web服务为ASP.NET Web应用程序编写了一个示例代码.环境是Visual Studio 2015.我的操作系统是Windows 8.

进行调试时,网页不会显示来自网址的应用.而是报告错误:

"

'/'应用程序中的服务器错误.

访问被拒绝.描述:访问提供此请求所需的资源时发生错误.您可能没有权限查看请求的资源.

错误消息401.3:您无权使用您提供的凭据查看此目录或页面(由于访问控制列表而拒绝访问).请Web服务器的管理员授予您访问"K:...\WebServicesDemo\WebServicesDemo\CalculatorWebService.asmx"的权限.

版本信息:Microsoft .NET Framework版本:4.0.30319; ASP.NET版本:4.0.30319.34248

"

我试过了什么:

允许访问"IIS_IUser",但它应该是"IUSR".这解决了这个问题.这来自帖子:在IIS7中托管ASP.NET会导致Access被拒绝?

我注意到提供了一些解决方案,但没有一个对我有意义.谁能给我一步一步的回答?

例如,我不知道在哪里添加IIS_IUSRS或IUSR.他们有什么办法?其次,似乎IIS_IUSRS和IUSR都没有在我的安全文件夹中被识别(右键单击app文件夹,属性 - >安全选项卡)

有关更多信息,我的Web.config看起来像:

<?xml version="1.0"?> 
<!-- For more information on how to configure your ASP.NET application, please visit http://go.microsoft.com/fwlink/?LinkId=169433 --> 
<configuration> 
<system.web> 
<compilation debug="true" targetFramework="4.0"/> 
<httpRuntime/>
 </system.web>
 </configuration> 
Run Code Online (Sandbox Code Playgroud)

小智 6

  1. 导航到Web应用程序的根目录:例如C:\ Inetpub\wwwroot [网站文件夹名称]
  2. 右键单击该文件,然后转到"属性>安全性"
  3. 单击"编辑",然后单击"添加"
  4. 点击左下方的"高级"
  5. 点击"立即查找" - 这应该列出所有可用的帐户
  6. 滚动直到找到"IUSR"并选择它
  7. 点击"确定"
  8. 再次单击"确定"
  9. 在"IUSR的权限"块中,单击"完全控制"旁边的"允许"
  10. 单击"应用"(等待对话框关闭)
  11. 点击"确定"
  12. 再次单击"确定"

你的问题应该解决


Tho*_*ena 5

除了乍得的回答之外,您可能还需要检查一个棘手的设置:

1)在IIS中打开根网站

2) 前往 Authentication --> Anonymous Authentication --> Edit

3)确保Anonymous user identity设置为Application pool identity

但是,如果要使用与应用程序池帐户不同的特定用户帐户进行匿名身份验证,则还必须授予该帐户访问 Web 应用程序文件夹的权限。