2014-11-05 76 views
0

我有要求,我們必須顯示同一個頁面(說主頁)爲客人以及認證的用戶。有些頁面僅顯示給經過驗證的用戶。我已經做了以下如何保護在Web應用程序中選定的頁面

JSP

鏈路1個 HREF = 「固定/主頁」>主頁

鏈路2 HREF = 「主頁」>主頁

連桿3 HREF =「secure/adduser」>添加用戶

控制器

@RequestMapping(value = {"/homepage","/secure/homepage"}, method = RequestMethod.GET) 
    public ModelAndView viewHomePage() { 

} 

春季安全

但問題是,每次連接3從顯示的頁面叫做調用鏈接1.我的網址後成爲{}的applicationContext /安全/安全/ adduser的

+0

您可以添加過濾器來過濾掉認證和非認證用戶的頁面請求。 – 2014-11-05 09:11:41

回答

2

您應該使用絕對鏈接來避免URL前綴的累積。

鏈接應該寫成:

<a href="<c:url value="/secure/homepage"/>">Link 1</a> 
+0

謝謝Serge,您可以讓我知道Web應用程序安全的最佳做法,以下是我的要求,幾乎所有人都可以看到頁面,只有根據他們的角色才能看到幾個頁面才能通過身份驗證的用戶。我是否需要爲認證的用戶和未認證的用戶創建單獨的頁面?我正在使用spring mvc和security。 – 2014-11-05 11:32:38

+0

@SumitAgarwal:不確定這些是否是真正的*最佳參賽者*,但目前做的是僅根據角色訪問某些頁面,並且在所有(或不同角色)可訪問的頁面上,在JSP與''標籤級別,或與春季安全專用標籤。 – 2014-11-05 12:53:29