Php Zend Server-启用Windows身份验证/NTLM/Apache mod\u authnz\u sspi

Php Zend Server-启用Windows身份验证/NTLM/Apache mod\u authnz\u sspi,php,active-directory,single-sign-on,ntlm,zend-server,Php,Active Directory,Single Sign On,Ntlm,Zend Server,所以我有一个Zend服务器,我正在寻找一种使用Windows凭据启用自动身份验证的方法 我希望基本上获得与在IIS服务器上启用Windows authentification/NTLM或在Apache服务器上安装Apache模块“mod_authnz_sspi”相同的结果。启用/安装后,这两种方法都会将当前登录到PHP变量的Windows用户的凭据传递给PHP变量。 这些变量是:$\u SERVER[“REMOTE\u USER”]或$\u SERVER[“PHP\u AUTH\u USER”]

所以我有一个Zend服务器,我正在寻找一种使用Windows凭据启用自动身份验证的方法

我希望基本上获得与在IIS服务器上启用Windows authentification/NTLM或在Apache服务器上安装Apache模块“mod_authnz_sspi”相同的结果。启用/安装后,这两种方法都会将当前登录到PHP变量的Windows用户的凭据传递给PHP变量。 这些变量是:$\u SERVER[“REMOTE\u USER”]或$\u SERVER[“PHP\u AUTH\u USER”],其中将包含用户名。使用getenv(“USERDOMAIN”)还可以检索域名

通过设置这些变量,我能够为我的站点上的应用程序实现单点登录解决方案

  • 其中一个应用程序是“osTicket”。我使用了以下插件:和。 因此AuthPassthru将把上述PHP变量传递给LDAP插件。LDAP插件随后将与服务用户连接到我的Active Directory服务器,并从传递的PHP变量中查找Windows用户是否是域的一部分。如果是,则用户将自动登录

  • 另一个是CMS Joomla。在这里,我基本上可以用插件pkg_shplatform、pkg_ldap_sso_core和plg_sso_http做同样的事情。我将再次创建一个服务用户来连接到Active Directory,并从“plg_sso_http”插件传递的变量中查找用户,然后自动登录

  • 我使用mod_authnz_sspi在Apache服务器上实现了这一点。 但是现在我必须使用Zend服务器,并且基本上在那里做同样的事情。我们的目标是提供一个单一登录解决方案,用户将只登录到他们的Windows帐户,然后自动登录到我的站点上的每个应用程序,并由Active Directory服务器对其进行身份验证

    若并没有人知道在Zend服务器上以这种方式进行SSO的解决方案,若您知道如何以Kerberos方式(或任何其他方式)进行SSO,那个也会有所帮助