Firefox 无法将 ntlm 传递给在 Centos 5.1 上运行 authenntlm 的 apache2

Firefox 无法将 ntlm 传递给在 Centos 5.1 上运行 authenntlm 的 apache2

我们正在尝试获取在 centos 5.1 上运行 apache2 的应用程序服务器,以使用 NTLM 为许多应用程序提供 SSO。

我们可以让 SSO 与 IE 配合使用,但 SSO 与 Firefox 配合使用会失败。我们已更新 Firefox 中 about:config 中的 NTLM 信任条目。但仍然会失败。

我们当前的 apache 配置如下所示:

Alias /someapp "/opt/someapp/public"

<Directory "/opt/someapp/public/">
   PerlAuthenHandler Apache2::AuthenNTLM
   AuthType ntlm,basic
   AuthName Basic
   require valid-user
   PerlAddVar ntdomain "MYDOMAIN primayad backupad"
   PerlSetVar defaultdomain MYDOMAIN
   PerlSetVar fallbackdomain MYDOMAIN
   PerlSetVar splitdomainprefix  1
   AllowOverride All
   Order allow,deny
   Allow from all
   PerlSetVar ntlmdebug 3
   #PerlSetVar ntlmauthoritative off
   PerlsetVar basicauth off
</Directory>

有什么想法为什么这对 IE 有效,但 Firefox 会出现一个提示用户身份验证的对话框??

谢谢,

授予

答案1

这是因为 IE 默认执行全局 NTLM 身份验证,而 Firefox 则采用另一种方式,仅在明确配置时才尝试 NTLM 身份验证,否则会忽略 SPNEGO 挑战。

您需要about:config在 Firefox 中打开并过滤以查找网络.自动-ntlm-auth.trusted-uris默认情况下没有值。您需要输入与要执行 NTLM 身份验证的主机匹配的主机名。我读过其他网站建议输入完整 URL,但我使用.domain.example.com用于我们的内部 Active Directory 域控制主机。

需要注意的是,这仅适用于 Windows 机器上的 Firefox,但我还没有在 Linux 机器上成功运行,即使它作为成员加入 AD 域。

相关内容