クラス NestedLdapAuthoritiesPopulator

java.lang.ObjectSE
org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator
org.springframework.security.ldap.userdetails.NestedLdapAuthoritiesPopulator
実装済みのインターフェース一覧:
LdapAuthoritiesPopulator

public class NestedLdapAuthoritiesPopulator extends DefaultLdapAuthoritiesPopulator
静的にネストされたグループを再帰的に検索できる LDAP 権限ポピュレーター。

ネストされたグループの例

 #Nested groups data

 dn: uid=javadude,ou=people,dc=springframework,dc=org
 objectclass: top
 objectclass: person
 objectclass: organizationalPerson
 objectclass: inetOrgPerson
 cn: Java Dude
 sn: Dude
 uid: javadude
 userPassword: javadudespassword

 dn: uid=groovydude,ou=people,dc=springframework,dc=org
 objectclass: top
 objectclass: person
 objectclass: organizationalPerson
 objectclass: inetOrgPerson
 cn: Groovy Dude
 sn: Dude
 uid: groovydude
 userPassword: groovydudespassword

 dn: uid=closuredude,ou=people,dc=springframework,dc=org
 objectclass: top
 objectclass: person
 objectclass: organizationalPerson
 objectclass: inetOrgPerson
 cn: Closure Dude
 sn: Dude
 uid: closuredude
 userPassword: closuredudespassword

 dn: uid=scaladude,ou=people,dc=springframework,dc=org
 objectclass: top
 objectclass: person
 objectclass: organizationalPerson
 objectclass: inetOrgPerson
 cn: Scala Dude
 sn: Dude
 uid: scaladude
 userPassword: scaladudespassword

 dn: cn=j-developers,ou=jdeveloper,dc=springframework,dc=org
 objectclass: top
 objectclass: groupOfNames
 cn: j-developers
 ou: jdeveloper
 member: cn=java-developers,ou=groups,dc=springframework,dc=org

 dn: cn=java-developers,ou=jdeveloper,dc=springframework,dc=org
 objectclass: top
 objectclass: groupOfNames
 cn: java-developers
 ou: jdeveloper
 member: cn=groovy-developers,ou=groups,dc=springframework,dc=org
 member: cn=scala-developers,ou=groups,dc=springframework,dc=org
 member: uid=javadude,ou=people,dc=springframework,dc=org

 dn: cn=groovy-developers,ou=jdeveloper,dc=springframework,dc=org
 objectclass: top
 objectclass: groupOfNames
 cn: java-developers
 ou: jdeveloper
 member: cn=closure-developers,ou=groups,dc=springframework,dc=org
 member: uid=groovydude,ou=people,dc=springframework,dc=org

 dn: cn=closure-developers,ou=jdeveloper,dc=springframework,dc=org
 objectclass: top
 objectclass: groupOfNames
 cn: java-developers
 ou: jdeveloper
 member: uid=closuredude,ou=people,dc=springframework,dc=org

 dn: cn=scala-developers,ou=jdeveloper,dc=springframework,dc=org
 objectclass: top
 objectclass: groupOfNames
 cn: java-developers
 ou: jdeveloper
 member: uid=scaladude,ou=people,dc=springframework,dc=org *
  • コンストラクターの詳細

    • NestedLdapAuthoritiesPopulator

      public NestedLdapAuthoritiesPopulator(org.springframework.ldap.core.ContextSource contextSource, StringSE groupSearchBase)
      グループ検索シナリオのコンストラクター。userRoleAttributes は引き続きプロパティとして設定できます。
      パラメーター:
      contextSource - ユーザーロールの検索に使用されるコンテキストを提供します。
      groupSearchBase - これが空の文字列の場合、検索はルートの DN から実行されます
  • 方法の詳細

    • getGroupMembershipRoles

      public SetSE<GrantedAuthority> getGroupMembershipRoles(StringSE userDn, StringSE username)
      オーバーライド:
      クラス DefaultLdapAuthoritiesPopulatorgetGroupMembershipRoles 
    • setAttributeNames

      public void setAttributeNames(SetSE<StringSE> attributeNames)
      LDAP グループごとに取得する属性名を設定します。null はすべてを取得することを意味します
      パラメーター:
      attributeNames - - 取得する LDAP 属性の名前
    • setMaxSearchDepth

      public void setMaxSearchDepth(int maxSearchDepth)
      ネストされた検索をどこまで行うべきか。深さは、親グループを検索するレベルの数で計算されます。
      パラメーター:
      maxSearchDepth - 最大検索深度