LDAPに対して認証し、データベースに対して認証されたユーザーに権限を設定するSpring Securityプロジェクトを作成できますか?
ありがとう!
LDAPに対して認証し、データベースに対して認証されたユーザーに権限を設定するSpring Securityプロジェクトを作成できますか?
ありがとう!
私はこれに対する解決策を達成しました。答えは上にあります:
<authentication-manager >
<authentication-provider ref="ldapAuthProvider" />
</authentication-manager>
<beans:bean id="contextSource"
class="org.springframework.security.ldap.DefaultSpringSecurityContextSource">
<beans:constructor-arg value="ldap://IP:port/...."/>
</beans:bean>
<beans:bean id="ldapAuthProvider"
class="org.springframework.security.ldap.authentication.LdapAuthenticationProvider">
<beans:constructor-arg>
<beans:bean class="org.springframework.security.ldap.authentication.BindAuthenticator">
<beans:constructor-arg ref="contextSource"/>
<beans:property name="userSearch" ref="ldapUserSearch" />
</beans:bean>
</beans:constructor-arg>
<beans:constructor-arg>
<beans:bean
class="prpa.athos.security.listener.MyLDAPAuthorities">
</beans:bean>
</beans:constructor-arg>
</beans:bean>
<beans:bean id="authenticationSuccessListener"
class="prpa.athos.security.listener.AuthenticationSuccessListener">
</beans:bean>
<beans:bean id="ldapUserSearch"
class="org.springframework.security.ldap.search.FilterBasedLdapUserSearch">
<beans:constructor-arg index="0" value=""/>
<beans:constructor-arg index="1" value="(uid={0})"/>
<beans:constructor-arg index="2" ref="contextSource" />
</beans:bean>
クラス MyLDAPAuthorities で、データベースから権限を取得するクラス LdapAuthoritiesPopulator を実装します。
LdapBindAuthenticator
はい、と DAO ベースのが必要ですAuthoritiesPopulator
。