gpt4 book ai didi

使用 Kerberos 的 PHP Active Directory 身份验证

转载 作者:可可西里 更新时间:2023-11-01 00:38:40 24 4
gpt4 key购买 nike

我目前正在将 CMS(用 PHP 开发)身份验证与 Active Directory 集成。这个特定的 Active Directory 只允许通过 Kerberos 或 ldaps://进行身份验证(但最后一个不是最需要的,因为我必须使用绝对路径)。

我一直在网上搜索有关 PHP AD Kerberos 身份验证的任何信息,但一无所获。谁能指出我正确的方向?

提前致谢。

最佳答案

如果您使用的是 Active Directory,则您的网络服务器可能是 IIS,它具有内置的 kerberos*.. 然后让浏览器和网络服务器处理身份验证并使用一些 PHP,例如:

$user = isset($_SERVER['AUTH_USER']) ? $_SERVER['AUTH_USER'] : false; if((false === $user) or ('' == $user)){//Divert to incorrect password page.. //MSIE typically tries three times, Kerb/NTLM/Plain//FF will only try NTLM/Plain if configured for NTLM//Chrome.. won't work with this at all.. not that I have discovered.//If testing locally using Apache, user will be 0}

现在您可以使用 Kerberos 进行 SSO,很有魅力。

*:称为“集成 Windows 身份验证”http://support.microsoft.com/kb/324274并且必须通过将“安全区域”设置为“本地 Intranet”在浏览器中启用。如果 IIS 框实际上位于本地 Intranet 上,则可能会发生这种情况。但这取决于 SPN 和用户框和 IIS 框的域以及任何信任关系.. 如果它在一个域名/机器名相同的域上,它应该可以工作。如果您正在聚集或做任何有趣的事情,请预料到严重的头痛,而不仅仅是正常的头痛。如果您觉得需要,您可以编写 IE 设置的脚本/GPO。

希望你问的是别的东西。如果我祈祷你没有实现这个,它会导致每个请求的整个身份验证过程。结果会减慢每个页面的加载速度。无论你实现了多少聚合/黑客/解决方法..这只是一个坏主意,但一旦你开始或告诉经理,他们真的很喜欢它,因为它节省了他们不得不再次登录..哦,他们仍然会提示速度,但是..

关于使用 Kerberos 的 PHP Active Directory 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1389754/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com