查看原文
其他

粉丝开源:比 Spring Security 快 4 倍的认证鉴权框架

老逛 逛逛GitHub 2021-08-19

前几天发布了一个文章:一个喜欢搜罗软件的哥们,给大家推荐了一下自己的哥们儿。发布之后好多人加我微信。

没想到有不少开源爱好者关注了逛逛GitHub,有个朋友给我看了他开源的项目,找我推荐一下,我看了一下挺不错的,便有了今天的文章。

我打算新开一个栏目,专门推荐粉丝们开源的项目,如果自己开源了不错的项目可以找我推荐,前提是足够优质。下面是这位朋友开源项目解决的问题和创建初衷。

他认为在主流的前后端分离架构中,有效快速的认证鉴权来保护后端提供的restful api是非常重要的。

可视现存的框架存在一些问题,比如不原生支持restapache shiro, 深度绑定spring性能较慢等。还有学习曲线陡峭的spring security,或多或少都不是我们的理想型。

于是乎sureness诞生了,我们希望能解决这些,提供一个面向 restful api,无框架依赖,可以动态修改权限,多认证策略,更快速度,易用易扩展的认证鉴权框架。

ONE.

介绍

sureness 是我们在深度使用权限框架 apache shiro 之后, 吸取其一些优点全新设计开发的一个认证鉴权框架。

面向 restful api 的认证鉴权,基于 rbac (用户-角色-资源)主要关注于对 restful api 的安全保护。无特定框架依赖(本质就是过滤器处拦截判断,已有Spring Boot,quarkus,javalin,ktor等集成样例)

支持动态修改权限配置(动态修改配置每个rest api谁有权访问),支持 websocket ,主流http容器  servletjax-rs。支持多种认证策略, jwt, basic auth, digest auth 等可扩展自定义支持的认证方式。

基于改进的字典匹配树拥有的高性能,具有良好的扩展接口, 样例和文档。sureness的低配置,易扩展,不耦合其他框架,希望能帮助开发者对自己的项目多场景快速安全的进行保护

TWO.
框架对比

下图是基准测试,结果显示 无权限框架应用损耗 0.026ms 性能,shiro 损耗 0.088ms, spring security 损耗 0.116ms, 相比之下 sureness 基本不消耗性能,且性能是 shiro 的 3 倍,spring security 的 4 倍。

性能差距会随着 api 匹配链的增加而进一步拉大:


下图是三个框架的对比,可以看到粉丝开源的框架支持功能丰富,学习曲线简单。

除此之外,sureness 还集成了 Spring Boot 、quarkus、javalin、ktor、spring webflux等,还提供了样例。

开源地址:https://gitee.com/tomsun28/sureness
GitHub地址:https://github.com/usthe/sureness
最后,防止找不到本篇文章,可以收藏点赞,方便翻阅查找。欢迎关注公众号 逛逛GitHub(ggGithub),进群请后台联系我。

推荐阅读
1. 标星 100 K 开源项目
2. 推荐几个前后端分离项目
3. 口吐芬芳终端助手
4. 魔鬼写作助手项目

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存