嵌入式LDAP服务器的URL是什么

时间:2013-06-03 13:30:35

标签: spring-security

我需要使用嵌入式服务器

<security:authentication-manager>   
    <security:ldap-authentication-provider  
                user-search-filter="(uid={0})" 
                user-search-base="ou=users"
                group-search-filter="(uniqueMember={0})"
                group-search-base="ou=groups"
                group-role-attribute="cn"
                role-prefix="ROLE_">
    </security:ldap-authentication-provider>
</security:authentication-manager>

<security:ldap-server ldif="classpath:mojo_working.ldif" root="dc=example,dc=com"  />

用于自定义填充程序。

喜欢

<bean id="ldapAuthProvider" class="org.springframework.security.ldap.authentication.LdapAuthenticationProvider">
    <constructor-arg ref="authenticator"/>
    <constructor-arg ref="populator"/>
</bean> 

<bean id="authenticator" class="org.springframework.security.ldap.authentication.BindAuthenticator">
    <constructor-arg ref="contextSource"/>
    <property name="userDnPatterns">
        <list>
            <value>uid={0},ou=users</value>
        </list>
    </property>
</bean>

在这种情况下,什么可以是嵌入式LDAP服务器的contextSource。

1 个答案:

答案 0 :(得分:2)

ldap-server元素会创建ContextSource,因此您无需定义一个<security:ldap-server id="embeddedServer" ... /> <bean id="authenticator" class="org.springframework.security.ldap.authentication.BindAuthenticator"> <constructor-arg ref="embeddedServer"/> ... </bean> 元素。它supports an id attribute,您可以使用它来创建对bean的引用。

port

通常你不需要URL。它还有一个ldap://localhost:33389/dc=example,dc=com元素(默认为33389),您可以设置它。除非您设置了不同的端口,否则该网址将为{{1}}。