用户只会使用IE,并且在IE中,如果他们登录到域控制器,它可以在不提示的情况下传递他们的凭据。
我想知道的是,我如何抓住他们的用户名?
我认为这可以解决问题:$_SERVER['auth_user'];
但没有运气。
就像这个Can you get a Windows (AD) username in PHP?
一样但我不知道代码应该是什么样的,以捕获/获取用户的用户名
感谢任何帮助。
答案 0 :(得分:1)
没有办法直接解决php中的问题,但你可以借助javascript获取用户名:
<script type="text/javascript">
<!--
var WinNetwork = new ActiveXObject("WScript.Network");
alert(WinNetwork.UserName);
//-->
</script>
只需添加一些AJAX;)
HTH
答案 1 :(得分:0)
如果您的PHP在IIS上运行,那么您可以将其锁定在该级别。我不确定您是否可以访问用户名,但至少只有具有访问该站点的适当权限的经过身份验证的用户才能访问该用户名。希望这有点帮助。
答案 2 :(得分:0)
您必须在IIS中的应用程序文件夹上启用集成身份验证,然后您的方法才能正常工作。
您可以使用mod_auth在Apache中执行此操作 http://rc.quest.com/topics/mod_auth_vas/