我需要做一个Liferay-hook,当用户登录时,签入组的LDAP。
如果组是"users“,则不做任何特殊操作,但如果没有任何LDAP组,则需要重定向到Liferay门户中的其他页面。
我知道如何执行重定向,但我的问题是:我如何知道用户的LDAP组?
实际上,我只在liferay配置中导入了用户组,如下所示:
(&(uid=@screen_name@)(memberof=cn=usersr,ou=groups,o=users.com))有什么想法吗?
谢谢
发布于 2013-01-22 10:56:03
您将遇到的问题是,LDAP目录在存储用户的组成员身份方面有些不一致。
eDirectory将组成员身份存储在用户上(LDAP中的groupMembership)。在更高版本(我认为是2008)中,Active Directory在某种程度上将memberOf存储在用户上。它不会作为静态值存储在AD中,但可以读取并进行计算。
通常,LDAP方法是查询以下内容:
(&(objectClass=group)(member=cn=MyUser,ou=MyOu,dc=com))也就是说,查找此用户所属的所有组,然后检查是否返回了您的控制组。这并不是很有效。但也能行得通。
https://stackoverflow.com/questions/14397431
复制相似问题