我有一個簡單的Web應用程序我測試了。它有兩個層次,即管理員和普通用戶。該項目還有三個實體。我試圖實現的是用戶無法刪除第一個實體中的任何條目的實例,儘管他可以創建它。Spring Roo的權限級別
我相信使用@RequestMapping被方式來實現這一點,但不能完全確定如何執行,如果沒有,還有什麼其他的方法有哪些?一段代碼將不勝感激。
在此先感謝。
我有一個簡單的Web應用程序我測試了。它有兩個層次,即管理員和普通用戶。該項目還有三個實體。我試圖實現的是用戶無法刪除第一個實體中的任何條目的實例,儘管他可以創建它。Spring Roo的權限級別
我相信使用@RequestMapping被方式來實現這一點,但不能完全確定如何執行,如果沒有,還有什麼其他的方法有哪些?一段代碼將不勝感激。
在此先感謝。
可以隱藏的刪除按鈕上的觀點jspx
文件,如果你只阻止通過用戶界面訪問,然後禁止通過調用你的控制器的刪除方法。您還可以使用其他方法來限制用戶執行某些操作。
1.用戶界面
但是,你需要在你的控制器進行手動檢查,以確保未經授權的用戶不執行刪除操作。
藤本,首先需要Spring Security的JSP標籤庫命名空間導入到jspx
文件。
xmlns:sec="http://www.springframework.org/security/tags"
然後使用剛纔導入的Spring安全標籤來包圍需要在用戶級別顯示的元素。
舉一個例子:
<sec:authorize access="hasRole('ROLE_ADMIN')">
<p>User is an administrator</p>
<!-- Delete button goes here -->
</sec:authorize>
有關標籤庫的更多信息,請訪問:http://static.springsource.org/spring-security/site/docs/3.0.x/reference/taglibs.html
2.控制器
您可以攔截的URL,禁止用戶誰不已在ROLE_ADMIN
加入您的applicationContext-security.xml
<intercept-url pattern="/countries/**" access="hasRole('ROLE_ADMIN')" method="DELETE"/>
如果它不爲你工作,試圖通過下面的鏈接去。
有關春季安全訪問http://static.springsource.org/spring-security/site/petclinic-tutorial.html
乾杯一個有趣的教程。