访问被拒绝 - 401.2:未经授权的错误

时间:2013-12-27 14:49:01

标签: asp.net iis-7.5 forms-authentication

我在IIS 7.5上托管了一个ASP.NET网站,如下所示:

我有“customwebsite.com”作为网站,其中我有两个Web应用程序 - uk&我们 - 以便我可以访问这些应用程序作为customwebsite.com/uk& customwebsite.com/us。

customwebsite.com目录没有任何web.config,只有两个用于web应用程序的文件夹我们和英国。

我们和英国的Web应用程序都有自己的web.config,并具有如下指定的表单身份验证:

    <authentication mode="Forms">
      <forms loginUrl="/static/login.aspx" name="login" timeout="20"/>
    </authentication>

    <authorization>
      <deny users="?" />
    </authorization>

在此路径:/ static,有一个带有以下内容的web.config:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.web>
        <authorization>
            <allow users="?" />
        </authorization>
    </system.web>
</configuration>

当我点击我们应用程序的根URL时,网站正确加载但如果我从英国加载,我收到如下错误: enter image description here

我已经检查了文件夹安全性,并且所有必需的用户都被授予了许可,并且对于我们和英国的应用程序都是相同的。

我已检查过IIS日志,以下是失败时请求的响应代码:401 0 0 1519 296

有人可以帮我解决这个问题。

4 个答案:

答案 0 :(得分:4)

解决了。

还有两个文件夹,其中发生了/static/login.aspx的重定向。

我们需要允许访问所有此类重定向文件夹,方法是在这些文件夹中包含以下内容的web.config文件:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.web>
        <authorization>
            <allow users="?" />
        </authorization>
    </system.web>
</configuration>

答案 1 :(得分:1)

遇到同样的错误,但有不同的分辨率。在我们的例子中,我们必须设置:

<machineKey compatibilityMode="Framework45" />

详细信息: http://ardalis.com/asp-net-shared-authentication-problem-solved

答案 2 :(得分:0)

在我们的案例中,我们在登录页面上发生错误,该错误重定向到用户无权查看的错误页面,因此重定向到登录页面...循环冲洗重复。

我们从UI中删除了所有控件,然后逐个添加它们直到页面崩溃。然后我们可以缩小有错误的控件。

是的,我们让所有用户都可以访问错误页面。

答案 3 :(得分:0)

检查下面的 IIS 设置

  1. 授权规则 - 必须只包含允许用户设置而不是任何其他规则,例如。拒绝用户规则。