authentication - 如何在 RestFul 应用程序中使用 OAuth 2 在前端处理用户权限?
问题描述
假设我们有一个基于 restFul 和 OAuth2 实现的应用程序,当然我们已经将用户的角色和权限存储在由 Java 和 Spring Boot 实现的后端。所以我想知道我们如何在前端处理用户的权限。实际上,应该向具有特定权限或角色的用户显示某些字段或列,但其他用户可以看到有限的字段或列。
对于这种情况,最有效和最明智的解决方案是什么?
- 前端是否应该从后端获取可用字段或列?
- 前端是否应该拥有有关用户凭据的所有信息来决定?
- 或者有什么解决办法吗?
解决方案
这是最常见的解决方案,其中所有安全性都由 API 强制执行:
- API 响应省略了用户无权访问的字段/列
- UI 可以询问 API 用户有权访问哪些字段/列
- UI 隐藏基于此 API 元数据的元素
通常有这样的端点,UI 可以向其发送访问令牌以获取上述元数据:
- 获取 /api/userclaims/当前
推荐阅读
- r - 如何使用带有连接线和子集的 ggplot 绘制“之前和之后”的度量?
- c# - Is it possible to use async methods inside Acumatica's PXLongOperation?
- c++ - 将类型化数组写入子进程标准输入无法正常工作
- c# - 带参数的 Angular 调用 API 控制器
- reactjs - 如何设计 redux-saga 和 socket-io 动作?
- android - Meteor run android-device:请求的资源上不存在“Access-Control-Allow-Origin”标头
- jquery - jQuery mapael 动态绘图
- mysql - 光标在过程中被中断 - MySQL
- node.js - Elastic Beanstalk - 访问 web 应用程序时出现 502 错误,找不到 package.json
- iis - 如何拒绝在 Windows 2012 R2 上运行的 IIS 中的 http get 请求?