8

LiferayのLDAP認証設定で使用した場合のb/n memberOf属性とgroupMembership属性の違いは何ですか?

ユーザーは正常にインポートされます。グループも正常にインポートされます。

ただし、ユーザーはグループに自動的に割り当てられません。また、グループ変数を「groupMembership」から「memberOf」に変更すると、一部のユーザーがLiferayにログインできなくなります。

memberOfおよびgroupMembership変数とは正確には何ですか?

LDAPLiferay設定

4

1 に答える 1

19

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またはアサーションを使用します。memberOf

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に固有ではありませんが、上記は、グループメンバーシップを処理する1つの方法と、LDAPの観点からの逆グループメンバーシップの一般的な説明です。

于 2011-08-25T13:46:27.737 に答える