2010-10-09 100 views

回答

1

有許多可能的解決方案,但哪一個是最好的(即滿足您的需求沒有被過厚或過於複雜,難以實現)取決於您的要求:

  • 你說的是訪問控制一個網絡服務,還是別的什麼?

  • 您希望實施什麼樣的訪問控制?純粹基於資源URL,還是取決於所請求實體的狀態/元數據?角色是簡單的還是等級的?不同的行動需要不同的角色嗎?

  • 您是否還需要處理授權?

2

我假定你正在試圖回答的問題是:

用戶是否ü訪問做手術的對象Ø

需要考慮的一件事是,您的域對象和用戶組是如何從業務角度(AC機制外)定義的。對於任何RBAC實現,您需要將其配置爲告訴您的用戶和用戶組是什麼。這將影響您對RBAC實施的選擇。

另一個(更具體的)問題:你需要支持覆蓋權限,包括和排除?具體來說,你是否希望能夠支持對象o1可用於用戶組g1的場景,但不支持用戶u1(誰是組g1的一部分)?

根據具體的答案,jguard(這是建立在JAAS)可能是一個非常好的選擇 - http://jguard.net/

0

Fortress是符合ANSI RBAC標準的引擎(INCITS 359),並在BSD開源許可下發布。你可以從這裏拉下來:http://iamfortress.org