内容简介:新增特性 支持seesion认证鉴权 #86 添加seesion使用样例 #87 添加分布式缓存session使用样例 #88 去除防sql注入中的 (--)字符串正则匹配,防止其误识别jwt的问题 #85 BugFix Fix the problem that authentication...
新增特性
- 支持seesion认证鉴权 #86
- 添加seesion使用样例 #87
- 添加分布式缓存session使用样例 #88
- 去除防 sql 注入中的 (--)字符串正则匹配,防止其误识别jwt的问题 #85
BugFix
Fix the problem that authentication is still needed when the resource… #84
fix api can be accessed by any role when accessRole not config #83
使用
<dependency>
<groupId>com.usthe.sureness</groupId>
<artifactId>sureness-core</artifactId>
<version>1.0.2</version>
</dependency>
???? sureness
在主流的前后端分离架构中,如何通过有效快速的认证鉴权来保护后端提供的restful api
变得尤为重要。对现存框架,不原生支持rest
的apache shiro
, 还是深度绑定spring
,学习曲线陡峭的spring security
,或多或少都不是我们的理想型。
于是乎sureness
诞生了,我们希望能解决这些,提供一个面向restful api,无框架依赖,可以动态修改权限,多认证策略,更快速度,易用易扩展的认证鉴权框架。
???? 介绍
sureness
是我们在深度使用权限框架 apache shiro
之后,吸取其一些优点全新设计开发的一个认证鉴权框架
1. 面向 restful api
的认证鉴权,基于 rbac
(用户-角色-资源)主要关注于对 restful api
的安全保护
2. 无特定框架依赖(本质就是过滤器处拦截判断,已有springboot,quarkus,javalin,ktor
等集成样例)
3. 支持动态修改权限配置(动态修改配置每个rest api
谁有权访问)
4. 支持 websocket
,主流http
容器 servlet
和 jax-rs
5. 支持多种认证策略, jwt, basic auth, digest auth
... 可扩展自定义支持的认证方式
6. 基于改进的字典匹配树拥有的高性能
7. 良好的扩展接口, 样例和文档
sureness
的低配置,易扩展,不耦合其他框架,希望能帮助开发者对自己的项目多场景快速安全的进行保护
???? 框架对比
~ |
sureness |
shiro |
spring security |
多框架支持 |
支持 |
需改动支持 |
不支持 |
restful api |
支持 |
需改动支持 |
支持 |
websocket |
支持 |
不支持 |
不支持 |
过滤链匹配 |
优化的字典匹配树 |
ant匹配 |
ant匹配 |
注解支持 |
支持 |
支持 |
支持 |
servlet |
支持 |
支持 |
支持 |
jax-rs |
支持 |
不支持 |
不支持 |
权限动态修改 |
支持 |
需改动支持 |
需改动支持 |
性能速度 |
较快 |
较慢 |
较慢 |
学习曲线 |
简单 |
简单 |
陡峭 |
???? 基准性能测试
基准测试显示sureness对比无权限框架应用损耗0.026ms性能,shiro损耗0.088ms,spring security损耗0.116ms, 相比之下sureness基本不消耗性能,且性能(参考TPS损耗)是shiro的3倍,spring security的4倍
性能差距会随着api匹配链的增加而进一步拉大
详见基准测试
✌ 框架支持样例
- [√] sureness集成springboot样例(配置文件方案) sample-bootstrap
- [√] sureness集成springboot样例(数据库方案) sample-tom
- [√] sureness集成quarkus样例 sample-quarkus
- [√] sureness集成javalin样例 sample-javalin
- [√] sureness集成ktor样例 sample-ktor
- [√] sureness集成spring webflux样例 sample-spring-webflux
- [√] sureness使用session样例 sureness-session
- [√] sureness分布式缓存session样例 sureness-redis-session
- [√] more samples todo
项目仓库地址,欢迎使用,开源不易,觉得不错请大佬们star下给予鼓励,感谢。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- Dojo 6 发布,面向对象的 JS 框架
- 面向Hadoop框架的高级语言:Apache Pig
- 面向Hadoop框架的高级语言:Apache Pig
- 面向Hadoop框架的高级语言:Apache Pig
- Layui 2.1.1 发布,面向前后端 UI 框架
- Ray,面向新兴 AI 应用的分布式框架
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
像程序员一样思考
V. Anton Spraul / 徐波 / 人民邮电出版社 / 2013-6 / 49.00元
编程的真正挑战不是学习一种语言的语法,而是学习创造性地解决问题,从而构建美妙的应用。《像程序员一样思考》分析了程序员解决问题的方法,并且教授你其他图书所忽略的一种能力,即如何像程序员一样思考。全书分为8章。第1章通对几个经典的算法问题切入,概括了问题解决的基本技巧和步骤。第2章通过实际编写C++代码来解决几个简单的问题,从而让读者进一步体会到问题解决的思路和应用。第3到7章是书中的主体部分,分别探......一起来看看 《像程序员一样思考》 这本书的介绍吧!