mirror of
https://gitee.com/dromara/sa-token.git
synced 2026-05-14 04:42:09 +08:00
docs: 优化readme
This commit is contained in:
100
README.md
100
README.md
@@ -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 认证需求:
|
||||
|
||||

|
||||
|
||||
@@ -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 端下放 code,client 端获取 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ú) 🖐️🐟️。
|
||||
|
||||
|
||||
@@ -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;">
|
||||
|
||||
@@ -30,7 +30,7 @@ PS:扫码添加微信 (备注:sa),邀您加入群聊。
|
||||
- 第一时间收到框架更新通知。
|
||||
- 第一时间收到框架 bug 通知。
|
||||
- 第一时间收到新增开源案例通知。
|
||||
- 和众多大佬一起互相 (huá shuǐ) 交流 (mō yú)。
|
||||
- 和众多大佬一起互相 (huá shuǐ) 交流 (mō yú) 🖐️🐟️。
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user