最后摸鱼 3 小时,年前再来宣传下我的开源项目 - 比 shiro,spring security 快的认证鉴权框架

2021-02-09 15:08:35 +08:00
 tomsun28

祝 v 友们新年快乐,年后暴富!!!!!!!!

主页: usthe.com/sureness, 备用网站: su.usthe.com

github: https://github.com/tomsun28/sureness 欢迎 star 弯腰感谢
gitee: https://gitee.com/tomsun28/sureness

背景

在主流的前后端分离架构中,如何通过有效快速的认证鉴权来保护后端提供的restful api变得尤为重要。对现存框架,不原生支持restapache shiro, 还是深度绑定spring,较慢性能,学习曲线陡峭的spring security,或多或少都不是我们的理想型。
于是乎sureness诞生了,我们希望能解决这些,提供一个面向restful api无框架依赖,可以动态修改权限多认证策略更快速度易用易扩展的认证鉴权框架。

介绍

sureness 是我们在深度使用权限框架 apache shiro 之后,吸取其一些优点全新设计开发的一个认证鉴权框架
面向 restful api 的认证鉴权,基于 rbac (用户-角色-资源)主要关注于对 restful api 的安全保护
无特定框架依赖(本质就是过滤器处拦截判断,已有springboot,quarkus,javalin,ktor等集成样例)
支持动态修改权限配置(动态修改配置每个rest api谁有权访问)
支持主流http容器 servletjax-rs
支持多种认证策略, jwt, basic auth, digest auth ... 可扩展自定义支持的认证方式
基于改进的字典匹配树拥有的高性能
良好的扩展接口, 样例和文档

sureness的低配置,易扩展,不耦合其他框架,希望能帮助开发者对自己的项目多场景快速安全的进行保护

框架对比
~ sureness shiro spring security
多框架支持 支持 需改动支持 不支持
restful api 支持 需改动支持 支持
过滤链匹配 优化的字典匹配树 ant 匹配 ant 匹配
注解支持 支持 支持 支持
servlet 支持 支持 支持
jax-rs 支持 不支持 不支持
权限动态修改 支持 需改动支持 需改动支持
性能速度 极快 较快 较慢
学习曲线 简单 简单 陡峭
基准性能测试

基准测试显示 sureness 对比无权限框架应用损耗 0.026ms 性能,shiro 损耗 0.088ms,spring security 损耗 44.813ms, 相比之下 sureness 基本不消耗性能,且性能(参考 TPS 损耗)是 shiro 的 3 倍,spring security 的 1700 倍
性能差距会随着 api 匹配链的增加而进一步拉大
详见基准测试

框架支持样例
875 次点击
所在节点    分享发现
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/752631

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX