如何在 RestFul 应用程序中使用 OAuth 2 在前端处理用户权限?

How to handle user permissions in front-end with OAuth 2 in RestFul applications?

假设我们有一个基于 restFul 和 OAuth2 实现的应用程序,当然我们在后端存储了用户的角​​色和权限,由 [=23= 实现] 和 spring 引导。所以我想知道我们如何在前端处理用户的权限。事实上,有些字段或列应该显示给具有特定权限或角色的用户,但其他用户只能看到有限的字段或列。

对于这种情况,最有效、最明智的解决方案是什么?

这是最常见的解决方案,其中所有安全性都由 API:

  • API 响应省略了用户无权访问的字段/列
  • UI 可以询问 API 用户有权访问哪些字段/列
  • UI 隐藏基于此 API 元数据的元素

像这样的端点很常见,UI 可以向其发送访问令牌以获取上述元数据:

  • 获取/api/userclaims/current