是否可以使用GSSAPI进行NTLM v1/v2身份验证?我正在尝试构建一个Web服务器,与squid/apache非常相似,但我想使用NTLM /协商协议来验证可能使用IE/FireFox的客户端。我尝试使用heimdal库,但无法使gss_accept_sec_context正常工作。它仅仅因“请求不支持的机制”而失败。在gss_accept_sec_context尝试之前调用gss_acquire_cred时,我可以确认服务主体名称,spnego的OID等确实发生了。当然,我通过base64解码授权标头来提取从客户端收到的令牌。我正在使用C++,并在debian上进行实验。 我相信这里周围的一个精彩的黑客知道更多,希望会分享一些重要的线索。用于NTLM身份验证的GSSAPI
在此先感谢。
你正在发送'WWW-Authenticate:Negotiate'头文件吗?客户端将尝试Kerberos身份验证,而不是NTLM。 –
我认为答案是否定的 - GSSAPI只能执行Kerberos。为什么要使用NTLM而不是Kerberos? –
@爱德华汤姆森GSSAPI *可以*做NTLM。 GSSAPI中的G表示* generic *。 Kerberos和NTLM是GSSAPI可以使用的几种*机制中的两种*机制。 –