如何使用 Picketlink[ 1 ] 对权限进行分组,以便我可以将一个或多个特定的权限组分配给角色?
提前致谢。
问之前有没有看官方文档?如果是,向我们展示您的努力将使我们更容易为您提供帮助。如果没有,请看一下这个。
我问你这个是有原因的:我认为你误解了Group、Role和Permission的概念。
组用于管理身份类型的集合。例如,Alice 和 Bob 可能是属于“员工”组的用户身份。
角色用于各种关系类型,以将权限指定给另一种身份类型以在应用程序中执行各种操作。例如,Trent 可以是具有“主持人”角色的用户身份。
可以将权限分配给用户、组和角色。您可以选择在应用程序中管理权限的方式。
访问控制可以基于群组(“只有员工可以使用这种方法”)、角色(“只有版主才能删除帖子”)甚至用户(“我是这里唯一可以吃培根的人!”)。这可以通过使用Permission API 来完成,如上面链接的文档中所述。
相信我,我知道一开始可能不是那么简单——但请努力;然后随时问任何问题:)
让我们知道!
正如您所说,PicketLink 的 Permission API 一次只允许您分配一个权限。无论如何,请注意,即使您必须一次授予一个权限,这并不意味着您不能向实例授予多个权限:
permissionManager.grantPermission(adminRole, resource, myPermissions.CREATE)
permissionManager.grantPermission(adminRole, resource, myPermissions.DELETE)
permissionManager.grantPermission(adminRole, resource, myPermissions.UPDATE)
授予每个具有adminRole并需要调用资源的用户 3 个权限。