2

我有一个 umbraco 站点,并且正在为公共站点使用集成 Windows 身份验证。在 IE、Firefox、Safari 中一切正常。然而,在谷歌浏览器中,用户不断被送回登录页面。有时它可以正常工作,而其他的则不行。下面列出了用户登录的代码:

//some stuff to get the member name from the windows username, then:
FormsAuthentication.SetAuthCookie(username, true);

    Member loginMember = Member.GetMemberFromLoginName(username);
    if (loginMember != null)
    {
        Member.AddMemberToCache(loginMember, true, new TimeSpan(0, 20, 0));
    }
    FormsAuthentication.RedirectFromLoginPage(username, true);

如前所述,这在 chrome 以外的任何浏览器中都可以正常工作。有什么想法吗?

4

1 回答 1

0

您是否在重定向之前检查该成员是否有效?

if (Membership.ValidateUser(用户名,密码))
{
FormsAuthentication.SetAuthCookie(用户名,真);
// 你的其余代码在这里
}

如果这不起作用,那么在没有看到更多代码的情况下,我觉得没有足够的信息来正确回答您被注销的原因。如果您真的认为它只是 Chrome,那么请尝试 1) 在隐身模式下使用 chrome (ctrl+shift+N),以及 2) 重新安装 chrome。插件有可能会干扰您的 cookie 存储。

最后,如果重新安装 Chrome 后问题仍然存在,请查看以下代码:

http://our.umbraco.org/projects/website-utilities/razorlogin

祝你好运,如果它有效,请告诉我们。

于 2013-04-18T20:41:15.017 回答