我需要进行 Spring Security 身份验证,其中使用密码比较以 LDAP MD5 十六进制编码格式存储密码的用户。对于 LDAP SHA 编码,我可以使用 LDAPShaPasswordEncoder。我应该使用哪个编码器进行 LDAP MD5 编码?
最佳答案
<bean id="ldapAuthenticationProvider"
class="org.springframework.security.ldap.authentication.LdapAuthenticationProvider">
<constructor-arg>
<bean class="org.springframework.security.ldap.authentication.PasswordComparisonAuthenticator">
<constructor-arg ref="contextSource" />
<property name="passwordEncoder">
<bean class="org.springframework.security.authentication.encoding.Md5PasswordEncoder" />
</property>
<property name="userDnPatterns">
<list>
<value>uid={0},ou=people</value>
</list>
</property>
</bean>
</constructor-arg>
<constructor-arg>
<bean
class="org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator">
<constructor-arg ref="contextSource" />
<constructor-arg value="ou=groups" />
<property name="groupSearchFilter" value="(member={0})" />
<property name="rolePrefix" value="ROLE_" />
<property name="searchSubtree" value="true" />
<property name="convertToUpperCase" value="true" />
</bean>
</constructor-arg>
</bean>
关于spring-security - Spring Security 和 LDAP MD5 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13059100/