小编Mar*_*ais的帖子

如何防止 Apache 暴露用户的密码?

在 Apache 中使用基本身份验证(特别是通过 LDAP,但也通过 htpasswd)时,它使 REMOTE_USER 变量可用于下面的 PHP/Ruby/Python 代码——这对于将身份验证卸载到网络服务器非常有用。

在我们的办公环境中,我们有许多内部应用程序通过 SSL 像这样工作,而且都非常安全。但是:Apache 将 PHP_AUTH_USER (=REMOTE_USER) 和 PHP_AUTH_PW 变量暴露给 PHP 中的任何应用程序。(PHP_AUTH_PW 包含用户输入的明文密码。)这意味着应用程序可以获取用户名和密码。大概相同的信息可用于 Python 和 Ruby(所有三个当前都在使用;PHP 正在逐步淘汰)。

那么我怎样才能阻止 Apache 这样做呢?

一种想法是使用 Kerberos Negotiate 身份验证(它不会公开密码并具有作为 SSO 的好处),但对于某些浏览器(Chrome 和某些情况下是 Firefox),它会自动回退到 Basic,从而导致密码再次公开.

authentication apache-2.2

5
推荐指数
1
解决办法
3216
查看次数

标签 统计

apache-2.2 ×1

authentication ×1