在 Liferay 的 LDAP 身份验证设置中使用时,b/n memberOf 属性和 groupMembership 属性有什么区别?
用户导入成功。这些组也已成功导入。
但是用户不会自动分配到组中。当我将组变量从“groupMembership”更改为“memberOf”时,一些用户无法登录 Liferay。
memberOf 和 groupMembership 变量到底是什么?
在 Liferay 的 LDAP 身份验证设置中使用时,b/n memberOf 属性和 groupMembership 属性有什么区别?
用户导入成功。这些组也已成功导入。
但是用户不会自动分配到组中。当我将组变量从“groupMembership”更改为“memberOf”时,一些用户无法登录 Liferay。
memberOf 和 groupMembership 变量到底是什么?
memberOf
不是“变量”,它是一个属性,或者更准确地说,它是一个虚拟属性,或者是一些目录服务器动态生成的动态属性,但不是全部。有些用于memberOf
搜索过滤器或搜索请求的属性列表,有些isMemberOf
用于相同目的,有些支持两者或都不支持,可能还有其他我不知道的习语。
一般来说,要确定组成员,向目录服务器发出搜索请求,并在属性列表中指定memberOf
或isMemberOf
返回。这是使用现代ldapsearch
命令行工具的示例:
ldapsearch --port 1389 --baseDn 'ou=people,dc=example,dc=com' \
--sizeLimit 3 --searchScope one --bindDn 'cn=directory manager' \
--bindPasswordFile ~/.pwdFile '(uid=user.0)' isMemberOf
dn: uid=user.0,ou=people,dc=example,dc=com
isMemberOf: cn=Dynamic Home Directories,ou=groups,dc=example,dc=com
isMemberOf: cn=bellevue,ou=groups,dc=example,dc=com
isMemberOf: cn=shadow entries,ou=groups,dc=example,dc=com
isMemberOf: cn=persons,ou=groups,dc=example,dc=com
此搜索响应表明它user.0
是所列组的成员。
要反转查询的含义,即确定哪些条目是组的成员,请在搜索请求中使用的过滤器中使用isMemberOf
ormemberOf
和断言:
ldapsearch --port 1389 --baseDn 'ou=people,dc=example,dc=com' \
--sizeLimit 3 --searchScope one --bindDn 'cn=directory manager' \
--bindPasswordFile ~/.pwdFile \
'(isMemberOf=cn=persons,ou=groups,dc=example,dc=com)' 1.1
dn: uid=terrygardner,ou=people,dc=example,dc=com
dn: uid=user.0,ou=people,dc=example,dc=com
dn: uid=user.1,ou=People,dc=example,dc=com
dn: uid=user.10,ou=People,dc=example,dc=com
此搜索响应表明该组中有几个成员的专有名称为cn=persons,ou=groups,dc=example,dc=com
。
虽然不是针对LifeRay的,但以上是处理组成员身份的一种方法的一般解释,以及从 LDAP 角度来看反向组成员身份的一般解释。