0
我想了解一下如何鑑別屬於不同基地LDAP目錄LDAP SPRING:如何驗證屬於不同的基礎用戶
我的文件配置的用戶是:
<!-- LDAP -->
<security:ldap-server url="ldap://192.168.10.220:389/o=org" manager-dn="uid=admin,ou=Admins,o=org" manager-password="password" />
<bean id="ldapAuthProvider" class="org.springframework.security.ldap.authentication.LdapAuthenticationProvider">
<constructor-arg>
<bean class="org.springframework.security.ldap.authentication.BindAuthenticator">
<constructor-arg ref="contextSource" />
<property name="userDnPatterns">
<list>
<value>uid={0}</value>
</list>
</property>
</bean>
</constructor-arg>
<constructor-arg>
<bean class="edu.mit.kit.userdetails.MappedLdapAuthoritiesPopulator">
<property name="admins">
<set>
<value>user1</value>
</set>
</property>
</bean>
</constructor-arg>
</bean>
<bean id="contextSource" class="org.springframework.ldap.core.support.LdapContextSource">
<property name="url" value="ldap://192.168.10.220:389" />
<property name="base" value="ou=comp,ou=Users,o=org" />
<property name="userDn" value="admin1,ou=Admins,o=org" />
<property name="password" value="password" />
</bean>
<bean id="ldapTemplate" class="org.springframework.ldap.core.LdapTemplate">
<constructor-arg name="contextSource" ref="contextSource" />
</bean>
我的LDAP方案根是:o = org,每個用戶都有不同的「ou」。
作爲3個用戶的例子:
- USER1:UID =用戶1,OU =用戶,o =組織
- USER2:UID =用戶2,OU =排版,OU =用戶,o =組織
- 用戶3:UID =用戶3,OU = fi_Users,o =組織
所以,我找的,我可以不把所有的LDAP方案在此XML文件配置驗證這些用戶的方式。
使用StartTLS不會以clearText發送密碼。 – jwilleke
非常感謝您的解決方案! – isedrof
@jwilleke StartTLS本身不是,但StartTLS操作是通過普通端口啓動的,因此您不必強制在安全通道中發送密碼,而只需在普通端口上使用LDAP綁定操作,然後以明文形式傳輸密碼電線。 可以配置LDAP服務器以拒絕此操作,但這不會有幫助,因爲密碼已被傳輸。 - >只有在擔心安全性時才使用LDAPS。 –