Twiggy介绍
# Twiggy介绍
Twiggy是在spring-boot-web之上,为Controller层方法提供权限控制的一套基础框架。
Twiggy同时支持功能权限和数据权限,并且支持多种业务模型。
Twiggy的开发起源于我工作中对现有权限控制的方案的不满足。Twiggy的目标是规范编码,简化开发,提高效率!
在开发Twiggy之前,我曾为我的BLZO脚手架开发了后台权限管理blzo-ex-authj Twiggy中有它的影子 并且青出于蓝。
# 权限模型
Twiggy的权限模型参考了传统的RBAC权限模型并实现了:
- 角色、角色等级
- 鉴权表达式(包含简单的比较和逻辑运算)
- 权限传递
# 特性
- 使用注解,无需额外配置: 对需要被鉴权的接口加上一行注解即可将其标记为权限实体,可在注解中设置其鉴权规则
- 支持功能权限和数据权限: 轻松实现功能、资源混合鉴权!
- 应用范围广: 用户业务系统、云服务用户后台、运营管理后台、只要涉及到权限管理,都可以使用Twiggy
- 强大的权限模型兼容性: 基于角色模型进行权限控制(比如用户、商家、管理员,不同角色权限不同)、基于等级进行权限控制(比如某系产品提供:免费版、标准版、旗舰版,不同等级权限不同)...
- 给予用户最大的自由: 支持多用户权限管理、子用户权限管理、提供灵活且简单的授权方式 在用户有权的范围内给予其最大的自由
- 支持多用户自由授权: 场景举例 - 我是运营小组长,我可以把自己拥有的权限授权给我的下属而无需由超级管理员操作
- 完美支持各种架构各种规模的项目: 可做为jar包集成进项目 也可作为独立服务或集群部署(todo),实现授权中心
- (几乎)无侵入: 只与用户绑定,无需改变业务数据结构
- (几乎)无需额外配置: 开发的同时即完成权限配置 没有额外的权限配置文件
上次更新: 2020/06/11, 18:06:00
它能做什么 →