authorization - 授权服务设计(应用服务)
问题描述
我正在寻找授权服务的最佳架构,在应用程序服务层,在服务中提供常见的授权检查。
理想情况下,它可能应该是单一服务,授权用户对所有聚合执行操作。诸如浏览列表、阅读/编辑项目、阅读/编辑拥有的项目等。
我正在考虑为每个议程授权适配器的服务,通过存储库上的方法阅读解决方案,但我觉得我正在重新发明轮子。:-)
你有什么想法或好的阅读/资料吗?
解决方案
您正在寻找的是外部化动态授权,也称为基于属性的访问控制 (ABAC)。在 ABAC 中,有一个架构定义了一个通用授权服务,您可以查询该服务以根据策略(通常用alfa编写)和属性(例如用户角色、许可、数据敏感性等)获取授权决策(允许/拒绝)。 ..
NIST,美国国家标准与技术研究所,对 ABAC 有一篇很棒的文章:https ://csrc.nist.gov/publications/detail/sp/800-162/final
推荐阅读
- macos - 如何从 GitHub 安装此小部件?
- javascript - 特定页面中的自定义 Javascript 代码
- kubernetes - Kubernetes Pods 数小时前失败,如何调试已终止的 Pod
- c++ - 无法检索添加到 1k Mifare Classic 标签的 390 个字符的文本记录
- java - PDFBox:区分透明和非透明文本
- php - 如何在ajax中序列化表单并使用laravel将数据保存在数据库中?
- javascript - 如何在 React 根组件之外更改 props?
- flutter - 在flutter中调用api后小部件没有重建
- moodle-mobile - 在moodle移动应用程序中复制课程内容或文件
- excel - 通过 reg 文件添加可信文件 excel