1
我需要使用2層來保護我的網站。首先是LDAP檢查,其次是用戶名/密碼條目。我爲這兩項檢查都編寫了自定義身份驗證過濾器。Spring Security中的累積過濾器3
如果LDAP篩選失敗,用戶應該被重定向到「拒絕訪問」頁面,如果用戶名/密碼失敗,用戶應該被重定向回登錄頁面。
如何在我的config.xml文件中設置這些過濾器?下面是我目前
<sec:http entry-point-ref="loginAuthenticationEntryPoint"
auto-config="false" use-expressions="true">
<sec:intercept-url pattern="/login.htm" access="isAnonymous()" />
<sec:intercept-url pattern="/*"
access="hasRole('ROLE_LDAP') and hasRole('ROLE_CRESTA')" />
<sec:custom-filter ref="ldapAuthenticationFilter"
before="FORM_LOGIN_FILTER" />
<sec:custom-filter ref="usernameAuthenticationFilter"
position="FORM_LOGIN_FILTER" />
</sec:http>
與
public class LdapAuthenticationFilter extends AbstractPreAuthenticatedProcessingFilter
和
public class CrestaUsernameAuthenticationFilter extends AbstractAuthenticationProcessingFilter
我現在的想法是每個過濾器添加所需的角色之一,但是當LDAP過濾器沒有按不會添加這兩個角色,我立即拒絕訪問。
非常感謝
謝謝,這幾乎是我最終做的 – davecass