如何在Intranet上使用Windows身份验证自动登录网站?

时间:2019-02-16 07:12:53

标签: php html ldap

我正在xampp上托管我的网站,并希望使用LDAP自动登录我的网站。因此,到目前为止,我使用PHP来获取Windows当前用户名,并尝试通过ldap使用AD对其进行验证,并且它可以正常工作。

但是,由于PHP是服务器端的,因此它仅捕获运行xampp的系统的当前用户,如何为每个通过LAN连接的系统实现它。如果我在其他任何Intranet系统上运行它,则会显示系统名称,其中运行着xampp

有没有办法在客户端获取Windows当前用户的详细信息,或者有没有更好,更简单的自动登录方法。

1 个答案:

答案 0 :(得分:0)

使用工作站提供的登录名是非常不安全的-有很多方法可以欺骗登录信息。当您信任工作站的USERNAME值时,您将无法区分“ lisa登录到名为example.com的域”和“ lisa登录到名为example.com的正式公司域” 。甚至可能是“ lisa登录到她碰巧将其命名为example.com的工作组中的计算机”。

假设您希望用户无需输入凭据即可进行身份验证,则安全路径将是使用联合身份验证或Kerberos令牌。如果已设置ADFS,则可以在PHP with Microsoft Graph中获得联合身份验证。如果Web服务器可以与域控制器通信,则Web服务器可以使用Kerberos令牌并使用登录用户名的 server 版本。作为示例,请参见this StackOverflow post

无论哪种方式,具有现有Windows登录名的用户都可以在不键入凭据的情况下对网站进行身份验证。 没有拥有现有Windows登录的用户会被提示输入凭据。

相关问题