我想将用户从一台服务器上的一个网页重定向到另一台服务器上的另一个页面。第一个应用程序使用 Active Directory 进行身份验证。第二个应用程序没有使用 Active Directory 进行身份验证。但是,第二个应用程序允许在 HTTP GET 请求中发送带有基本身份验证的 auth 标头。
我测试了发送 Auth 标头并成功:
function DoLogin()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
if(xmlhttp.status==200)
window.location = "http://server:port/home";
else
document.getElementById("myDiv").innerHTML="Error in Login";
}
}
xmlhttp.open("GET","http://server:part/auth",true);
xmlhttp.setRequestHeader("Accept","application/rdf+xml");
xmlhttp.setRequestHeader("Authorization","Basic Z29082FtaWs6TDN0bWVpbkBPZmZp=45^");
xmlhttp.send();
}
但是,在这段代码中,我发送了一组硬编码的凭据。我无权访问创建此哈希所需的用户名和密码。我想知道是否有任何方法可以获取凭据的哈希并将它们传递下去?