我有一个域和一组需要身份验证才能访问的子域。我目前正在使用mod_auth在domain.tld级别对用户进行身份验证(mod_auth basic)。我的目标是在域和所有子域之间进行单点登录。
这些凭据会自动转移到子域,还是通过简单的vhost配置更改,还是有更好的方法来执行此操作?
答案 0 :(得分:9)
浏览器通过URL根目录和身份验证领域的名称来区分需要HTTP身份验证的区域。
例如,两个域都有一个具有相同名称的领域:
http://one.example.com/ with the realm "Please enter credentials!"
http://two.example.com/ with the realm "Please enter credentials!"
首先,用户访问one
,要求输入凭据并输入凭据。然后,用户访问two
,浏览器识别出该URL不同,从而再次询问用户的凭据。
这是一件好事,因为否则www.badguy.com可以设置它,以便您的浏览器通过您的网上银行登录发送。
简而言之:无法解决基本HTTP身份验证和标准HTTP客户端的问题。
您可以使用mod_auth_digest,因为您可以指定多个URI位于相同的“保护空间”中。但是,使用此身份验证方法有两个新问题: