Adldap 2可以连接并查找用户但无法进行身份验证

时间:2016-03-28 23:21:24

标签: laravel authentication adldap

问题:尽管能够在laravel 5.2上使用Adldap访问有关用户的信息,为什么我不能通过Adldap验证已知的注册用户?

我试图在laravel 5.2上使用Adldap来验证大学的用户。我已成功设法使用管理员凭据连接到ldap服务器,甚至可以检索有关用户的信息。 `     

namespace App\Http\Controllers;

use Auth;
use Input;
use Adldap;

class AuthController extends Controller
{
    public function authenticate()
    {

        $username = Input::get('username');

        $password = Input::get('password');

        $authentic = Adldap::authenticate($username,$password);

        $userData = Adldap::users()->find($username);

        var_dump( $authentic );

        dd( $userData );

    }
}

`

当我尝试登录时,尽管拥有正确的密码(我也将其转储以检查),但转储$ authentic会让我失意。但是,使用相同的用户名,如果我转储$ userData,我会获得大量(正确的)用户信息。使用我的用户名,如果我打开$ userData对象,我可以看到我所在的电子邮件群组,我的校园邮寄地址,我的工作头衔等。 Dumped variables。我对使用ldap非常新,并且我不太确定一切是如何工作的。此外,它可能值得注意,尽管我是那样做设置的人,所以我没有太多访问服务器。一切都在必要的基础上。

但有一点是ldap服务器在那一端负责任何密码散列。但是,由于我已经连接但身份验证失败,我可能需要在我的端部哈希密码吗?请详细解释任何解决方案。作为一名Ag工程师,这一切都不是我的领域,但有时候分支是必要的。

没有错误。我在wamp和logs / php_error中(我假设这是/ var / log / debug的等效本地版本)。另外,apache_error没有显示任何问题。

2 个答案:

答案 0 :(得分:0)

您最好在尝试登录时检查/ var / log / debug中创建的消息。请将这些消息添加到此帖子中。

答案 1 :(得分:0)

没有"错误"在我的结尾。 Ldap服务器只是配置为接受用户的完整电子邮件地址,而不是我正在使用的短ID。