【问题标题】:Fetch group of LDAP in liferay在 liferay 中获取 LDAP 组
【发布时间】:2013-01-02 01:48:26
【问题描述】:

我需要做一个 Liferay-hook,当用户登录时,检查组的 LDAP。

如果组是“用户”,则什么也不做,但如果没有任何 LDAP 组,我需要重定向到 Liferay 门户内的其他页面。

我知道如何进行重定向,但我的问题是:如何知道用户的 LDAP 组?

实际上我只在 liferay LDAP 配置中导入 users 组,如下所示:

(&(uid=@screen_name@)(memberof=cn=usersr,ou=groups,o=users.com))

有什么想法吗?
谢谢

【问题讨论】:

  • 通常,LDAP 组与 Liferay 用户组同步,因此您可以使用 Liferay API 来检查用户的用户组。是否有任何理由专门扫描 LDAP 组?

标签: ldap liferay liferay-6 ldapconnection


【解决方案1】:

您将遇到的问题是 LDAP 目录在存储用户组成员身份方面有些不一致。

eDirectory 存储用户的组成员身份(LDAP 中的 groupMembership)。 更高版本(我认为是 2008 年)中的 Active Directory 将 memberOf 存储在用户上,有点。 AD中不作为静态值存储,但可以读取并计算。

通常,LDAP 方法是查询:

(&(objectClass=group)(member=cn=MyUser,ou=MyOu,dc=com))

也就是说,去找我所有的组,这个用户是他们的成员,然后检查你的控制组是否被返回。这不是很有效。但会起作用。

【讨论】:

    猜你喜欢
    • 2011-11-10
    • 2014-06-21
    • 2012-05-19
    • 2017-10-09
    • 2012-06-01
    • 2012-08-17
    • 2018-12-22
    • 2012-08-12
    • 1970-01-01
    相关资源
    最近更新 更多