【问题标题】:LDAP group has 'member's but the members dont have the 'memberof' attributeLDAP 组具有“成员”,但成员没有“成员”属性
【发布时间】:2015-04-16 09:41:17
【问题描述】:

我是 LDAP (AD) 新手,我想知道如果用户本身没有“memberof”属性(应该链接到我认为的组),我如何检索组的所有用户?

遵循 LDAP 结构

- Users
   - UserA (memberof=Group1)
   - UserB (memberof=Group1,memberof=Group2)
   - UserN ...
 - Groups
   - Group1 (member=UserA,member=UserB)
   - Group2 (member=UserB)
   - GroupX ...
 - AppGroups
   - App1 (member=UserA,member=UserB)
   - AppX ...

如果用户不具有该组的memberof 属性,我如何仅从AppGroups 查询属于App1 组的用户?

我正在尝试通过 Alfresco 实现这一目标。查询组没有问题,但我找不到同步用户的方法(并且只有组的用户App1)?

提前谢谢你!

【问题讨论】:

  • 你确定LDAP服务器实现了memberOf属性吗?并非所有 LDAP 服务器实现都提供 MemberOf 作为属性。
  • @jeemster 是的,因为用户具有 memberOf 属性(在我的结构中看到),并且他们也可以使用条件中的 memberOf 属性来查询/找到。但是他们没有所有组的 memberOf 属性(尤其是我需要的组)!

标签: ldap alfresco ldap-query


【解决方案1】:

您可以形成一个查询,要求服务器检索其memberof 属性包含您的组的专有名称的所有用户,或者,您可以反转逻辑并要求服务器为您提供member 属性团体。组的member 属性包含所有成员的专有名称。然后,您可以通过逐一读取对象来获取有关用户的其他信息。

就性能而言,这要慢得多,但如果用户本身没有memberof 属性,这可能是您唯一的选择。

【讨论】:

  • 好的,这就是我要找的答案。我的下一个挑战是构建查询,但我肯定会与我们的系统管理员交谈,为什么用户的memberOf 属性中缺少该组。谢谢随机公民!
【解决方案2】:

memberOf overlay 支持 'memberOf' 属性,if:

  • 你已经配置好了
  • 您已经修改了此 DN 的成员身份因为您安装了覆盖。它不是追溯性的。

【讨论】:

  • 感谢您提供的信息。但我不是管理 ldap 的系统管理员,所以我对设置不太了解。我只能浏览 ldap 目录并查看我的问题中看到的结构。那么一般是否可以查询用户并检查他们是否是App1组的成员?
  • 仅在我描述的条件下。如果没有这一点,您就没有理由期望 memberOf 属性甚至会存在。
  • 所以我只能在memberOf 叠加层是 1. 安装/配置和 2. 用户有一个 memberOf 属性引用我要检查成员资格的组时检查成员资格?没有其他办法,我将永远无法在我的问题中检查 ldap 结构中 UserA 和组 App1 之间的成员资格?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-09-12
  • 2020-10-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-22
  • 1970-01-01
相关资源
最近更新 更多