1

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

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

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

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

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

任何想法?
谢谢

4

1 回答 1

0

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

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

通常,LDAP 方法是查询:

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

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

于 2013-01-22T02:56:02.913 回答