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。

相关推荐
customer085 分钟前
【开源免费】基于SpringBoot+Vue.JS周边产品销售网站(JAVA毕业设计)
java·vue.js·spring boot·后端·spring cloud·java-ee·开源
Yaml41 小时前
智能化健身房管理:Spring Boot与Vue的创新解决方案
前端·spring boot·后端·mysql·vue·健身房管理
小码编匠2 小时前
一款 C# 编写的神经网络计算图框架
后端·神经网络·c#
AskHarries2 小时前
Java字节码增强库ByteBuddy
java·后端
佳佳_2 小时前
Spring Boot 应用启动时打印配置类信息
spring boot·后端
许野平4 小时前
Rust: 利用 chrono 库实现日期和字符串互相转换
开发语言·后端·rust·字符串·转换·日期·chrono
BiteCode_咬一口代码5 小时前
信息泄露!默认密码的危害,记一次网络安全研究
后端
齐 飞5 小时前
MongoDB笔记01-概念与安装
前端·数据库·笔记·后端·mongodb