Java三种优雅的权限认证框架

你们的项目产品中是否还在用着SpringSecurity、Shiro这种臃肿又复杂的权限认证框架?三跪九叩还没让你崩溃吗?反正我是崩溃了,今天我推荐下面三种权限认证框架,让权限认证在简单一点点...

SaToken

Satoken以轻量级为设计理念,通过简化权限管理的复杂性,使得整个框架更易上手,适用于中小型项目。

它可以进行登录认证、权限认证、单点登录、OAuth2.0、分布式Session会话、微服务网关鉴权、前后端分离等非常丰富的认证鉴权框架。简化权限管理,脱离Shiro、SpringSecurity的复杂玩法。

采用Token机制,无需在服务器端保存用户的认证状态,提高了系统的可伸缩性,尤其适用于分布式和无状态的应用场景。

以下是一些支持的注解接方法Api。更多支持可以去官方文档进行查看。

java 复制代码
// 会话登录,参数填登录人的账号id 
StpUtil.login(10001);
// 校验当前客户端是否已经登录,如果未登录则抛出 `NotLoginException` 异常
StpUtil.checkLogin();
// 将账号id为 10077 的会话踢下线 
StpUtil.kickout(10077);
// 注解鉴权:只有具备 `user:add` 权限的会话才可以进入方法
@SaCheckPermission("user:add")
// 登录校验:只有登录之后才能进入该方法 
@SaCheckLogin 
// 角色校验:必须具有指定角色才能进入该方法 
@SaCheckRole("super-admin") 
// 路由鉴权 
registry.addInterceptor(new SaInterceptor(handler -> {
SaRouter.match("/user/**", r -> StpUtil.checkPermission("user"));
SaRouter.match("/admin/**", r -> StpUtil.checkPermission("admin"));
    // 更多模块... 
})).addPathPatterns("/**");

JustAuth

一个第三方授权登录的工具类库,它可以让我们脱离繁琐的第三方登录 SDK,让登录变得 So easy!

它支持:GitGub、Gitee、某Q、某博、某度、Google、FaceBook钉钉、某宝、某信。等等诸多平台认证。

提供了简单易用的API,方便集成第三方登录认证。适用于需要整合第三方登录的应用,例如社交分享、社交账号绑定等场景。

MaxKey

业界领先的IAM身份管理和认证产品。适用于大型企业级应用,特别是需要复杂权限管理和统一认证的场景,以及需要支持多种认证方式的项目。

统一认证和单点登录,简化账号登录过程,保护账号和密码安全,对账号进行统一管理

提供安全、标准和开放的用户身份管理(IDM)、身份认证(AM)、单点登录(SSO)、资源管理和权限管理(RBAC)等 支持OAuth 2.x/OpenID Connect、SAML 2.0、JWT、CAS、SCIM2.0标准协议。

多种社交平台集成企业某信、钉钉、飞书扫码登录,某信、某Q、钉钉、某博、微软、Google、Facebook等社交账号登陆信任。 且支持动态验证码、短信验证、时间令牌、域认证、LDAP。

相关推荐
加宝的起点雷达1 分钟前
跑了两周的信号日报,我把降级链改了四次
人工智能·后端
IT枫斗者枫哥7 分钟前
CompletableFuture失败后返回空列表:异常没了,业务含义也变了
java·后端
Gopher_HBo8 分钟前
opentelemetrySDK源码解析
后端
UrbanJazzerati23 分钟前
AutoHotkey v2 零基础快速入门 Part 10:给路线回放添加高精度计时,理解累计延迟与路线一致性
后端
70后写java的老码农27 分钟前
Spring Boot 3 + ShardingSphere-JDBC 实战:一次把读写分离和分库分表跑通
后端
泡海椒30 分钟前
04-饼图评级构成-信用评级构成
后端
知守观32 分钟前
多模块架构演进:横向分层 vs 纵向领域,13 个真实项目的切分对照
java·后端·微服务
系统集成-鹰翔2 小时前
ERP推单数据库怎么备份:SQLite WAL模式下只复制db文件为什么可能漏任务
javascript·数据库·经验分享·后端
软件技术NINI3 小时前
基于SpringBoot和Vue的摇滚乐鉴赏网站
vue.js·spring boot·后端·spring·html·毕业设计·毕设
Tsuki_tl3 小时前
【总结】Redis五大数据类型应用场景及基本命令
数据库·redis·后端·缓存·缓存中间件·redis命令·redis 五大数据类型