クラス 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 - 最大検索深度