Picketlink @RolesAllowed分配给组的角色

问题描述:

我正在使用picketlink的应用程序,我将不胜感激,如果任何人可以帮助我。Picketlink @RolesAllowed分配给组的角色

该应用程序有许多组(管理员,客户服务等),并且每个基团可以有许多角色(如创建一个新用户,创建一个新的雇员,启动一个工资处理等)

用户可以被分配到一个或多个组,以及一个组到一个或多个角色。通常我认为分配给一个组的用户将继承该组的所有角色。如果我为分配给组的用户使用BasicModel.hasRole,则它将为分配给该组的所有角色返回true,如预期的那样。但是,在我的休息端点上使用@RolesAllowed注释时,它将始终为同一用户返回拒绝访问异常。如果有任何解决方法,任何人都可以建议?我希望@RolesAllowed允许具有允许角色的组中的用户通过。

或者有没有其他注释可以使用?

尝试的其中一个下包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