0
我有一個連接到LDAP服務器的Web應用程序,一切正常,直到現在在LDAP中創建一個新的分支和處理url我得到「錯誤302臨時移動」。我從來沒有像這樣,我有一個.properties中的LDAP服務器的配置。LDAP春天安全登錄處理url 302錯誤
奇怪的是,我的配置工作得很好,但現在你創建了一個新的分支進行測試,我得到了這個錯誤。
鼻子,這將是什麼使這種情況發生,如果我能幫助。
這些是我的文件。
利用這種配置工作
#Properties LDAP Server
ldap.context.initialContextFactory = com.sun.jndi.ldap.LdapCtxFactory
ldap.context.providerUrl = ldap://192.168.0.31:389/dc=store,dc=web,dc=ap
ldap.context.securityAuthentication = simple
ldap.context.securityPrincipal = cn=admin,dc=web,dc=ap
ldap.context.securityCredentials = adm5569
有了這個配置我發送HTTP錯誤302暫時移動
#Properties LDAP Server
ldap.context.initialContextFactory = com.sun.jndi.ldap.LdapCtxFactory
ldap.context.providerUrl = ldap://192.168.0.31:389/dc=store2,dc=web,dc=ap
ldap.context.securityAuthentication = simple
ldap.context.securityPrincipal = cn=admin,dc=web,dc=ap
ldap.context.securityCredentials = adm5569
這是我的security.xml文件
<beans:beans xmlns="http://www.springframework.org/schema/security"
xmlns:beans="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/security
http://www.springframework.org/schema/security/spring-security-3.1.xsd">
<http pattern="/webapp/ViewChangePassword" security="none" />
<http pattern="/webapp/LogonForm" security="none" />
<http auto-config="true">
<intercept-url pattern="/webapp/Home" access="ROLE_USER" />
<intercept-url pattern="/webapp/ListStore" access="IS_AUTHENTICATED_ANONYMOUSLY, ROLE_USER" />
<intercept-url pattern="/webapp/CheckStoreJson" access="IS_AUTHENTICATED_ANONYMOUSLY, ROLE_USER" />
<intercept-url pattern="/webapp/ViewChangePassword" access="IS_AUTHENTICATED_ANONYMOUSLY, ROLE_USER" />
<intercept-url pattern="/webapp/ChangePassword" access="IS_AUTHENTICATED_ANONYMOUSLY, ROLE_USER" />
<intercept-url pattern="/webapp/**" access="ROLE_USER" />
<form-login login-page="/webapp/LogonForm" default-target-url="/webapp/Home" authentication-failure-url="/webapp/LogonForm?code=1" login-processing-url="/webapp/LogOn" />
<logout logout-url="/webapp/LogOut" logout-success-url="/webapp/LogonForm?code=2" />
</http>
<authentication-manager>
<authentication-provider ref="ldapAuthProvider"/>
</authentication-manager>
<ldap-server id="ldapServer" url="ldap://${ldap.server.ip}:${ldap.server.port}/${ldap.server.root}"/>
<beans:bean class="org.springframework.security.ldap.authentication.BindAuthenticator" id="ldapBindAuthenticator" >
<beans:constructor-arg ref="ldapServer"/>
<beans:property name="userSearch" ref="userSearch"/>
</beans:bean>
<beans:bean id="userSearch" class="org.springframework.security.ldap.search.FilterBasedLdapUserSearch" >
<beans:constructor-arg index="0" value="ou=usuarios"/>
<beans:constructor-arg index="1" value="(uid={0})"/>
<beans:constructor-arg index="2" ref="ldapServer" />
</beans:bean>
<beans:bean class="org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator" id="ldapAuthoritiesPopulator" >
<beans:constructor-arg ref="ldapServer"/>
<beans:constructor-arg value="${ldap.springrole.rdn}"/>
<beans:property name="groupRoleAttribute" value="${ldap.springrole.attribute}"/>
<beans:property name="rolePrefix" value="${ldap.springrole.prefix}"/>
<beans:property name="groupSearchFilter" value="(objectClass=organizationalRole)"/>
<beans:property name="searchSubtree" value="true" />
</beans:bean>
<beans:bean id="ldapAuthProvider" class="org.springframework.security.ldap.authentication.LdapAuthenticationProvider" >
<beans:constructor-arg ref="ldapBindAuthenticator"/>
<beans:constructor-arg ref="ldapAuthoritiesPopulator"/>
<beans:property name="userDetailsContextMapper" ref="ldapUserDetailsContextMapper"/>
</beans:bean>
<beans:bean id="ldapTemplate" class="org.springframework.ldap.core.LdapTemplate">
<beans:constructor-arg ref="ldapServer"/>
</beans:bean>
<beans:bean class="cl.bbr.security.UserLdapMapper" id="ldapUserDetailsContextMapper">
<beans:property name="template" ref="ldapTemplate"/>
</beans:bean>
</beans:beans>
EDIT(1 )29-10-2014
302臨時移動出現在調試控制檯谷歌瀏覽器的錯誤,試圖通過登錄來登錄,我重定向到登錄錯誤頁面和調試控制檯谷歌我圖的URL來處理身份驗證與安全臨時移動。
請幫忙。
什麼你的意思做「我得到‘錯誤302臨時移動’ ?你在哪裏看到它?是否有與之相關的堆棧跟蹤或調試日誌輸出?你什麼時候得到它 - 例如你在做什麼請求?是否有你被重定向到的URL?你是說認證失敗還是別的東西嗎?請編輯您的問題,包括這些信息。我猜你的認證只是失敗,所以你將被重定向到登錄錯誤的URL。 – 2014-10-29 17:52:24
感謝我在後添加評論的答覆。 謝謝 – 2014-10-29 18:06:46
啓用調試日誌記錄並查看服務器日誌內容是實際問題發生的地方。只需查看瀏覽器控制檯,就無法瞭解服務器錯誤。一個302響應代碼只是一個重定向,所以幾乎可以肯定你的身份驗證失敗了,因爲LDAP的變化,你只是被髮回到登錄頁面。 – 2014-10-29 20:46:05