如何在带有 apache 2.4 的 php 编写网站中使用 SSO


How to use SSO in a php written website with apache 2.4?

我是一家公司的实习生,必须为公司建立一个内联网。对我来说,困难在于我对编程非常陌生,并不真正了解 apache 是如何工作的。用户不想每次访问站点时都登录内部网(输入登录名和密码),他们希望他们无需这样做即可登录。

我所有用户都使用Windows 7(或更高版本),我将使用apache server 2.4用php-sql编写内部网。

我想知道如何使用 NTLM 通过 SSO 连接用户(因为身份验证是通过 Active Driectory 完成的,我希望用户使用他们的 Windows 登录名和密码自动连接)?什么是 apache 模块,我该如何进行?我在PHP中使用什么库?

真的被困在这一点上,似乎找不到解决方案,请帮助我。我找到了一些可以帮助我的链接,但我不明白作者在说什么。

以下是有关主题的一些链接:

  • 论坛问题
  • 维基文章

实际上我看到这里已经提出了这种问题(如何使用Microsoft AD为内部PHP应用程序实现单点登录(SSO)?)但我没有得到解决方案,我希望有人详细解释一下,正如我之前所说的那样,我对编程很陌生。

首先,使用Apache不是必需的,并且会使事情变得有些复杂,如果您可以在Windows服务器上使用IIS服务器,您会笑。

  1. 在 IIS 服务器上安装 PHP
  2. 在 IIS 中创建新网站
  3. 将新网站访问权限设置为 Windows 身份验证并禁用匿名鼠标访问。

这将配置IIS以根据Active Directory对用户进行身份验证,如果他们在本地网络上的Windows计算机上,已经向本地域进行身份验证,并且GPO将Intranet定义为Intranet站点,则用户Windows登录详细信息将自动传递,并且可以使用$_SERVER超全局在PHP中访问。