所以我有一个漂亮的脚本(感谢上一个问题的一些响应者的帮助),这允许一个人输入他们的用户名&使用LDAP从Win AD获取密码。
更进一步,我希望能够看到这个人是否已经在PC上验证他们的会话并使用该信息而不是他们输入新内容。有人确实引用了SSPI,我写了一个小脚本给我用户名...这几乎是我想要的。
SSPI问题(我可以看到,请在此处更正),如果此人没有经过身份验证的AD会话,则浏览器会要求用户使用传统弹出框中的一个也被迫在用户之前输入他们的DOMAIN \。我想让他们访问我的登录表单,而不是使用浏览器弹出窗口。
我期待你的想法。
答案 0 :(得分:4)
回答完上一个问题之后,我以为你已经到了这一步。不幸的是,没有透明的解决方案。我知道,因为几周前我尝试了同样的事情,并进行了大量的研究。您可以做的最好的事情是,您将Apache配置为仅在用户尝试访问您的登录页面时请求SSPI身份验证(并且仅在那里,以避免浏览器的auth界面在您不想要的地方和时间弹出)并且不需要有效的用户/通行证组合。
因此,如果用户登录到域,则浏览器(如果能够/配置)将自动传递其AD用户名,否则将要求输入用户名和密码。这是一个棘手的部分 - 如果他/她未能提供正确的组合,因为不需要成功登录,会记住会话,您可以回到自定义登录表单,在那里您可以使用PHP的LDAP功能给他们重试的能力。