如何设计抽象的权限体系?超脱user-role模型

通常我们看到的权限体系都是 用户-角色 模式,这样太局限了,如果还有其他权限控制需求了,比如微服务之间是否有权限访问,因此,设计一种【抽象】的权限控制体系才能因对各种业务需求,这里我们就定义一种重新的权限体系,具体请查看数据库设计中关于权限体系的设计

术语

permission

一个比较好的理解方式:一个subject(比如user)对于target(比如文件)有某些action(比如read)权限

subject

A subject may be any entity, such as a person or a service

target

permission 作用的对象,比如用户对文件拥有read权限,在这里文件就是作用对象

action

对于文件来说,有read,write等action

subject group

当subject是用户时,subject group 可能就是role

ER


参考

Oracle Java JAAS

Github Java中台项目

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。