我在Intranet上有一个PHP Web应用程序,可以在该页面上提取当前用户的IP和主机名,但我想知道是否有办法获取/提取他们的Active Directory/Windows用户名.这可能吗?
检查AUTH_USER
请求变量.如果您的Web应用程序允许匿名访问,则此项为空,但如果您的服务器使用基本或Windows集成身份验证,则它将包含经过身份验证的用户的用户名.
在Active Directory域,如果您的客户正在运行Internet Explorer和您的Web服务器/文件系统权限的配置正确,IE会悄悄地提交自己的域凭据到您的服务器,并AUTH_USER
会MYDOMAIN\user.name
而无需显式登录到你的Web应用程序的用户.
我已经在IIS上运行了php mysql - 我可以使用,$_SERVER["AUTH_USER"]
如果我在IIS中打开Windows身份验证 - >身份验证并关闭匿名身份验证(重要)
我用它来获取我的用户和域名:
$user = $_SERVER['AUTH_USER'];
$user
将返回一个值,如:DOMAIN\username
在我们的网络上,然后它只是一个DOMAIN\
从字符串中删除的情况.
到目前为止,这已经在IE,FF,Chrome,Safari(已测试)中有效.