asp.net - Identityserver4 访问级别 实践
问题描述
我们正在寻找 3 种不同的访问级别,但不知道如何使用当前的identityserver4功能来实现它们。有这些场景:
- 我们有一个上层管理系统,一些客户可以访问特定页面或不可以访问特定页面,例如管理员或客户端(看起来像角色)
- 我们有列类型访问级别,例如,经理角色中的某些用户可以看到特定的列/字段,或者相同角色中的某些用户不应该在报告中看到某些列/行数据。
- 我们有一个记录级别,访问级别,例如,一些经理不应该看到其他分支客户列表。(如政策)
整个过程应该是动态的,没有任何硬代码。为了完成这些结构,我们应该在后端(中间件等)和前端(使用剃须刀等)上做一些代码。
任何想法如何使用 identityserver4 授权类型来实现这些?
解决方案
IdentityServer 的主要功能是处理用户的身份验证和全局授权:哪个客户端可以访问什么资源。
其他一切都可以被认为超出了 IdentityServer 的范围。请阅读本文了解一些背景信息。
作为答案,他们创建了PolicyServer。
在 OSS 版本授权已经成为一个单独的(本地)机制,而付费版本将授权外包给一个单独的服务器。
通过基于资源的授权扩展,您可以实现涵盖所有访问级别的授权。
推荐阅读
- google-classroom - 如何在 Google Classroom API 中访问课程资料?
- sql - BigQuery 查询结果的列数可变?
- javascript - 手板球游戏 - Javascript
- google-analytics - 自定义用户属性何时作为 Google Analytics(分析)中用户的维度持续存在?
- html - 截断多个单行文本元素
- reactjs - 错误运行构建 nextjs CI False
- python - 如果 dict().fromkeys() 都指向同一个对象,那么默认值参数的作用是什么?
- python - 改变ndarray的大小/长度?
- c# - 尝试将 Agora IO 与 Unity WebGL 集成。构建演示场景时出错
- rust - 在 trait 中定义一个方法,返回 Self 的默认实现