ASP.NET webforms身份验证无法正常工作

时间:2016-03-11 14:21:08

标签: c# asp.net authentication cookies webforms

我正在学习ASP.NET Webforms,我想创建一个简单的聊天应用程序。

我已经创建了一个Default.aspx表单,这是我的登录页面。它现在只包含一个<asp:Login/>控件,如果用户通过身份验证,它的目标是重定向到另一个页面。这就是说,当用户存在于我的SQL数据库中时。

一切都很好,除了一件事。我想使用选项&#34;记住我&#34;,但它不能作为例外工作。对于Default.aspx

protected void Page_Load(object sender, EventArgs e)
{
    if (User.Identity.IsAuthenticated == true)
    {
        Response.Redirect("Chatroom.aspx");
    }
}

不幸的是,这使得条件始终如一。我已经搜索了一段时间,并添加到我的web.config以下行:

<authentication mode="Forms">
    <forms name=".ASPXAUTH" loginUrl="Default.aspx" cookieless="UseCookies" timeout="1" slidingExpiration="false"/>
</authentication>
<authorization>
    <deny users="?"/>
</authorization>

由于UnobtrusiveValidationError我还添加了以下内容:

<appSettings>
    <add key="ValidationSettings:UnobtrusiveValidationMode" value="None" />
</appSettings>

但是现在,即使等了1分钟,我总是被重定向到Chatroom.aspx。我在项目属性中注意到匿名身份验证已禁用(这没问题),但启用了Windows身份验证。我认为它应该被关闭,因为我想使用表单身份验证,但在关闭它之后我被拒绝访问Default.aspx(401.2 - 未经授权)。

我缺少什么?

0 个答案:

没有答案