【问题标题】:Retrieving list of sub-OUs within a specific OU using ADLDAP2使用 ADLDAP2 检索特定 OU 中的子 OU 列表
【发布时间】:2015-09-11 09:57:57
【问题描述】:

我正在使用 PHP Adldap2 库 (https://github.com/Adldap2/Adldap2) 开展一个项目,我需要从 Active Directory 中检索特定 OU 中的子 OU 列表。

这就是我尝试过的:

$ad->search()
   ->whereEquals(
       ActiveDirectory::OBJECT_CATEGORY,
       ActiveDirectory::ORGANIZATIONAL_UNIT_LONG
   )
   ->whereEndsWith('dn', 'OU=myou,DC=mycompany,DC=com')
   ->get();

虽然第一个过滤器有效并检索所有 OU,但第二个过滤器无效并返回一个空数组。我还尝试在whereEndsWith 中使用'distinguishedname' 而不是'dn',结果相同。

如何做到这一点?

【问题讨论】:

    标签: php active-directory ldap adldap


    【解决方案1】:

    在做了一些研究和实验后,我想出了这个代码:

    $config = Adldap::getConfiguration();
    $baseDn = new Adldap\Objects\DistinguishedName($config->getBaseDn());
    $departmentsDn = $baseDn->addOu('myou');
    $search = Adldap::search()->setDn($departmentsDn->get());
    $entries = $search->whereEquals(ActiveDirectory::OBJECT_CATEGORY, ActiveDirectory::ORGANIZATIONAL_UNIT_LONG)->get();
    

    我不确定这是否是最好的解决方案,但它确实有效。

    PS:我使用 Laravel adldap 外观,这就是为什么 adldap 调用是静态的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-12-05
      • 2016-01-25
      • 2013-04-28
      • 1970-01-01
      • 1970-01-01
      • 2021-12-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多