【问题标题】:LdapRecord Laravel - Active Directory - does not see any usersLdapRecord Laravel - Active Directory - 看不到任何用户
【发布时间】:2021-04-28 23:21:52
【问题描述】:

我使用ready package 作为基础,我已经完成了 readme.md 文件中的所有步骤,并且能够以“einstein”用户身份登录。所以一切似乎都配置正确。

后来我更改了使用 Active Directory 的 ldap 服务器的凭据。

在运行命令php artisan ldap:test 时,我收到了我能够正确连接的消息。 Laravel 日志也是这样说的,但我无法登录 laravel 应用程序。运行命令php artisan ldap:import ldap 时会收到消息,提示找不到用户

在日志文件中我看到如下内容:

[2021-04-28 23:04:08] local.INFO: LDAP (ldap://domain.pl:389) - Operation: Search - Base DN: cn=username@domain.pl,ou=Users,dc=domain,dc=pl - Filter: (&(objectclass=top)(objectclass=person)(objectclass=organizationalperson)(objectclass=inetorgperson)(uid=username)) - Selected: (entryuuid,*) - Time Elapsed: 737.37  

是否有人对 ldaprecord 有同样的问题,即他能够连接到域但无法对应用进行身份验证?并且能够解决这个问题?

更新:我发现 auth.php 使用了错误的用户模型,它使用的是 OpenLdap 而不是 Active Directory,更改了但结果仍然相同

【问题讨论】:

  • 您的 LDAP 服务器日志说什么?
  • 发现我做了什么来使它工作......测试服务器基于 OpenLDAP - 所以在 auth.php 文件中使用该模型时,我能够测试与服务器的连接 /通过命令行导入用户并登录到 laravel 应用程序。
  • 目标服务器基于 Active Directory - 虽然我在 auth.php 文件中更改了 AD 模型,但我只能通过命令行测试连接和导入用户 - 但我无法登录具有任何凭据的应用程序。有什么想法我应该检查/编辑以使其工作方式与测试服务器中的 OpenLDAP 设置相同?

标签: php laravel laravel-5 active-directory ldap


【解决方案1】:

问题已解决,要使其与 AD 一起使用,您需要:

  • 在 auth.php 文件中将模型切换到 ActiveDirectory
  • 在登录控制器中更改凭据功能必须将 'uid' 键更改为 'sameaccountname'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多