Compare commits

...

5 Commits

Author SHA1 Message Date
click33
6387b7eede docs: readme & 文档 细节优化 2026-01-25 14:55:13 +08:00
click33
7eb2772484 docs: 优化 README.md 2026-01-25 14:45:35 +08:00
click33
21df9682b6 docs: 文档细节优化 2026-01-25 14:35:30 +08:00
click33
b707205607 docs: 优化readme 2026-01-25 14:18:20 +08:00
click33
d4a3eef5c7 docs: 文档优化 2026-01-24 11:34:44 +08:00
5 changed files with 120 additions and 46 deletions

102
README.md
View File

@@ -9,7 +9,7 @@
<a href="https://gitcode.com/dromara/sa-token/stargazers"><img src="https://gitcode.com/dromara/Sa-Token/star/badge.svg"></a>
<a href="https://github.com/dromara/sa-token/stargazers"><img src="https://img.shields.io/github/stars/dromara/sa-token?style=flat-square&logo=GitHub"></a>
<a href="https://github.com/dromara/sa-token/network/members"><img src="https://img.shields.io/github/forks/dromara/sa-token?style=flat-square&logo=GitHub"></a>
<a href="https://github.com/dromara/sa-token/watchers"><img src="https://img.shields.io/github/watchers/dromara/sa-token?style=flat-square&logo=GitHub"></a>
<!-- <a href="https://github.com/dromara/sa-token/watchers"><img src="https://img.shields.io/github/watchers/dromara/sa-token?style=flat-square&logo=GitHub"></a> -->
<!-- <a href="https://github.com/dromara/sa-token/issues"><img src="https://img.shields.io/github/issues/dromara/sa-token.svg?style=flat-square&logo=GitHub"></a> -->
<a href="https://github.com/dromara/sa-token/blob/master/LICENSE"><img src="https://img.shields.io/github/license/dromara/sa-token.svg?style=flat-square"></a>
</p>
@@ -19,7 +19,7 @@
---
### Sa-Token 介绍
### 🛠️ Sa-Token 介绍
Sa-Token 是一个轻量级 Java 权限认证框架目前拥有五大核心模块登录认证、权限认证、单点登录、OAuth2.0、微服务鉴权。
@@ -144,9 +144,9 @@ registry.addInterceptor(new SaInterceptor(handler -> {
### SSO 单点登录
### 🍃 SSO 单点登录
Sa-Token SSO 分为三种模式解决同域、跨域、共享Redis、跨Redis、前后端一体、前后端分离……等不同架构下的 SSO 接入问题
Sa-Token SSO 分为三种模式,解决`同域、跨域、共享Redis、跨Redis、前后端一体、前后端分离、纯 js、vue2、vue3、java 项目、非 java 项目` 等架构下的 SSO 认证需求
![sa-token-jss](https://sa-token.cc/big-file/doc/sso/sa-token-sso--white.png)
@@ -157,46 +157,82 @@ Sa-Token SSO 分为三种模式解决同域、跨域、共享Redis、跨Redis
| 前端不同域 + 后端 不同Redis | 模式三 | Http请求获取会话 | [文档](https://sa-token.cc/doc.html#/sso/sso-type3)、[示例](https://gitee.com/dromara/sa-token/blob/master/sa-token-demo/sa-token-demo-sso3-client) |
1. 前端同域:就是指多个系统可以部署在同一个主域名之下,比如:`c1.domain.com`、`c2.domain.com`、`c3.domain.com`
2. 后端同Redis就是指多个系统可以连接同一个Redis此处并非要所有项目数据都放在一个Redis中Sa-Token提供 **`[权限缓存与业务缓存分离]`** 的解决方案)
3. 如果无法做到前端同域,也无法做到后端同Redis可以走模式三Http请求校验 ticket 获取会话。
4. 提供 NoSdk 模式示例,不使用 Sa-Token 的系统也可以对接。
5. 提供 sso-server 接口文档,不使用 java 语言的系统也可以对接
6. 提供前后端分离整合方案:无论是 sso-server 还是 sso-client 前后端分离都可以整合
7. 提供安全校验域名校验、ticket校验、参数签名校验有效防 ticket 劫持,防请求重放等攻击
8. 参数防丢笔者曾试验多个SSO框架均有参数丢失情况比如登录前是`http://a.com?id=1&name=2`,登录成功后就变成了:`http://a.com?id=1`Sa-Token-SSO 内有专门算法保证了参数不丢失,登录成功后精准原路返回。
9. 提供用户数据同步/迁移方案的建议:开发前统一迁移、运行时实时数据同步、根据关联字段匹配、根据 center_id 字段匹配等。
10. 提供直接可运行的 demo 示例,帮助你快速熟悉 SSO 大致登录流程。
2. 后端同 Redis就是指多个系统可以连接同一个 Redis,共享会话数据。
3. 如果无法做到前端同域后端同 Redis可以走托底的模式三Http请求校验 ticket 获取会话。
4. 提供NoSdk 模式示例 + sso-server 接口文档,非 Sa-Token 项目、非 java 项目也可以对接。
5. 提供多重安全校验域名校验、ticket校验、参数签名校验有效防 ticket 劫持,防请求重放等攻击
6. 提供:大量实战痛点教学:sso-server 前后端分离设计、sso-client 前后端分离设计、用户数据同步/迁移方案设计
7. 提供:直接可运行的 demo 示例,助你快速熟悉 SSO 大致登录流程
8. 提供:深度细节优化,参数防丢笔者曾试验多个SSO框架均有参数丢失情况比如登录前是`http://a.com?id=1&name=2`,登录成功后就变成了:`http://a.com?id=1`Sa-Token-SSO 内有专门算法保证了参数不丢失,登录成功后精准原路返回。
### OAuth2 授权认证
Sa-Token-OAuth2 模块分为四种授权模式,解决不同场景下的授权需求
| 授权模式 | 简介 |
| :-------- | :-------- |
| 授权码Authorization Code | OAuth2.0 标准授权步骤Server 端向 Client 端下放 Code 码Client 端再用 Code 码换取授权 Token |
| 隐藏式Implicit | 无法使用授权码模式时的备用选择Server 端使用 URL 重定向方式直接将 Token 下放到 Client 端页面 |
| 密码式Password | Client直接拿着用户的账号密码换取授权 Token |
| 客户端凭证Client Credentials| Server 端针对 Client 级别的 Token代表应用自身的资源授权 |
### 🍂 OAuth2 授权认证
Sa-Token OAuth2 模块分为四种授权模式,解决不同场景下的授权需求
| 授权模式 | 简介 |
| :-------- | :-------- |
| 授权码式 | OAuth2 标准授权步骤server 端下放 codeclient 端获取 code 码兑换 access_token |
| 隐藏式 | 备用选择server 端使用 URL 重定向方式直接将 access_token 下放到 client 端页面 |
| 密码式 | client 直接拿着用户的账号密码换取授权 access_token |
| 客户端凭证式 | server 端针对 client 级别的 client_token代表应用自身的资源授权 |
详细参考文档:[https://sa-token.cc/doc.html#/oauth2/readme](https://sa-token.cc/doc.html#/oauth2/readme)
### 开源集成案例
### 📖❓ 疑问解答
**1、Sa-Token 功能全不全?**
七年磨一剑:五大核心模块(登录、鉴权、SSO、OAuth2、微服务) + 众多实用插件 (短 token、jwt 集成、API 参数签名、API Key 秘钥授权...) 我们提供的不只是权限认证,我们提供的是一站式解决方案。
**2、Sa-Token 好不好学?**
中文文档 + 中文代码注释 + 中文交流社区 + 大量实战案例博客 + 多个视频教程 + 大量优秀开源项目集成案例。
**3、Sa-Token 用的人多不多?**
截止统计日 (2026-1-25) 起Sa-Token 在:
- Gitee 关注量达到 48627 Star位列平台所有推荐项目排行榜第一名。
- GitHub 关注量达到 18523 Star是主要竞争框架 Spring Security 的 1.97 倍Apache Shiro 的 4.19 倍。
- 25+ 微信粉丝群 (500人)8+ QQ粉丝群 (1000人 or 2000人) 在线文档访问量月PV 20万+。
这是众多开发者用脚投票的数据,相信这些数据比任何言语都能证明 Sa-Token 的热度。
**4、Sa-Token 有哪些权威认证?**
曾获荣誉包括但不限于Gitee GVP 最有价值开源项目、GitCode G-Star 优质开源项目、OSCHINA 2021 人气指数 TOP 30 开源项目、OSCHINA 2022 年度最火热中国开源项目社区之一、开放原子基金会2023快速成长开源项目、 Dromara 组织顶尖项目(之一)、可信开源社区共同体预备成员、所在开源社区 “Dromara” 荣获《2024中国互联网发展创新与投资大赛开源》二等奖。 Gitee High Star 计划项目(5000+star)。
**5、Sa-Token 收费吗?**
Sa-Token 采用 Apache-2.0 开源协议,承诺框架本身与在线文档永久免费开放。当然如果您有心赞助 Sa-Token我们也不回避[赞助链接](https://sa-token.cc/doc.html#/more/sa-token-donate)。
我们将定期同步赞助者名单到在线文档展示。(您需要注意的一点是:该赞助仅为友情赞助,不提供任何商业交换)
### 🚀 开源集成案例
- [[ Snowy ]](https://gitee.com/xiaonuobase/snowy):国内首个国密前后分离快速开发平台,采用 Vue3 + Vite + SpringBoot + Mp + HuTool + SaToken。
- [[ RuoYi-Vue-Plus ]](https://gitee.com/dromara/RuoYi-Vue-Plus)重写RuoYi-Vue所有功能 集成 Sa-Token、Mybatis-Plus、Xxl-Job、knife4j、OSS 定期同步。
- [[ Smart-Admin ]](https://gitee.com/lab1024/smart-admin)SmartAdmin 国内首个以「高质量代码」为核心,「简洁、高效、安全」中后台快速开发平台。
- [[ 橙单 ]](https://gitee.com/orangeform/orange-admin) 橙单中台化低代码生成器。可完整支持多应用、多租户、多渠道、工作流、框架技术栈自由组合等。
- [[ 灯灯 ]](https://gitee.com/dromara/lamp-cloud) 专注于多租户解决方案的中后台快速开发平台。支持独立数据库、共享数据架构 和 非租户模式 ✨
- [[ 拾壹博客 ]](https://gitee.com/quequnlong/shiyi-blog):一款 vue + springboot 前后端分离的博客系统。
- [[ Snowy ]](https://gitee.com/xiaonuobase/snowy):国内首个国密前后分离快速开发平台,采用 Vue3 + AntDesignVue3 + Vite + SpringBoot + Mp + HuTool + SaToken。
- [[ RuoYi-Vue-Plus ]](https://gitee.com/dromara/RuoYi-Vue-Plus)重写RuoYi-Vue所有功能 集成 Sa-Token+Mybatis-Plus+Jackson+Xxl-Job+knife4j+Hutool+OSS 定期同步
- [[Smart-Admin]](https://gitee.com/lab1024/smart-admin)SmartAdmin国内首个以「高质量代码」为核心「简洁、高效、安全」中后台快速开发平台
- [[ 灯灯 ]](https://gitee.com/dromara/lamp-cloud) 专注于多租户解决方案的微服务中后台快速开发平台。租户模式支持独立数据库(DATASOURCE模式)、共享数据架构(COLUMN模式) 和 非租户模式(NONE模式)✨
- [[ EasyAdmin ]](https://gitee.com/lakernote/easy-admin)一个基于SpringBoot2 + Sa-Token + Mybatis-Plus + Snakerflow + Layui 的后台管理系统,灵活多变可前后端分离,也可单体,内置代码生成器、权限管理、工作流引擎等
- [[ sa-admin-server ]](https://gitee.com/wlf213/sa-admin-server) 基于 sa-admin-ui 的后台管理开发脚手架。
还有更多优秀开源案例无法逐一展示,请参考:[Awesome-Sa-Token](https://gitee.com/sa-token/awesome-sa-token)
### 友情链接
### 🔗 友情链接
- [[ OkHttps ]](https://gitee.com/ejlchina-zhxu/okhttps):轻量级 http 通信框架API无比优雅支持 WebSocket、Stomp 协议
- [[ Forest ]](https://gitee.com/dromara/forest):声明式与编程式双修,让天下没有难以发送的 HTTP 请求
- [[ Bean Searcher ]](https://github.com/ejlchina/bean-searcher):专注高级查询的只读 ORM使一行代码实现复杂列表检索
@@ -209,14 +245,14 @@ Sa-Token-OAuth2 模块分为四种授权模式,解决不同场景下的授权
### 代码托管
### 📦 代码托管
- Gitee[https://gitee.com/dromara/sa-token](https://gitee.com/dromara/sa-token)
- GitHub[https://github.com/dromara/sa-token](https://github.com/dromara/sa-token)
- GitCode[https://gitcode.com/dromara/sa-token](https://gitcode.com/dromara/sa-token)
### 交流群
### 💬 交流群
<!-- QQ交流群685792424 [点击加入](http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=Y05Ld4125W92YSwZ0gA8e3RhG9Q4Vsfx&authKey=IomXuIuhP9g8G7l%2ByfkrRsS7i%2Fna0lIBpkTXxx%2BQEaz0NNEyJq00kgeiC4dUyNLS&noverify=0&group_code=685792424)-->
QQ交流群823181187 [点击加入](https://qm.qq.com/q/EBIJVZBVGE)
@@ -231,12 +267,12 @@ PS扫码添加微信 (备注sa-token),邀您加入群聊。
<br>
<img class="s-w" src="http://localhost:3000/big-file/contact/show/wx-group-show3--liubai.png" style="max-width: 50%;" alt="微信群" />
<img class="s-w" src="http://sa-token.cc/big-file/contact/show/wx-group-show3--liubai.png" style="max-width: 50%;" alt="微信群" />
加入群聊的好处:
- 第一时间收到框架更新通知。
- 第一时间收到框架 bug 通知。
- 第一时间收到新增开源案例通知。
- 和众多大佬一起互相 (huá shuǐ) 交流 (mō yú)。
- 和众多大佬一起互相 (huá shuǐ) 交流 (mō yú) 🖐️🐟️

View File

@@ -9,7 +9,7 @@
<a href="https://gitcode.com/dromara/sa-token/stargazers"><img src="https://gitcode.com/dromara/Sa-Token/star/badge.svg"></a>
<a href="https://github.com/dromara/sa-token/stargazers"><img src="https://img.shields.io/github/stars/dromara/sa-token?style=flat-square&logo=GitHub"></a>
<a href="https://github.com/dromara/sa-token/network/members"><img src="https://img.shields.io/github/forks/dromara/sa-token?style=flat-square&logo=GitHub"></a>
<a href="https://github.com/dromara/sa-token/watchers"><img src="https://img.shields.io/github/watchers/dromara/sa-token?style=flat-square&logo=GitHub"></a>
<!-- <a href="https://github.com/dromara/sa-token/watchers"><img src="https://img.shields.io/github/watchers/dromara/sa-token?style=flat-square&logo=GitHub"></a> -->
<!-- <a href="https://github.com/dromara/sa-token/issues"><img src="https://img.shields.io/github/issues/dromara/sa-token.svg?style=flat-square&logo=GitHub"></a> -->
<a href="https://github.com/dromara/sa-token/blob/master/LICENSE"><img src="https://img.shields.io/github/license/dromara/sa-token.svg?style=flat-square"></a>
</p>
@@ -132,6 +132,41 @@ Sa-Token 目前主要五大功能模块:登录认证、权限认证、单点
<img class="s-w" src="/big-file/index/intro/sa-token-js4.png" />
## 疑问解答
**1、Sa-Token 功能全不全?**
七年磨一剑:五大核心模块(登录、鉴权、SSO、OAuth2、微服务) + 众多实用插件 (短 token、jwt 集成、API 参数签名、API Key 秘钥授权...) 我们提供的不只是权限认证,我们提供的是一站式解决方案。
**2、Sa-Token 好不好学?**
中文文档 + 中文代码注释 + 中文交流社区 + 大量实战案例博客 + 多个视频教程 + 大量优秀开源项目集成案例。
**3、Sa-Token 用的人多不多?**
截止统计日 (2026-1-25) 起Sa-Token 在:
- Gitee 关注量达到 48627 Star位列平台所有推荐项目排行榜第一名。
- GitHub 关注量达到 18523 Star是主要竞争框架 Spring Security 的 1.97 倍Apache Shiro 的 4.19 倍。
- 25+ 微信粉丝群 (500人)8+ QQ粉丝群 (1000人 or 2000人) 在线文档访问量月PV 20万+。
这是众多开发者用脚投票的数据,相信这些数据比任何言语都能证明 Sa-Token 的热度。
**4、Sa-Token 有哪些权威认证?**
曾获荣誉包括但不限于Gitee GVP 最有价值开源项目、GitCode G-Star 优质开源项目、OSCHINA 2021 人气指数 TOP 30 开源项目、OSCHINA 2022 年度最火热中国开源项目社区之一、开放原子基金会2023快速成长开源项目、 Dromara 组织顶尖项目(之一)、可信开源社区共同体预备成员、所在开源社区 “Dromara” 荣获《2024中国互联网发展创新与投资大赛开源》二等奖。 Gitee High Star 计划项目(5000+star)。
**5、Sa-Token 收费吗?**
Sa-Token 采用 Apache-2.0 开源协议,承诺框架本身与在线文档永久免费开放。当然如果您有心赞助 Sa-Token我们也不回避[赞助链接](https://sa-token.cc/doc.html#/more/sa-token-donate)。
我们将定期同步赞助者名单到在线文档展示。(您需要注意的一点是:该赞助仅为友情赞助,不提供任何商业交换)
## 开源仓库 Star 趋势
<p class="un-dec-a-pre"></p>

View File

@@ -250,7 +250,7 @@
<div class="s-fenge"></div>
<div style="height: 20px;"></div>
<h2 class="s-title s-title-tx">
权限认证
七年磨一剑 🗡️
<span style="background: linear-gradient(to right, #44f, #bd34fe); background-clip: text; color: transparent;"> 一站式解决方案</span>
</h2>
<div style="margin-top: -20px; margin-bottom: 40px;">
@@ -400,7 +400,7 @@
<div class="s-fenge"></div>
<h2 class="s-title" style="margin-top: 80px;">优秀开源集成案例</h2>
<div class="feature-box s-case-box">
<!-- Snowy 19.8K -->
<!-- Snowy 33.1K -->
<div class="s-case">
<a href="https://gitee.com/xiaonuobase/snowy" target="_blank" class="s-case-link">
<img class="lazy" data-original="/big-file/index/case/case--snowy.jpg">
@@ -409,7 +409,7 @@
<span class="s-author"> 小诺开源技术 </span>
<p class="s-case-intro">国内首个国密前后分离快速开发平台基于Vue3、Antdv、SaToken</p>
</div>
<!-- mall4j 15.9k -->
<!-- mall4j 17k -->
<div class="s-case">
<a href="https://gitee.com/gz-yami/mall4j" target="_blank" class="s-case-link">
<img class="lazy"
@@ -419,7 +419,7 @@
<span class="s-author"> Mall4j商城系统 </span>
<p class="s-case-intro">基于Spring Boot 3 JDK17的一个商城手脚架。</p>
</div>
<!-- RuoYi-Vue-Plus 10.7k -->
<!-- RuoYi-Vue-Plus 15.6k -->
<div class="s-case">
<a href="https://gitee.com/dromara/RuoYi-Vue-Plus" target="_blank" class="s-case-link">
<img class="lazy"
@@ -429,7 +429,7 @@
<span class="s-author"> 疯狂的狮子Li </span>
<p class="s-case-intro">重写 RuoYi-Vue 所有功能,集成 Sa-Token、Mybatis-Plus、Hutool 定期同步</p>
</div>
<!-- Smart-Admin 7.6K -->
<!-- Smart-Admin 10.3K -->
<div class="s-case">
<a href="https://gitee.com/lab1024/smart-admin" target="_blank" class="s-case-link">
<img class="lazy" data-original="/big-file/index/case/case--smart-admin.png">
@@ -438,7 +438,7 @@
<span class="s-author"> 1024创新实验室 </span>
<p class="s-case-intro">坚持以「高质量代码」为核心,「简洁、高效、安全」的中后台解决方案!</p>
</div>
<!-- SpringBoot_v2 6k -->
<!-- SpringBoot_v2 6.1k -->
<div class="s-case">
<a href="https://gitee.com/bdj/SpringBoot_v2" target="_blank" class="s-case-link">
<img class="lazy"
@@ -448,7 +448,7 @@
<span class="s-author">开源oschina</span>
<p class="s-case-intro">努力打造 springboot 框架的极致细腻的脚手架,原生纯净。</p>
</div>
<!-- Lamp-Cloud 5.4K -->
<!-- Lamp-Cloud 5.7K -->
<div class="s-case">
<a href="https://gitee.com/dromara/lamp-cloud" target="_blank" class="s-case-link">
<img class="lazy" data-original="/big-file/index/case/case--lamp-cloud.png">
@@ -457,7 +457,7 @@
<span class="s-author"> 最后 </span>
<p class="s-case-intro">专注于多租户解决方案的微服务中后台快速开发平台。</p>
</div>
<!-- RuoYi-Cloud-Plus 4.9K -->
<!-- RuoYi-Cloud-Plus 6.8K -->
<div class="s-case">
<a href="https://gitee.com/dromara/RuoYi-Cloud-Plus" target="_blank" class="s-case-link">
<img class="lazy"
@@ -467,7 +467,7 @@
<span class="s-author"> 疯狂的狮子Li </span>
<p class="s-case-intro">重写 RuoYi-Cloud 所有功能 整合 SpringCloudAlibaba、Dubbo3.0、Sa-Token</p>
</div>
<!-- Orange-Admin 3.3K -->
<!-- Orange-Admin 4.6K -->
<div class="s-case">
<a href="https://gitee.com/orangeform/orange-admin" target="_blank" class="s-case-link">
<img class="lazy" data-original="/big-file/index/case/case--orange-admin.png">
@@ -476,7 +476,7 @@
<span class="s-author"> orange-form </span>
<p class="s-case-intro">橙单中台化低代码生成器。多应用、多租户、多渠道、工作流、在线表单等。</p>
</div>
<!-- 拾壹博客 1.7K -->
<!-- 拾壹博客 2.9K -->
<div class="s-case">
<a href="https://gitee.com/quequnlong/shiyi-blog" target="_blank" class="s-case-link">
<img class="lazy" data-original="/big-file/index/case/case--shiyi-blog.png">
@@ -486,6 +486,9 @@
<p class="s-case-intro">一款 Vue + SpringBoot 前后端分离的博客系统</p>
</div>
<!-- https://github.com/DataLinkDC/dinky 3.7k -->
<!-- https://gitee.com/mldong/mldong 10k -->
<!-- https://gitee.com/junyue/flyflow 6.4k -->
</div>

View File

@@ -30,7 +30,7 @@ PS扫码添加微信 (备注sa),邀您加入群聊。
- 第一时间收到框架更新通知。
- 第一时间收到框架 bug 通知。
- 第一时间收到新增开源案例通知。
- 和众多大佬一起互相 (huá shuǐ) 交流 (mō yú)。
- 和众多大佬一起互相 (huá shuǐ) 交流 (mō yú) 🖐️🐟️

View File

@@ -2,7 +2,7 @@
---
Sa-Token 采用 Apache-2.0 开源协议,<green>**承诺框架本身与官网文档永久免费开放**</green>
Sa-Token 采用 Apache-2.0 开源协议,<green>**承诺框架本身与在线文档永久免费开放**</green>
但是框架的日常更新与社区运营需要付出大量的精力,靠爱发电难以长久,如果 Sa-Token 帮助到了您,您可以友情支持一下 Sa-Token。