2014-11-08 92 views
0

我正在使用picketlink的應用程序,我將不勝感激,如果任何人可以幫助我。Picketlink @RolesAllowed分配給組的角色

該應用程序有許多組(管理員,客戶服務等),並且每個基團可以有許多角色(如創建一個新用戶,創建一個新的僱員,啓動一個工資處理等)

用戶可以被分配到一個或多個組,以及一個組到一個或多個角色。通常我認爲分配給一個組的用戶將繼承該組的所有角色。如果我爲分配給組的用戶使用BasicModel.hasRole,則它將爲分配給該組的所有角色返回true,如預期的那樣。但是,在我的休息端點上使用@RolesAllowed註釋時,它將始終爲同一用戶返回拒絕訪問異常。如果有任何解決方法,任何人都可以建議?我希望@RolesAllowed允許具有允許角色的組中的用戶通過。

或者有沒有其他註釋可以使用?

回答

0

嘗試的其中一個下包org.picketlink.authorization.annotations:

@GroupsAllowed 

定義,其中僅一組的成員被允許調用一個方法的授權約束。

@LoggedIn 

定義授權約束,其中只有經過驗證的用戶纔可以調用方法。

@PartitionsAllowed 

定義一個授權約束,用於檢查經過身份驗證的帳戶是否存儲在分區中。

@RequiresLevel 

定義授權檢查其中僅具有相同或更高級別的用戶然後指定允許調用方法

@RequiresPermission  

定義檢查,如果認證帳戶具有特定權限的授權約束。

@Restrict 

定義對使用統一表達式語言的類型或方法的授權約束。

@RolesAllowed 

定義一個授權約束,用於檢查授權的帳戶是否授予一個或多個角色。

from: http://docs.jboss.org/picketlink/2/latest/api/org/picketlink/authorization/annotations/package-summary.html