memberOf与LDAP中的groupMembership(Liferay)

Ash*_*lix 7 ldap ldapconnection liferay ldap-query liferay-6

在Liferay的LDAP身份验证设置中使用时,b/n memberOf属性和groupMembership属性有何区别?

用户已成功导入.这些组也成功导入.

但是用户不会自动分配到组.当我将组变量从'groupMembership'更改为'memberOf'时,多个用户无法登录Liferay.

memberOf和groupMembership变量究竟是什么?

LDAP Liferay设置

Ter*_*ner 18

memberOf它不是一个"变量",它是一个属性,或者更准确地说,它是一个虚拟属性,或某些目录服务器即时生成的动态属性,但不是全部.有些用于memberOf搜索过滤器或搜索请求的属性列表,有些isMemberOf用于同一目的,有些支持两者或两者都不支持,并且可能还有其他我不知道的习语.

一般而言,要确定组成员身份,请向目录服务器发出搜索请求,并在属性列表中指定memberOfisMemberOf返回.以下是使用现代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
Run Code Online (Sandbox Code Playgroud)

此搜索响应表明它user.0是列出的组的成员.

要反转查询的意义,即确定哪些条目是组的成员,请在搜索请求中使用的过滤器中使用isMemberOfmemberOf使用断言:

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
Run Code Online (Sandbox Code Playgroud)

此搜索响应表示该组的多个成员的专有名称是cn=persons,ou=groups,dc=example,dc=com.

虽然不是特定于LifeRay,但以上是从LDAP角度处理组成员身份以及反向组成员身份的一种方式的一般说明.