refactor: 重构 sa-token-fastjson2 插件
在线文档:https://sa-token.cc
Sa-Token 是一个轻量级 Java 权限认证框架,目前拥有五大核心模块:登录认证、权限认证、单点登录、OAuth2.0、微服务鉴权。
Sa-Token 旨在以简单、优雅的方式完成系统的权限认证部分,以登录认证为例,你只需要:
// 会话登录,参数填登录人的账号id StpUtil.login(10001);
无需实现任何接口,无需创建任何配置文件,只需要这一句静态代码的调用,便可以完成会话登录认证。
如果一个接口需要登录后才能访问,我们只需调用以下代码:
// 校验当前客户端是否已经登录,如果未登录则抛出 `NotLoginException` 异常 StpUtil.checkLogin();
在 Sa-Token 中,大多数功能都可以一行代码解决:
踢人下线:
// 将账号id为 10077 的会话踢下线 StpUtil.kickout(10077);
权限认证:
// 注解鉴权:只有具备 `user:add` 权限的会话才可以进入方法 @SaCheckPermission("user:add") public String insert(SysUser user) { // ... return "用户增加"; }
路由拦截鉴权:
// 根据路由划分模块,不同模块不同鉴权 registry.addInterceptor(new SaInterceptor(handler -> { SaRouter.match("/user/**", r -> StpUtil.checkPermission("user")); SaRouter.match("/admin/**", r -> StpUtil.checkPermission("admin")); SaRouter.match("/goods/**", r -> StpUtil.checkPermission("goods")); SaRouter.match("/orders/**", r -> StpUtil.checkPermission("orders")); SaRouter.match("/notice/**", r -> StpUtil.checkPermission("notice")); // 更多模块... })).addPathPatterns("/**");
当你受够 Shiro、SpringSecurity 等框架的三拜九叩之后,你就会明白,相对于这些传统老牌框架,Sa-Token 的 API 设计是多么的简单、优雅!
Sa-Token SSO 分为三种模式,解决同域、跨域、共享Redis、跨Redis、前后端一体、前后端分离……等不同架构下的 SSO 接入问题:
c1.domain.com
c2.domain.com
c3.domain.com
[权限缓存与业务缓存分离]
http://a.com?id=1&name=2
http://a.com?id=1
Sa-Token-OAuth2 模块分为四种授权模式,解决不同场景下的授权需求
详细参考文档:https://sa-token.cc/doc.html#/oauth2/readme
还有更多优秀开源案例无法逐一展示,请参考:Awesome-Sa-Token
QQ交流群:823181187 点击加入
微信交流群:
(扫码添加微信,备注:sa-token,邀您加入群聊)
加入群聊的好处:
©Copyright 2023 CCF 开源发展委员会 Powered by Trustie& IntelliDE 京ICP备13000930号
Sa-Token v1.40.0
一个轻量级 Java 权限认证框架,让鉴权变得简单、优雅!
在线文档:https://sa-token.cc
Sa-Token 介绍
Sa-Token 是一个轻量级 Java 权限认证框架,目前拥有五大核心模块:登录认证、权限认证、单点登录、OAuth2.0、微服务鉴权。
简单示例展示:(点击展开 / 折叠)
Sa-Token 旨在以简单、优雅的方式完成系统的权限认证部分,以登录认证为例,你只需要:
无需实现任何接口,无需创建任何配置文件,只需要这一句静态代码的调用,便可以完成会话登录认证。
如果一个接口需要登录后才能访问,我们只需调用以下代码:
在 Sa-Token 中,大多数功能都可以一行代码解决:
踢人下线:
权限认证:
路由拦截鉴权:
当你受够 Shiro、SpringSecurity 等框架的三拜九叩之后,你就会明白,相对于这些传统老牌框架,Sa-Token 的 API 设计是多么的简单、优雅!
核心模块一览:(点击展开 / 折叠)
SSO 单点登录
Sa-Token SSO 分为三种模式,解决同域、跨域、共享Redis、跨Redis、前后端一体、前后端分离……等不同架构下的 SSO 接入问题:
c1.domain.com
、c2.domain.com
、c3.domain.com
[权限缓存与业务缓存分离]
的解决方案)http://a.com?id=1&name=2
,登录成功后就变成了:http://a.com?id=1
,Sa-Token-SSO 内有专门算法保证了参数不丢失,登录成功后精准原路返回。OAuth2 授权认证
Sa-Token-OAuth2 模块分为四种授权模式,解决不同场景下的授权需求
详细参考文档:https://sa-token.cc/doc.html#/oauth2/readme
开源集成案例
还有更多优秀开源案例无法逐一展示,请参考:Awesome-Sa-Token
友情链接
代码托管
交流群
QQ交流群:823181187 点击加入
微信交流群:
(扫码添加微信,备注:sa-token,邀您加入群聊)
加入群聊的好处: