如何在单页面应用程序中处理复杂的授权规则?

时间:2016-06-03 19:46:24

标签: angularjs rest yii2 authorization role-based-access-control

我已经阅读了几篇关于rest api +单页面应用程序中的授权处理的文章。 他们主要建议如下: 初始化前端应用程序时,检索用户角色并检查客户端角色并根据它应用逻辑,根据角色显示/隐藏特定控件等。

但我没有找到任何关于更复杂的授权逻辑的文章。

例如:有基于角色的访问控制的休息api(我使用Yii2 rbac)。 有前端应用程序(我使用角度)。在此应用中,列出了帖子列表。 因此,基于用户角色,"编辑"对于此列表中的每个帖子,按钮应该可见/隐藏。

有角色:

  • 管理

  • 用户登录用户

  • 旅客

问题是,"编辑"拥有"用户"的用户的权限角色取决于上下文(业务规则) - 如果用户是帖子的作者,他允许编辑帖子,在其他地方禁止。

那么在应用程序前端部分处理此类授权的最佳做法是什么?

当用户执行对休息端点的调用时,为每个实体的操作提供操作权限?

0 个答案:

没有答案