Safari 5.1基本身份验证注销问题

时间:2013-12-12 13:53:51

标签: safari basic-authentication logout

我的网站启用了基本身份验证。我能够在IE,Mozilla和Chrome中清除用户凭证,但无法从Safari中清除凭据。

我尝试了以下

  1. 调用Ajax请求并将状态代码设置为401

  2. 使用在网址中传递的用户名调用Ajax请求:http://invalidUSer@site.com

  3. 但他们两个都没有正常工作。每当我关闭并打开新的Safari时,凭据都不会被删除。

    以下是代码段:

    在logoout页面中,我有以下脚本:

    $.ajax({
        type: "POST",
        contentType: "application/javascript",
        async: true,
        url: "../ClearAuthentication.aspx"
    });
    

    在ClearAuthentication.aspx.vb

    'Context.Response.Redirect("http://www.test.com", False) ' have tried this both adding and removing
    Response.StatusCode = 401
    Page.Response.StatusDescription = "Unauthorized"
    'Page.Response.AppendHeader("WWW-Authenticate", "Basic realm=""foo""") ' have tried this both adding and removing
    Context.Response.End()
    

1 个答案:

答案 0 :(得分:0)

我们有同样的问题。我们成功跟随黑客入侵。这就像一个简单的登录请求,但凭据虚假凭证。

function logout() {
    var request = new XMLHttpRequest();                                        
    request.open("get", "/rest/login", false, user.login, "false");                                                                                                                               
    request.send();                                                            
    window.location.replace("/");
}

此解决方案是the question.

的最后一个答案