我有一个问题。我有一个关于apache2.2的网站。我需要为客户提供这个功能。当用户在活动目录域中打开站点时,该用户必须自动登录。
我真的不知道该怎么做这些事。请帮帮我。因此,如果用户在域中,该用户必须自动登录,他的昵称必须与活动目录中的昵称相同。域使用NTLM身份验证实际上是可能的。您需要authenntlm插件,它将使用Internet Explorer对用户进行身份验证。一个示例语法是
<Location />
PerlAuthenHandler Apache::AuthenNTLM
AuthType ntlm,basic
AuthName test
require valid-user
# domain pdc bdc
PerlAddVar ntdomain "name_domain1 name_of_pdc1"
PerlAddVar ntdomain "other_domain pdc_for_domain bdc_for_domain"
PerlSetVar defaultdomain wingr1
PerlSetVar ntlmdebug 1
</Location>
## taken from the documentation
请参考模块文档以获得更多选项和有关设置的具体说明-以上内容应使您在正确的方向上开始。
在客户端,Internet Explorer和Firefox应该能够在进行一些配置后自动登录(Firefox需要一点特别的注意——这可以通过在部署期间设置配置变量来实现)。
可以使用Kerberos票据来完成。Apache有一个模块http://modauthkerb.sourceforge.net/
我建议您在进入模块文档之前先阅读Kerberos的工作原理。
有两个先决条件:
- 站点域必须在浏览器 上列为本地内部网
- 您需要在AD服务器上生成密钥
你不能这么做。除非你使用的是古老的windows95时代的ie浏览器,它具有惊人的安全功能,可以将windows用户名/密码发送到任何有密码保护的网站,无论该网站在哪里。
浏览器不会自动发送你的windows凭据,可能除了IE,没有其他浏览器可以访问这些凭据。