2012-10-26 15 views
0

我正在研究一種內容管理類型的Web應用程序,它使用Spring安全性(版本3.0.5)進行身份驗證和標準RBAC來粗略定義用戶組。動態創建角色與彈簧廠商

其中一個應用程序的功能將是使某些角色(例如,管理員)用戶配置單個用戶的權限(或個人用戶組)訪問的內容具體項目,也控制了操作他們可以在該內容上執行(例如,讀取/寫入/刪除,還可以導出,打印,共享,授予權限等)。此外,這些管理員用戶將定義封裝常用權限集的角色。所以看來我需要訪問控制列表。

但是閱讀Spring ACL文檔,對於我來說,是否支持這種對最終用戶在運行時的角色/用戶的動態定義的支持有點不清楚;在我看來,Spring的主要「開箱即用」用例使用了在應用程序本身中聲明的靜態定義。

如果可能的話,我想使用Spring ACL - 顯得最有吸引力的好處是a)高性能的位掩碼操作,b)在包裝代理之外保持權限查找,c)標準技術;但是如果爲了適應我們的用例需要重新實現大多數Spring安全接口,那麼我們可能會推出我們自己的。

所以我想問問,如果有人在這種用例中成功地使用了Spring ACL?是否建議或不鼓勵在運行時以編程方式動態修改Spring ACL表,因爲用戶更改了角色和權限?

感謝

理查德

回答

0

使用本: -

<intercept-url pattern="/admin*" **access="hasRole('SYS_ADMIN')"** /> 
+0

是的,這將使普通角色但沒有具體的資源,細粒度訪問。有一個教程,我遇到[這裏](http://blog.denksoft.com/?page_id=20),很好地解釋瞭如何更新ACL表,這回答了我的第二個問題 – otter606