我们在Windows桌面上使用WAMP托管在我们的Intranet上的应用程序(W代表Windows,P代表PHP)。我们需要实现一项新功能 - 每当用户访问我们的Intranet站点时,使用他/她登录的凭据验证用户身份。
这里我缺少一些实现它的基本概念 - 如何在PHP中访问用户详细信息中记录的当前窗口。
有没有办法检测当前用户是谁,并将此用户数据传递给我们的LDAP服务器进行验证?
答案 0 :(得分:3)
看看这里:http://siphon9.net/loune/2007/10/simple-lightweight-ntlm-in-php/
是身份验证的一半。
只需注意apache需要设置 KeepAlive On 设置。
它将为您提供当前用户的登录/域/工作站信息。
如果您需要完整的NTLM身份验证方案支持,则您的Web服务器需要模块。
请看这里:http://modntlm.sourceforge.net/
在这里:http://bloke.org/linux/ntlm-authentication-active-directory-on-apache-linux/
在这两种情况下,URL必须位于IE的“受信任区域”和firefox的类似设置中。
答案 1 :(得分:1)
我建议您使用mod_auth_sspi - Apache 2.x身份验证模块。它很容易设置。
这是主页http://sourceforge.net/projects/mod-auth-sspi/
您可以保护位置,文件夹或特定文件。您可以允许/拒绝特定用户,组,域等。
我在运行apache 2.2和PHP 5.2的Windows 2008服务器上实现了这一点,它为我的SSO完美运行。