我试图获得SSO(单点login)在本地osTicket安装工作。 我在osTicket网站上find了HTTP passthru插件,并将其安装在osTicket中。 我已经确定插件正在确保我可以访问插件设置。 因此,据我所知,应该发生的事情是,用户的凭据是从Windows读取的,然后直接传递到osTicket,以便用户自动login。如果我错了关于插件应该如何工作,请纠正我。 我还确保LDAP插件正在运行并安装在osTicket中。 我做了一些关于为什么自动login不起作用的研究,并且认识到HTTPauthentication与Windows ADauthentication不一样。 我查了一下SSPI,Kerberos等等,看看是否可以获得Apache的Apache服务器的Windows凭据,并假定LDAP模块应该能够获得这些凭证。 再次,如果我对LDAP模块的工作方式有误,请纠正我。 最后,我刚刚干掉了我的XAMPP安装,并开始了一个WAMP安装。 得到了LDAP的工作,现在我试图find一种方法来获得Apache的凭据。 我写了一个简单的脚本,应该回显当前login的用户。
<?php $user = $_SERVER['REMOTE_USER']; ?> <html> <body> <?php echo $user;?> </body> </html>
但是,当我运行这个脚本,我得到以下错误。
(!)注意:未定义的索引:第2行的C:\ wamp \ www \ servertest.php中的REMOTE_USER
这告诉我,$ _SERVER的超全球不获取当前连接的用户的Windows凭据。 我如何填写这个超级全球数组与Windows凭据? 有什么configuration选项需要添加到我的HTTPD.conf?
你需要为ldap和/或Kerberosauthenticationconfiguration你的wamp安装,这些variables将会被你的php脚本所使用。
对于Apache 2.2(今天最常见的): http : //httpd.apache.org/docs/2.2/mod/mod_authnz_ldap.html
对于Apache 2.4: http : //httpd.apache.org/docs/2.4/mod/mod_authnz_ldap.html
如果您需要单点login,那么您还需要configurationmod_kerberos。 我从来没有使用xampp或wamp,所以我不知道他们是否有mod_kerberos。
如果你想要的东西不需要学习如何工作,那么你可以在你运行Windows的时候安装IIS。 Windows桌面的非家庭现代版本将允许运行它,同时连接的数量有一些限制,而服务器版本不会有这种限制。