我试图将一个基本的http身份验证从一个子域传递到另一个子域,这样就不会要求用户登录两次。
第一个子域支持php,第二个子域是asp应用程序。asp应用程序要求一个基本的http身份验证提示(一旦提交,他们就可以访问web应用程序),但我的目标是让它强制正确登录,这样就不会提示用户,他们可以立即访问web应用程序。
在php方面,我尝试了以下操作:

$base64value = base64_encode($value);
setcookie("Authorization",$base64value, time()+3600*24);

我也成功地获得了头身份验证,但它似乎不会将其传递到下一页,即使它是相同的值
header('WWW-Authenticate: Basic realm="'.$base64value.'"');

我也试过用cookie设置域不走运。您不能通过cookie传递http基本身份验证,这是真的吗?好像有两种不同的方法。

最佳答案

基本身份验证使用web客户端计算的http头Authorization,而不是cookie。所以是的,您不能用这种技术传递身份验证。
您需要重新设计身份验证。您可以查看reverse-proxying一个站点后面的另一个站点,或者设置CAS服务。

关于http - HTTP基本身份验证传递到其他子域,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5903746/

10-12 00:05
查看更多