10

我有一个在 Windows 2008 服务器 R2 上运行的 PHP 应用程序,它使用 PHP 的 LDAP 库针对 Active Directory 对用户进行身份验证。

根据这个答案,我正在寻找使用$_SERVER['AUTH_USER'],但我得到了一个空白值。AUTH_TYPE和相同AUTH_PASSWORD。变量已声明,但没有一个变量分配给它们任何值。

我已经启用了基本身份验证和 Windows 身份验证角色(通过服务器管理器),但都没有解决问题。

我正在使用 PHP 5.3.14、Zend Server CE 和 IIS 7.5。

我需要应用单点登录解决方案,但无法获取当前登录用户的凭据,我不知所措。

任何帮助将不胜感激。

4

3 回答 3

17

我通过在 IIS 中禁用匿名身份验证并启用 Windows 身份验证来使其工作(我认为 Windows 身份验证已启用,但事实证明该角色只是安装了。)现在$_SERVER['AUTH_USER']$_SERVER['REMOTE_USER']已填充。

于 2012-08-23T21:23:45.613 回答
2

我相信经过身份验证的用户的正确索引是$_SERVER['REMOTE_USER'].

于 2012-08-23T19:37:47.087 回答
1

根据PHP 文档,正确的索引似乎是PHP_AUTH_USER.

尝试使用$_SERVER['PHP_AUTH_USER'].

于 2012-08-23T19:40:32.400 回答