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。

相关推荐
IT爱学堂2 小时前
Go开发疑难杂症终结者通关指南
后端
大勇前进2 小时前
从10分钟到10秒:一个真实慢查询的SQL Server优化全记录
后端
站大爷IP2 小时前
被Python异步坑了三年,才搞懂await和create_task的区别
后端
大白802 小时前
你的数据库密码还在用明文?SQL Server 凭据管理的 3 种现代方案
后端
凤山老林2 小时前
Spring Boot 集成 ShardingSphere-Encrypt 实现字段级实时脱敏
java·spring boot·后端·数据脱敏
vipxieliang2 小时前
ValidX v1.2.0 更新日志
java·后端
Zane19942 小时前
只改一个方向的引用,循环引用就能立刻被回收?一文讲透 weakref 弱引用
后端·python
长大19882 小时前
窗口函数用不好反而更慢?SQL Server中OVER子句的4个性能陷阱
后端
大黄评测2 小时前
MERGE语句有Bug?SQL Server官方不推荐的背后真相与替代方案
后端
长大19882 小时前
TempDB 爆满导致系统卡死?SQL Server TempDB 瓶颈诊断与根治方案
后端