【问题标题】:HTTP Error 401.0 - Unauthorized error messageHTTP 错误 401.0 - 未经授权的错误消息
【发布时间】:2017-06-14 13:53:31
【问题描述】:

我开发了一个简单的 ASP.Net MVC 4 应用程序,使用 Windows 身份验证在我们公司的本地网络上运行。在 IIS 上部署时它工作正常。但是如果我通过 Visual Studio 运行应用程序,我会收到错误消息

这是我的 Web.Config 文件的样子

<system.web>
<authentication mode="Windows" />
<roleManager defaultProvider="WindowsProvider" enabled="true" cacheRolesInCookie="false">
  <providers>
    <add name="WindowsProvider" type="System.Web.Security.WindowsTokenRoleProvider" />
  </providers>
</roleManager>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime maxUrlLength="32767" maxQueryStringLength="32767" targetFramework="4.5" />
</system.web>

 <system.webServer>
<modules>
  <!--<remove name="FormsAuthenticationModule" />-->
</modules>
<security>
  <requestFiltering>
    <requestLimits maxUrl="32767" maxQueryString="32767" />
  </requestFiltering>
</security>

为了调试,应用程序配置为使用“本地 IIS Web 服务器”运行,并在应用程序的“属性”->“Web”选项卡中选中“使用 IIS Express”选项。

【问题讨论】:

  • 可能是文件夹的权限问题。尝试向 IIS 用户或所有人授予应用程序托管文件夹的权限

标签: c# asp.net asp.net-mvc iis


【解决方案1】:

原来我必须在我的项目的Development Server 属性中启用Windows Authentication,禁用Anonymous Authentication

【讨论】:

  • 这对我不起作用,我仍然遇到同样的错误。还有其他选择吗
  • 对于任何查看此设置的人来说,该设置位于“属性”窗格中,而不是“属性”窗口中。即当您选择项目时看到的属性而不是右键单击时获得的属性 -> 属性。
【解决方案2】:

您需要在项目 Web.config 中添加以下内容:

<system.web>
    <authentication mode="Forms">
      <forms loginUrl="~/Account/Login" timeout="1" />
    </authentication>
  </system.web>

/Account/Login 是控制器的登录方法。

【讨论】:

    【解决方案3】:

    确保您的目录浏览已启用。

    查看link 在 IIS 中添加用户。

    【讨论】:

      猜你喜欢
      • 2013-02-07
      • 2016-10-10
      • 1970-01-01
      • 2015-09-11
      • 2012-02-05
      • 1970-01-01
      • 2021-05-12
      • 2014-06-24
      • 2014-02-26
      相关资源
      最近更新 更多