【问题标题】:PHP: Use HTTP Digest Authentication response to authenticate with LDAPPHP:使用 HTTP Digest Authentication 响应向 LDAP 进行身份验证
【发布时间】:2017-05-26 08:19:24
【问题描述】:

能否告诉我是否可以使用 HTTP Digest Authentication 响应通过 LDAP 对用户进行身份验证?可以让我看一个 PHP 的例子吗?

【问题讨论】:

  • 语法改进。

标签: php ldap digest-authentication http-digest


【解决方案1】:

请务必注意,即使您使用的是摘要式身份验证,也完全取决于后端系统来验证凭据。无论是存储您的有效凭据集的后端数据库、RADIUS 服务器、LDAP 等都无关紧要。在 HTTP 级别上,服务器和客户端将交换这些标头。

https://leonjza.github.io/blog/2013/06/25/dtob.py-digest-to-basic-authentication-a-simple-example-of-a-authentication-downgrade-attack/

【讨论】:

    【解决方案2】:

    如 PHP 文档中所述:http://php.net/manual/en/features.http-auth.php

    <?php
    if (!isset($_SERVER['PHP_AUTH_USER'])) {
        header('WWW-Authenticate: Basic realm="My Realm"');
        header('HTTP/1.0 401 Unauthorized');
        echo 'Text to send if user hits Cancel button';
        exit;
    } else {
        echo "<p>Hello {$_SERVER['PHP_AUTH_USER']}.</p>";
        echo "<p>You entered {$_SERVER['PHP_AUTH_PW']} as your password.</p>";
    }
    ?>
    

    当您拥有用户/密码后,您只需要制作您的 LDAP 代码即可使用这些凭据在您的 LDAP 上验证用户。

    另一种方法是使用 HTTP 服务器,该服务器可以使用 LDAP 后端对用户进行身份验证。例如,请参阅 Apache 的此文档:https://httpd.apache.org/docs/2.4/mod/mod_authnz_ldap.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-23
      • 1970-01-01
      • 2012-08-06
      • 1970-01-01
      • 2014-02-28
      • 1970-01-01
      • 1970-01-01
      • 2015-10-03
      相关资源
      最近更新 更多