2012-09-17 85 views
2

我已成立了春季安全工作正常,但在我的控制器,我不希望有一個securityContextHolderAwareRequestWrapper包裹起來的要求之一......如何從彈簧安全中排除控制器?

我怎樣才能排除春季安全控制器?

我已經嘗試添加以下內容:

<security:intercept-url pattern="/nonsecureMenu**" filters="none" /> 

,但它仍然無法正常工作?

+0

你的控制器的源代碼是怎麼樣的?你使用的是什麼版本的Spring Security? – Xaerxess

+0

即時通訊使用彈簧3,其全部註明。我真正需要做的是訪問來自catalina的request對象,而不是來自spring的包裝 - securityContextHolderAwareRequestWrapper。 – user1555190

+3

? –

回答

7

評論變得太長,所以我在這裏寫下你應該做什麼。

正如@reagten表明,使用這種(以及在路徑的開頭添加/):

<http pattern="/nonsecureMenu**" security="none" /> 

聲明獨立<http>元素只是這條道路,即你有一個以上的<http>元素:

<http pattern="/resources/**" security="none" /> 
<http pattern="/nonsecureMenu**" security="none" /> 
<!-- plus for your actual config, for example: --> 
<http auto-config='true'> 
    <intercept-url pattern="/**" access="ROLE_USER" /> 
    <form-login login-page='/login'/> 
</http> 
+0

優秀,@reagten - 不知道你可以添加多個http元素。感謝這兩個。歡呼:) – user1555190