From ed356407650e2cba6a6686cf77694c101eac0c43 Mon Sep 17 00:00:00 2001 From: click33 <2393584716@qq.com> Date: Tue, 18 Nov 2025 11:39:59 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E7=9B=AE=E5=BD=95=E6=A0=91=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E4=B8=93=E9=97=A8=E6=A0=8F=E7=9B=AE=E8=AE=B0=E5=BD=95?= =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E6=9E=B6=E6=9E=84=E8=AE=BE=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sa-token-doc/_sidebar.md | 9 ++- sa-token-doc/arch/dir-intro.md | 134 +++++++++++++++++++++++++++++++ sa-token-doc/doc.html | 13 +-- sa-token-doc/index.html | 13 +-- sa-token-doc/pro/st_doc_top.md | 55 +++++++++++++ sa-token-doc/pro/st_index_top.md | 55 +++++++++++++ sa-token-doc/pro/st_oauth2.md | 55 +++++++++++++ sa-token-doc/pro/st_sso.md | 55 +++++++++++++ sa-token-doc/start/download.md | 125 +--------------------------- 9 files changed, 379 insertions(+), 135 deletions(-) create mode 100644 sa-token-doc/arch/dir-intro.md create mode 100644 sa-token-doc/pro/st_doc_top.md create mode 100644 sa-token-doc/pro/st_index_top.md create mode 100644 sa-token-doc/pro/st_oauth2.md create mode 100644 sa-token-doc/pro/st_sso.md diff --git a/sa-token-doc/_sidebar.md b/sa-token-doc/_sidebar.md index a934e21c..ee46f965 100644 --- a/sa-token-doc/_sidebar.md +++ b/sa-token-doc/_sidebar.md @@ -55,7 +55,7 @@ - [NoSdk、ReSdk 模式与非 java 项目](/sso/sso-nosdk) - [SSO 代码 API 参考](/sso/sso-dev) - [常见问题总结](/sso/sso-questions) - - [Sa-Sso-Pro:单点登录商业版](/sso/sso-pro) + - [Sa-Pro:单点登录商业版](/pro/st_sso) - **OAuth2.0** - [OAuth2.0简述](/oauth2/readme) @@ -75,6 +75,7 @@ - [OAuth2-与登录会话实现数据互通](/oauth2/oauth2-interworking) - [OAuth2 代码 API 参考](/oauth2/oauth2-dev) - [常见问题总结](/oauth2/oauth2-questions) + - [Sa-Max:统一认证商业版](/pro/st_oauth2) @@ -103,6 +104,7 @@ - [Sa-Token 插件开发指南](/fun/plugin-dev) - [自定义 SaTokenContext 指南](/fun/sa-token-context) + - **API手册** - [StpUtil-鉴权工具类](/api/stp-util) - [SaSession-会话对象](/api/sa-session) @@ -111,6 +113,11 @@ - [全局类、方法](/more/common-action) +- **框架设计** + - [仓库目录](/arch/dir-intro) + + + - **其它** - [更新日志](/more/update-log) - [框架生态](/more/link) diff --git a/sa-token-doc/arch/dir-intro.md b/sa-token-doc/arch/dir-intro.md new file mode 100644 index 00000000..cd5574fa --- /dev/null +++ b/sa-token-doc/arch/dir-intro.md @@ -0,0 +1,134 @@ +# 仓库目录介绍 + +仓库目录介绍: + +``` js +── sa-token + ├── sa-token-core // [核心] Sa-Token 核心模块 + ├── sa-token-dependencies // [依赖] Sa-Token 依赖版本信息 + ├── sa-token-bom // [核心] Sa-Token bom 包 + ├── sa-token-starter // [整合] Sa-Token 与其它框架整合 + ├── sa-token-servlet // [整合] Sa-Token 整合 Servlet 容器实现类包 + ├── sa-token-spring-boot-starter // [整合] Sa-Token 整合 SpringBoot2 快速集成 + ├── sa-token-reactor-spring-boot-starter // [整合] Sa-Token 整合 SpringBoot2 Reactor 响应式编程 快速集成 + ├── sa-token-jakarta-servlet // [整合] Sa-Token 整合 Jakarta-Servlet 容器实现类包 + ├── sa-token-spring-boot3-starter // [整合] Sa-Token 整合 SpringBoot3 快速集成 + ├── sa-token-reactor-spring-boot3-starter // [整合] Sa-Token 整合 SpringBoot3 Reactor 响应式编程 快速集成 + ├── sa-token-spring-boot-autoconfig // [整合] Sa-Token 整合 SpringBoot 自动配置包 + ├── sa-token-solon-plugin // [整合] Sa-Token 整合 Solon 快速集成 + ├── sa-token-jfinal-plugin // [整合] Sa-Token 整合 JFinal 快速集成 + ├── sa-token-jboot-plugin // [整合] Sa-Token 整合 jboot 快速集成 + ├── sa-token-plugin // [插件] Sa-Token 插件合集 + ├── sa-token-jackson // [插件] Sa-Token 整合 Jackson (json序列化插件) + ├── sa-token-fastjson // [插件] Sa-Token 整合 Fastjson (json序列化插件) + ├── sa-token-fastjson2 // [插件] Sa-Token 整合 Fastjson (json序列化插件) + ├── sa-token-snack3 // [插件] Sa-Token 整合 Snack3 (json序列化插件) + ├── sa-token-hutool-timed-cache // [插件] Sa-Token 整合 Hutool 缓存组件 Timed-Cache(基于内存) (数据缓存插件) + ├── sa-token-caffeine // [插件] Sa-Token 整合 Caffeine 缓存组件(基于内存) (数据缓存插件) + ├── sa-token-thymeleaf // [插件] Sa-Token 整合 Thymeleaf (自定义标签方言) + ├── sa-token-freemarker // [插件] Sa-Token 整合 Freemarker (自定义标签方言) + ├── sa-token-dubbo // [插件] Sa-Token 整合 Dubbo (RPC 调用鉴权、状态传递) + ├── sa-token-dubbo3 // [插件] Sa-Token 整合 Dubbo3 (RPC 调用鉴权、状态传递) + ├── sa-token-temp-jwt // [插件] Sa-Token 整合 jjwt (临时 Token) + ├── sa-token-sso // [插件] Sa-Token 实现 SSO 单点登录 + ├── sa-token-oauth2 // [插件] Sa-Token 实现 OAuth2.0 认证 + ├── sa-token-apikey // [插件] Sa-Token 实现 API Key 认证 + ├── sa-token-sign // [插件] Sa-Token 实现 API 参数签名 + ├── sa-token-redisson // [插件] Sa-Token 整合 Redisson (数据缓存插件) + ├── sa-token-redisx // [插件] Sa-Token 整合 Redisx (数据缓存插件) + ├── sa-token-serializer-features // [插件] Sa-Token 序列化实现扩展 + ├── sa-token-redis-template // [插件] Sa-Token 整合 RedisTemplate (数据缓存插件) + ├── sa-token-redis-template-jdk-serializer // [插件] Sa-Token 整合 RedisTemplate - 使用 jdk 序列化算法 (数据缓存插件) + ├── sa-token-redis-jackson // [插件] Sa-Token 整合 RedisTemplate - 使用 Jackson 序列化算法 (数据缓存插件) + ├── sa-token-alone-redis // [插件] Sa-Token 独立 Redis 插件,实现 [ 权限缓存与业务缓存分离 ] + ├── sa-token-spring-aop // [插件] Sa-Token 整合 SpringAOP 注解鉴权 + ├── sa-token-spring-el // [插件] Sa-Token 实现 SpringEL 表达式注解鉴权 + ├── sa-token-grpc // [插件] Sa-Token 整合 gRPC (RPC 调用鉴权、状态传递) + ├── sa-token-quick-login // [插件] Sa-Token 快速注入登录页插件 + ├── sa-token-redisson-spring-boot-starter // [插件] Sa-Token 整合 Redisson - SpringBoot 自动配置包 (数据缓存插件) + ├── sa-token-forest // [插件] Sa-Token 整合 Forest,http 请求处理器 + ├── sa-token-okhttps // [插件] Sa-Token 整合 OkHttps,http 请求处理器 + ├── sa-token-demo // [示例] Sa-Token 示例合集 + ├── sa-token-demo-alone-redis // [示例] Sa-Token 集成 alone-redis 模块 + ├── sa-token-demo-alone-redis-cluster // [示例] Sa-Token 集成 alone-redis 模块、集群模式 + ├── sa-token-demo-apikey // [示例] Sa-Token API Key 模块示例 + ├── sa-token-demo-async // [示例] Sa-Token 异步场景示例 + ├── sa-token-demo-beetl // [示例] Sa-Token 集成 beetl 示例 + ├── sa-token-demo-bom-import // [示例] Sa-Token bom 包导入示例 + ├── sa-token-demo-case // [示例] Sa-Token 各模块示例 + ├── sa-token-demo-device-lock // [示例] Sa-Token 设备锁登录示例 - 后端 + ├── sa-token-demo-device-lock-h5 // [示例] Sa-Token 设备锁登录示例 - 前端 + ├── sa-token-demo-dubbo // [示例] Sa-Token 集成 dubbo + ├── sa-token-demo-dubbo-consumer // [示例] Sa-Token 集成 dubbo 鉴权,消费端(调用端) + ├── sa-token-demo-dubbo-provider // [示例] Sa-Token 集成 dubbo 鉴权,生产端(被调用端) + ├── sa-token-demo-dubbo3-consumer // [示例] Sa-Token 集成 dubbo3 鉴权,消费端(调用端) + ├── sa-token-demo-dubbo3-provider // [示例] Sa-Token 集成 dubbo3 鉴权,生产端(被调用端) + ├── sa-token-demo-freemarker // [示例] Sa-Token 集成 Freemarker 标签方言 + ├── sa-token-demo-grpc // [示例] Sa-Token 集成 grpc 鉴权 + ├── client // [示例] Sa-Token 集成 grpc 鉴权,client 端 + ├── server // [示例] Sa-Token 集成 grpc 鉴权,server 端 + ├── sa-token-demo-hutool-timed-cache // [示例] Sa-Token 集成 hutool timed-cache + ├── sa-token-demo-caffeine // [示例] Sa-Token 集成 Caffeine + ├── sa-token-demo-jwt // [示例] Sa-Token 集成 jwt 登录认证 + ├── sa-token-demo-oauth2 // [示例] Sa-Token 集成 OAuth2.0 + ├── sa-token-demo-oauth2-client // [示例] Sa-Token 集成 OAuth2.0 (客户端) + ├── sa-token-demo-oauth2-client-h5 // [示例] Sa-Token OAuth2 前端测试页 + ├── sa-token-demo-oauth2-server // [示例] Sa-Token 集成 OAuth2.0 (服务端) + ├── sa-token-demo-oauth2-server-h5 // [示例] Sa-Token 集成 OAuth2.0 (服务端 - 前后台分离示例) + ├── sa-token-demo-quick-login // [示例] Sa-Token 集成 quick-login 模块 + ├── sa-token-demo-quick-login-sb3 // [示例] Sa-Token 集成 quick-login 模块 (SpringBoot3) + ├── sa-token-demo-remember-me // [示例] Sa-Token 实现 [ 记住我 ] 模式 + ├── page_project // [示例] Sa-Token 实现 [ 记住我 ] 模式、前端页面 + ├── sa-token-demo-remember-me-server // [示例] Sa-Token 实现 [ 记住我 ] 模式、后端接口 + ├── sa-token-demo-solon // [示例] Sa-Token 集成 Solon + ├── sa-token-demo-solon-reisson // [示例] Sa-Token 集成 Solon、Reisson + ├── sa-token-demo-springboot // [示例] Sa-Token 整合 SpringBoot + ├── sa-token-demo-springboot3-redis // [示例] Sa-Token 整合 SpringBoot3 整合 Redis + ├── sa-token-demo-springboot-low-version // [示例] Sa-Token 整合 SpringBoot2 低版本 + ├── sa-token-demo-springboot-redis // [示例] Sa-Token 整合 SpringBoot 整合 Redis + ├── sa-token-demo-springboot-redisson // [示例] Sa-Token 整合 SpringBoot 整合 redisson + ├── sa-token-demo-sse // [示例] 在 SSE 中使用 Sa-Token + ├── sa-token-demo-ssm // [示例] 在 SSM 中使用 Sa-Token + ├── sa-token-demo-sso // [示例] Sa-Token 集成 SSO 单点登录 + ├── sa-token-demo-sso-server // [示例] Sa-Token 集成 SSO单点登录-Server认证中心 + ├── sa-token-demo-sso1-client // [示例] Sa-Token 集成 SSO单点登录-模式一 应用端 (同域、同Redis) + ├── sa-token-demo-sso2-client // [示例] Sa-Token 集成 SSO单点登录-模式二 应用端 (跨域、同Redis) + ├── sa-token-demo-sso3-client // [示例] Sa-Token 集成 SSO单点登录-模式三 应用端 (跨域、跨Redis) + ├── sa-token-demo-sso3-client-nosdk // [示例] Sa-Token 集成 SSO单点登录-模式三 应用端 (不使用sdk,纯手动对接) + ├── sa-token-demo-sso3-client-resdk // [示例] Sa-Token 集成 SSO单点登录-模式三 应用端 (ReSdk 模式,重写部分方法对接任意技术栈) + ├── sa-token-demo-sso3-client-anon // [示例] Sa-Token 集成 SSO单点登录-模式三 应用端 (匿名应用接入示例) + ├── sa-token-demo-sso-server-h5 // [示例] Sa-Token 集成 SSO单点登录-Server认证中心 (前后端分离) + ├── sa-token-demo-sso-client-h5 // [示例] Sa-Token 集成 SSO单点登录-client应用端 (前后端分离-原生h5 版本) + ├── sa-token-demo-sso-server-vue2 // [示例] Sa-Token 集成 SSO单点登录-client应用端 (前后端分离-Vue2 版本) + ├── sa-token-demo-sso-client-vue3 // [示例] Sa-Token 集成 SSO单点登录-client应用端 (前后端分离-Vue3 版本) + ├── sa-token-demo-sso-for-solon // [示例] Sa-Token 集成 SSO 单点登录(Solon 版) + ├── sa-token-demo-sso-server-solon // [示例] Sa-Token 集成 SSO单点登录-Server认证中心 + ├── sa-token-demo-sso1-client-solon // [示例] Sa-Token 集成 SSO单点登录-模式一 应用端 (同域、同Redis) + ├── sa-token-demo-sso2-client-solon // [示例] Sa-Token 集成 SSO单点登录-模式二 应用端 (跨域、同Redis) + ├── sa-token-demo-sso3-client-solon // [示例] Sa-Token 集成 SSO单点登录-模式三 应用端 (跨域、跨Redis) + ├── sa-token-demo-test // [示例] Sa-Token 整合测试项目 + ├── sa-token-demo-thymeleaf // [示例] Sa-Token 集成 Thymeleaf 标签方言 + ├── sa-token-demo-webflux // [示例] Sa-Token 整合 WebFlux + ├── sa-token-demo-webflux-springboot3 // [示例] Sa-Token 整合 WebFlux (SpringBoot3) + ├── sa-token-demo-websocket // [示例] Sa-Token 集成 Web-Socket 鉴权示例 + ├── sa-token-demo-websocket-spring // [示例] Sa-Token 集成 Web-Socket(Spring封装版) 鉴权示例 + ├── pom.xml // 示例 pom 文件,用于帮助在 idea 中一键导入所有 demo + ├── sa-token-test // [测试] Sa-Token 单元测试合集 + ├── sa-token-springboot-test // [测试] Sa-Token SpringBoot 整合测试 + ├── sa-token-jwt-test // [测试] Sa-Token jwt 整合测试 + ├── sa-token-doc // [文档] Sa-Token 开发文档 + ├── pom.xml // [依赖] 顶级pom文件 + ├── LICENSE // 开源协议 + ├── mvn clean.bat // 一键 mvn clean 核心包+所有示例包 + ├── mvn test.bat // 一键单元测试 + ├── preview-doc.bat // 一键预览开发文档 + ├── README.md // 仓库自述文件 +``` + + + +其它: + +- [sa-token-demo-cross](https://gitee.com/sa-tokens/sa-token-demo-cross):Sa-Token 处理跨域示例。 +- [sa-token-three-plugin](https://gitee.com/sa-tokens/sa-token-three-plugin):Sa-Token 第三方插件合集。 +- [sa-token-study](https://gitee.com/sa-tokens/sa-token-study):Sa-Token 涉及知识点学习。 diff --git a/sa-token-doc/doc.html b/sa-token-doc/doc.html index eaa2c329..42b74715 100644 --- a/sa-token-doc/doc.html +++ b/sa-token-doc/doc.html @@ -106,7 +106,6 @@ 首页 文档 - 案例
视频 @@ -128,11 +127,12 @@
+ 案例 + 加入讨论群 需求提交 - 加入讨论群 - 赞助 - 🔥 SSO商业版 + + 🔥 SSO/OAuth2 商业版
相关资源 @@ -615,7 +615,10 @@ } var mssg = 'Sa-Token 正在参加 Gitee 2025 最受欢迎开源软件投票活动。如果 Sa-Token 帮到了你,希望你可以来支持一下,这对我们非常重要,感谢! ❤️ ❤️ ❤️
' + '
https://gitee.com/activity/2025opensource?ident=IGPG3R
'; - layer.alert(mssg) + layer.alert(mssg, {}, function(index){ + open('https://gitee.com/activity/2025opensource?ident=IGPG3R'); + layer.close(index) + }) localStorage.isTanChu = new Date().getTime(); } toupiao(); diff --git a/sa-token-doc/index.html b/sa-token-doc/index.html index f874ae3b..892feff2 100644 --- a/sa-token-doc/index.html +++ b/sa-token-doc/index.html @@ -55,7 +55,6 @@
--> 首页 文档 - 案例
视频 @@ -77,11 +76,12 @@
+ 案例 + 加入讨论群 需求提交 - 加入讨论群 - 赞助 - 🔥 SSO商业版 + + 🔥 SSO/OAuth2 商业版
相关资源 @@ -1332,7 +1332,10 @@ } var mssg = 'Sa-Token 正在参加 Gitee 2025 最受欢迎开源软件投票活动。如果 Sa-Token 帮到了你,希望你可以来支持一下,这对我们非常重要,感谢! ❤️ ❤️ ❤️
' + '
https://gitee.com/activity/2025opensource?ident=IGPG3R
'; - layer.alert(mssg) + layer.alert(mssg, {}, function(index){ + open('https://gitee.com/activity/2025opensource?ident=IGPG3R'); + layer.close(index) + }) localStorage.isTanChu = new Date().getTime(); } toupiao(); diff --git a/sa-token-doc/pro/st_doc_top.md b/sa-token-doc/pro/st_doc_top.md new file mode 100644 index 00000000..a79ff09d --- /dev/null +++ b/sa-token-doc/pro/st_doc_top.md @@ -0,0 +1,55 @@ +# Sa-Max 统一认证商业版 + +### 项目介绍 + +根据 SSO / OAuth2 模块文档,以及官网提供的源码示例,您可以很方便的搭建一个 SSO / OAuth2 模式的认证 Demo 示例。 + +然而,要真正开发一个商业级项目的统一认证中心系统,绝非一朝一夕可以搭建完毕,为此我们特意准备了项目: +[[ Sa-Max 统一认证商业版 ]](https://sa-pro.yun94.cn?way=st_doc_top)。 + +项目基于 Sa-Token 搭建,集成了统一认证常见技术点,可大大缩短您的项目接入统一授权认证的开发周期: +- 支持:同域、跨域、共享Redis、跨Redis、前后端一体、前后端分离、纯 js、vue2、vue3、java 项目、非 java 项目 等架构下的 SSO 认证需求。 +- 支持:API Key、OAuth2.0 统一认证能力, 并提供开放平台,供第三方公司申请应用对接平台能力。 + +全套源码交付、不包含加密 jar 、可自由二开。不限制域名、不限制项目数量。 + + + + + +### 释疑 + +##### 1、Sa-Max 是收费项目吗?与 Sa-Token 有什么不同? + +`Sa-Max` 是付费项目,暂不开放源码,如需使用需要购买项目授权,您可以在其主页了解更多详细信息。 + +`Sa-Max` 与 `Sa-Token` 的区别,简单来讲: +- `Sa-Token` 是一个框架,需要在项目中通过 pom.xml 引入 +- `Sa-Max` 是一个完整项目,下载源码后可直接启动 + + +##### 2、Sa-Token 会不会在某一天收费?导致我们项目无法正常运行? +首先我们需要了解一点:**已经发布到 Maven 中央仓库的代码,是不可以删除的**,所以这部分代码是无法做到收费的 + +其次,像中间件框架,业界没有收费的先例,也没有对应的商业模式,一般的付费项目都是一些成型的完整项目,以解决特定场景的业务需求为目的, +比如:聊天通信、刷脸认证、短信验证码、聚合支付……等等。 + +Sa-Max 并非随意收费,只有当您的系统需要 **统一认证中心** 时您才会用到它,花一笔小钱节省大量开发工期,整体来看,这是非常划算的。 + +另外:即使您没有购买 `Sa-Max`,也不会影响到您对 `Sa-Token` 的使用,举个例子:MySQL具有社区版与企业版,即使您没有购买其付费版,也不会影响到您对免费 MySql 的使用。 + + + +##### 3、Sa-Token 团队日后的主要精力是不是放在 Sa-Max 上,降低对 Sa-Token 的支持?毕竟 Sa-Token 是免费的! + +答案是不会。 + +再次强调一下:`Sa-Token` 与 `Sa-Max` 是两个独立的项目,两者互不影响。 +付费项目的出现不会降低对 `Sa-Token` 的支持,`Sa-Token`将会按照原有的发展继续升级迭代。 + +实际结果可能会恰恰相反:有了盈利来源,`Sa-Token`将发展的更快。 + + + + + diff --git a/sa-token-doc/pro/st_index_top.md b/sa-token-doc/pro/st_index_top.md new file mode 100644 index 00000000..5f953986 --- /dev/null +++ b/sa-token-doc/pro/st_index_top.md @@ -0,0 +1,55 @@ +# Sa-Max 统一认证商业版 + +### 项目介绍 + +根据 SSO / OAuth2 模块文档,以及官网提供的源码示例,您可以很方便的搭建一个 SSO / OAuth2 模式的认证 Demo 示例。 + +然而,要真正开发一个商业级项目的统一认证中心系统,绝非一朝一夕可以搭建完毕,为此我们特意准备了项目: +[[ Sa-Max 统一认证商业版 ]](https://sa-pro.yun94.cn?way=st_index_top)。 + +项目基于 Sa-Token 搭建,集成了统一认证常见技术点,可大大缩短您的项目接入统一授权认证的开发周期: +- 支持:同域、跨域、共享Redis、跨Redis、前后端一体、前后端分离、纯 js、vue2、vue3、java 项目、非 java 项目 等架构下的 SSO 认证需求。 +- 支持:API Key、OAuth2.0 统一认证能力, 并提供开放平台,供第三方公司申请应用对接平台能力。 + +全套源码交付、不包含加密 jar 、可自由二开。不限制域名、不限制项目数量。 + + + + + +### 释疑 + +##### 1、Sa-Max 是收费项目吗?与 Sa-Token 有什么不同? + +`Sa-Max` 是付费项目,暂不开放源码,如需使用需要购买项目授权,您可以在其主页了解更多详细信息。 + +`Sa-Max` 与 `Sa-Token` 的区别,简单来讲: +- `Sa-Token` 是一个框架,需要在项目中通过 pom.xml 引入 +- `Sa-Max` 是一个完整项目,下载源码后可直接启动 + + +##### 2、Sa-Token 会不会在某一天收费?导致我们项目无法正常运行? +首先我们需要了解一点:**已经发布到 Maven 中央仓库的代码,是不可以删除的**,所以这部分代码是无法做到收费的 + +其次,像中间件框架,业界没有收费的先例,也没有对应的商业模式,一般的付费项目都是一些成型的完整项目,以解决特定场景的业务需求为目的, +比如:聊天通信、刷脸认证、短信验证码、聚合支付……等等。 + +Sa-Max 并非随意收费,只有当您的系统需要 **统一认证中心** 时您才会用到它,花一笔小钱节省大量开发工期,整体来看,这是非常划算的。 + +另外:即使您没有购买 `Sa-Max`,也不会影响到您对 `Sa-Token` 的使用,举个例子:MySQL具有社区版与企业版,即使您没有购买其付费版,也不会影响到您对免费 MySql 的使用。 + + + +##### 3、Sa-Token 团队日后的主要精力是不是放在 Sa-Max 上,降低对 Sa-Token 的支持?毕竟 Sa-Token 是免费的! + +答案是不会。 + +再次强调一下:`Sa-Token` 与 `Sa-Max` 是两个独立的项目,两者互不影响。 +付费项目的出现不会降低对 `Sa-Token` 的支持,`Sa-Token`将会按照原有的发展继续升级迭代。 + +实际结果可能会恰恰相反:有了盈利来源,`Sa-Token`将发展的更快。 + + + + + diff --git a/sa-token-doc/pro/st_oauth2.md b/sa-token-doc/pro/st_oauth2.md new file mode 100644 index 00000000..417c0d9b --- /dev/null +++ b/sa-token-doc/pro/st_oauth2.md @@ -0,0 +1,55 @@ +# Sa-Max 统一认证商业版 + +### 项目介绍 + +根据 OAuth2 模块文档,以及官网提供的源码示例,您可以很方便的搭建一个 OAuth2 模式的认证 Demo 示例。 + +然而,要真正开发一个商业级项目的统一认证中心系统,绝非一朝一夕可以搭建完毕,为此我们特意准备了项目: +[[ Sa-Max 统一认证商业版 ]](https://sa-pro.yun94.cn?way=st_oauth2)。 + +项目基于 Sa-Token 搭建,集成了统一认证常见技术点,可大大缩短您的项目接入统一授权认证的开发周期: +- 支持:同域、跨域、共享Redis、跨Redis、前后端一体、前后端分离、纯 js、vue2、vue3、java 项目、非 java 项目 等架构下的 SSO 认证需求。 +- 支持:API Key、OAuth2.0 统一认证能力, 并提供开放平台,供第三方公司申请应用对接平台能力。 + +全套源码交付、不包含加密 jar 、可自由二开。不限制域名、不限制项目数量。 + + + + + +### 释疑 + +##### 1、Sa-Max 是收费项目吗?与 Sa-Token 有什么不同? + +`Sa-Max` 是付费项目,暂不开放源码,如需使用需要购买项目授权,您可以在其主页了解更多详细信息。 + +`Sa-Max` 与 `Sa-Token` 的区别,简单来讲: +- `Sa-Token` 是一个框架,需要在项目中通过 pom.xml 引入 +- `Sa-Max` 是一个完整项目,下载源码后可直接启动 + + +##### 2、Sa-Token 会不会在某一天收费?导致我们项目无法正常运行? +首先我们需要了解一点:**已经发布到 Maven 中央仓库的代码,是不可以删除的**,所以这部分代码是无法做到收费的 + +其次,像中间件框架,业界没有收费的先例,也没有对应的商业模式,一般的付费项目都是一些成型的完整项目,以解决特定场景的业务需求为目的, +比如:聊天通信、刷脸认证、短信验证码、聚合支付……等等。 + +Sa-Max 并非随意收费,只有当您的系统需要 **统一认证中心** 时您才会用到它,花一笔小钱节省大量开发工期,整体来看,这是非常划算的。 + +另外:即使您没有购买 `Sa-Max`,也不会影响到您对 `Sa-Token` 的使用,举个例子:MySQL具有社区版与企业版,即使您没有购买其付费版,也不会影响到您对免费 MySql 的使用。 + + + +##### 3、Sa-Token 团队日后的主要精力是不是放在 Sa-Max 上,降低对 Sa-Token 的支持?毕竟 Sa-Token 是免费的! + +答案是不会。 + +再次强调一下:`Sa-Token` 与 `Sa-Max` 是两个独立的项目,两者互不影响。 +付费项目的出现不会降低对 `Sa-Token` 的支持,`Sa-Token`将会按照原有的发展继续升级迭代。 + +实际结果可能会恰恰相反:有了盈利来源,`Sa-Token`将发展的更快。 + + + + + diff --git a/sa-token-doc/pro/st_sso.md b/sa-token-doc/pro/st_sso.md new file mode 100644 index 00000000..159eeb90 --- /dev/null +++ b/sa-token-doc/pro/st_sso.md @@ -0,0 +1,55 @@ +# Sa-Pro 单点登录商业版 + +### 项目介绍 + +根据 SSO 模块文档,以及官网提供的源码示例,您可以很方便的搭建一个SSO模式的认证 Demo 示例。 + +然而,要真正开发一个商业级项目的统一认证中心系统,绝非一朝一夕可以搭建完毕,为此,我们特意准备了项目: +[[ Sa-Pro 单点登录商业版 ]](https://sa-pro.yun94.cn?way=st_sso)。 + +项目基于 Sa-Token 搭建,集成了单点登录常见技术点,可解决: +同域、跨域、共享Redis、跨Redis、前后端一体、前后端分离、纯 js、vue2、vue3、java 项目、非 java 项目 等架构下的 SSO 认证需求。 +可大大缩短您的项目接入单点登录的开发周期。 + +全套源码交付、不包含加密 jar 、可自由二开。不限制域名、不限制项目数量。 + + + + + +### 释疑 + +##### 1、Sa-Pro 是收费项目吗?与 Sa-Token 有什么不同? + +`Sa-Pro` 是付费项目,暂不开放源码,如需使用需要购买项目授权,您可以在其主页了解更多详细信息。 + +`Sa-Pro` 与 `Sa-Token` 的区别,简单来讲: +- `Sa-Token` 是一个框架,需要在项目中通过 pom.xml 引入 +- `Sa-Pro` 是一个完整项目,下载源码后可直接启动 + + +##### 2、Sa-Token 会不会在某一天收费?导致我们项目无法正常运行? +首先我们需要了解一点:**已经发布到 Maven 中央仓库的代码,是不可以删除的**,所以这部分代码是无法做到收费的 + +其次,像中间件框架,业界没有收费的先例,也没有对应的商业模式,一般的付费项目都是一些成型的完整项目,以解决特定场景的业务需求为目的, +比如:聊天通信、刷脸认证、短信验证码、聚合支付……等等。 + +Sa-Pro 并非随意收费,只有当您的系统需要 **统一认证中心** 时您才会用到它,花一笔小钱节省大量开发工期,整体来看,这是非常划算的。 + +另外:即使您没有购买 `Sa-Pro`,也不会影响到您对 `Sa-Token` 的使用,举个例子:MySQL具有社区版与企业版,即使您没有购买其付费版,也不会影响到您对免费 MySql 的使用。 + + + +##### 3、Sa-Token 团队日后的主要精力是不是放在 Sa-Pro 上,降低对 Sa-Token 的支持?毕竟 Sa-Token 是免费的! + +答案是不会。 + +再次强调一下:`Sa-Token` 与 `Sa-Pro` 是两个独立的项目,两者互不影响。 +付费项目的出现不会降低对 `Sa-Token` 的支持,`Sa-Token`将会按照原有的发展继续升级迭代。 + +实际结果可能会恰恰相反:有了盈利来源,`Sa-Token`将发展的更快。 + + + + + diff --git a/sa-token-doc/start/download.md b/sa-token-doc/start/download.md index 6655f2b5..26a16b2d 100644 --- a/sa-token-doc/start/download.md +++ b/sa-token-doc/start/download.md @@ -168,132 +168,9 @@ Maven依赖一直无法加载成功?[参考解决方案](https://sa-token.cc/d - **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) - 开源不易,求鼓励,点个`star`吧 -- 源码目录介绍: +- 源码目录介绍: - [仓库目录](/arch/dir-intro) -``` js -── sa-token - ├── sa-token-core // [核心] Sa-Token 核心模块 - ├── sa-token-dependencies // [依赖] Sa-Token 依赖版本信息 - ├── sa-token-bom // [核心] Sa-Token bom 包 - ├── sa-token-starter // [整合] Sa-Token 与其它框架整合 - ├── sa-token-servlet // [整合] Sa-Token 整合 Servlet 容器实现类包 - ├── sa-token-spring-boot-starter // [整合] Sa-Token 整合 SpringBoot2 快速集成 - ├── sa-token-reactor-spring-boot-starter // [整合] Sa-Token 整合 SpringBoot2 Reactor 响应式编程 快速集成 - ├── sa-token-jakarta-servlet // [整合] Sa-Token 整合 Jakarta-Servlet 容器实现类包 - ├── sa-token-spring-boot3-starter // [整合] Sa-Token 整合 SpringBoot3 快速集成 - ├── sa-token-reactor-spring-boot3-starter // [整合] Sa-Token 整合 SpringBoot3 Reactor 响应式编程 快速集成 - ├── sa-token-spring-boot-autoconfig // [整合] Sa-Token 整合 SpringBoot 自动配置包 - ├── sa-token-solon-plugin // [整合] Sa-Token 整合 Solon 快速集成 - ├── sa-token-jfinal-plugin // [整合] Sa-Token 整合 JFinal 快速集成 - ├── sa-token-jboot-plugin // [整合] Sa-Token 整合 jboot 快速集成 - ├── sa-token-plugin // [插件] Sa-Token 插件合集 - ├── sa-token-jackson // [插件] Sa-Token 整合 Jackson (json序列化插件) - ├── sa-token-fastjson // [插件] Sa-Token 整合 Fastjson (json序列化插件) - ├── sa-token-fastjson2 // [插件] Sa-Token 整合 Fastjson (json序列化插件) - ├── sa-token-snack3 // [插件] Sa-Token 整合 Snack3 (json序列化插件) - ├── sa-token-hutool-timed-cache // [插件] Sa-Token 整合 Hutool 缓存组件 Timed-Cache(基于内存) (数据缓存插件) - ├── sa-token-caffeine // [插件] Sa-Token 整合 Caffeine 缓存组件(基于内存) (数据缓存插件) - ├── sa-token-thymeleaf // [插件] Sa-Token 整合 Thymeleaf (自定义标签方言) - ├── sa-token-freemarker // [插件] Sa-Token 整合 Freemarker (自定义标签方言) - ├── sa-token-dubbo // [插件] Sa-Token 整合 Dubbo (RPC 调用鉴权、状态传递) - ├── sa-token-dubbo3 // [插件] Sa-Token 整合 Dubbo3 (RPC 调用鉴权、状态传递) - ├── sa-token-temp-jwt // [插件] Sa-Token 整合 jjwt (临时 Token) - ├── sa-token-sso // [插件] Sa-Token 实现 SSO 单点登录 - ├── sa-token-oauth2 // [插件] Sa-Token 实现 OAuth2.0 认证 - ├── sa-token-apikey // [插件] Sa-Token 实现 API Key 认证 - ├── sa-token-sign // [插件] Sa-Token 实现 API 参数签名 - ├── sa-token-redisson // [插件] Sa-Token 整合 Redisson (数据缓存插件) - ├── sa-token-redisx // [插件] Sa-Token 整合 Redisx (数据缓存插件) - ├── sa-token-serializer-features // [插件] Sa-Token 序列化实现扩展 - ├── sa-token-redis-template // [插件] Sa-Token 整合 RedisTemplate (数据缓存插件) - ├── sa-token-redis-template-jdk-serializer // [插件] Sa-Token 整合 RedisTemplate - 使用 jdk 序列化算法 (数据缓存插件) - ├── sa-token-redis-jackson // [插件] Sa-Token 整合 RedisTemplate - 使用 Jackson 序列化算法 (数据缓存插件) - ├── sa-token-alone-redis // [插件] Sa-Token 独立 Redis 插件,实现 [ 权限缓存与业务缓存分离 ] - ├── sa-token-spring-aop // [插件] Sa-Token 整合 SpringAOP 注解鉴权 - ├── sa-token-spring-el // [插件] Sa-Token 实现 SpringEL 表达式注解鉴权 - ├── sa-token-grpc // [插件] Sa-Token 整合 gRPC (RPC 调用鉴权、状态传递) - ├── sa-token-quick-login // [插件] Sa-Token 快速注入登录页插件 - ├── sa-token-redisson-spring-boot-starter // [插件] Sa-Token 整合 Redisson - SpringBoot 自动配置包 (数据缓存插件) - ├── sa-token-forest // [插件] Sa-Token 整合 Forest,http 请求处理器 - ├── sa-token-okhttps // [插件] Sa-Token 整合 OkHttps,http 请求处理器 - ├── sa-token-demo // [示例] Sa-Token 示例合集 - ├── sa-token-demo-alone-redis // [示例] Sa-Token 集成 alone-redis 模块 - ├── sa-token-demo-alone-redis-cluster // [示例] Sa-Token 集成 alone-redis 模块、集群模式 - ├── sa-token-demo-apikey // [示例] Sa-Token API Key 模块示例 - ├── sa-token-demo-async // [示例] Sa-Token 异步场景示例 - ├── sa-token-demo-beetl // [示例] Sa-Token 集成 beetl 示例 - ├── sa-token-demo-bom-import // [示例] Sa-Token bom 包导入示例 - ├── sa-token-demo-case // [示例] Sa-Token 各模块示例 - ├── sa-token-demo-device-lock // [示例] Sa-Token 设备锁登录示例 - 后端 - ├── sa-token-demo-device-lock-h5 // [示例] Sa-Token 设备锁登录示例 - 前端 - ├── sa-token-demo-dubbo // [示例] Sa-Token 集成 dubbo - ├── sa-token-demo-dubbo-consumer // [示例] Sa-Token 集成 dubbo 鉴权,消费端(调用端) - ├── sa-token-demo-dubbo-provider // [示例] Sa-Token 集成 dubbo 鉴权,生产端(被调用端) - ├── sa-token-demo-dubbo3-consumer // [示例] Sa-Token 集成 dubbo3 鉴权,消费端(调用端) - ├── sa-token-demo-dubbo3-provider // [示例] Sa-Token 集成 dubbo3 鉴权,生产端(被调用端) - ├── sa-token-demo-freemarker // [示例] Sa-Token 集成 Freemarker 标签方言 - ├── sa-token-demo-grpc // [示例] Sa-Token 集成 grpc 鉴权 - ├── client // [示例] Sa-Token 集成 grpc 鉴权,client 端 - ├── server // [示例] Sa-Token 集成 grpc 鉴权,server 端 - ├── sa-token-demo-hutool-timed-cache // [示例] Sa-Token 集成 hutool timed-cache - ├── sa-token-demo-caffeine // [示例] Sa-Token 集成 Caffeine - ├── sa-token-demo-jwt // [示例] Sa-Token 集成 jwt 登录认证 - ├── sa-token-demo-oauth2 // [示例] Sa-Token 集成 OAuth2.0 - ├── sa-token-demo-oauth2-client // [示例] Sa-Token 集成 OAuth2.0 (客户端) - ├── sa-token-demo-oauth2-client-h5 // [示例] Sa-Token OAuth2 前端测试页 - ├── sa-token-demo-oauth2-server // [示例] Sa-Token 集成 OAuth2.0 (服务端) - ├── sa-token-demo-oauth2-server-h5 // [示例] Sa-Token 集成 OAuth2.0 (服务端 - 前后台分离示例) - ├── sa-token-demo-quick-login // [示例] Sa-Token 集成 quick-login 模块 - ├── sa-token-demo-quick-login-sb3 // [示例] Sa-Token 集成 quick-login 模块 (SpringBoot3) - ├── sa-token-demo-remember-me // [示例] Sa-Token 实现 [ 记住我 ] 模式 - ├── page_project // [示例] Sa-Token 实现 [ 记住我 ] 模式、前端页面 - ├── sa-token-demo-remember-me-server // [示例] Sa-Token 实现 [ 记住我 ] 模式、后端接口 - ├── sa-token-demo-solon // [示例] Sa-Token 集成 Solon - ├── sa-token-demo-solon-reisson // [示例] Sa-Token 集成 Solon、Reisson - ├── sa-token-demo-springboot // [示例] Sa-Token 整合 SpringBoot - ├── sa-token-demo-springboot3-redis // [示例] Sa-Token 整合 SpringBoot3 整合 Redis - ├── sa-token-demo-springboot-low-version // [示例] Sa-Token 整合 SpringBoot2 低版本 - ├── sa-token-demo-springboot-redis // [示例] Sa-Token 整合 SpringBoot 整合 Redis - ├── sa-token-demo-springboot-redisson // [示例] Sa-Token 整合 SpringBoot 整合 redisson - ├── sa-token-demo-sse // [示例] 在 SSE 中使用 Sa-Token - ├── sa-token-demo-ssm // [示例] 在 SSM 中使用 Sa-Token - ├── sa-token-demo-sso // [示例] Sa-Token 集成 SSO 单点登录 - ├── sa-token-demo-sso-server // [示例] Sa-Token 集成 SSO单点登录-Server认证中心 - ├── sa-token-demo-sso1-client // [示例] Sa-Token 集成 SSO单点登录-模式一 应用端 (同域、同Redis) - ├── sa-token-demo-sso2-client // [示例] Sa-Token 集成 SSO单点登录-模式二 应用端 (跨域、同Redis) - ├── sa-token-demo-sso3-client // [示例] Sa-Token 集成 SSO单点登录-模式三 应用端 (跨域、跨Redis) - ├── sa-token-demo-sso3-client-nosdk // [示例] Sa-Token 集成 SSO单点登录-模式三 应用端 (不使用sdk,纯手动对接) - ├── sa-token-demo-sso3-client-resdk // [示例] Sa-Token 集成 SSO单点登录-模式三 应用端 (ReSdk 模式,重写部分方法对接任意技术栈) - ├── sa-token-demo-sso3-client-anon // [示例] Sa-Token 集成 SSO单点登录-模式三 应用端 (匿名应用接入示例) - ├── sa-token-demo-sso-server-h5 // [示例] Sa-Token 集成 SSO单点登录-Server认证中心 (前后端分离) - ├── sa-token-demo-sso-client-h5 // [示例] Sa-Token 集成 SSO单点登录-client应用端 (前后端分离-原生h5 版本) - ├── sa-token-demo-sso-server-vue2 // [示例] Sa-Token 集成 SSO单点登录-client应用端 (前后端分离-Vue2 版本) - ├── sa-token-demo-sso-client-vue3 // [示例] Sa-Token 集成 SSO单点登录-client应用端 (前后端分离-Vue3 版本) - ├── sa-token-demo-sso-for-solon // [示例] Sa-Token 集成 SSO 单点登录(Solon 版) - ├── sa-token-demo-sso-server-solon // [示例] Sa-Token 集成 SSO单点登录-Server认证中心 - ├── sa-token-demo-sso1-client-solon // [示例] Sa-Token 集成 SSO单点登录-模式一 应用端 (同域、同Redis) - ├── sa-token-demo-sso2-client-solon // [示例] Sa-Token 集成 SSO单点登录-模式二 应用端 (跨域、同Redis) - ├── sa-token-demo-sso3-client-solon // [示例] Sa-Token 集成 SSO单点登录-模式三 应用端 (跨域、跨Redis) - ├── sa-token-demo-test // [示例] Sa-Token 整合测试项目 - ├── sa-token-demo-thymeleaf // [示例] Sa-Token 集成 Thymeleaf 标签方言 - ├── sa-token-demo-webflux // [示例] Sa-Token 整合 WebFlux - ├── sa-token-demo-webflux-springboot3 // [示例] Sa-Token 整合 WebFlux (SpringBoot3) - ├── sa-token-demo-websocket // [示例] Sa-Token 集成 Web-Socket 鉴权示例 - ├── sa-token-demo-websocket-spring // [示例] Sa-Token 集成 Web-Socket(Spring封装版) 鉴权示例 - ├── pom.xml // 示例 pom 文件,用于帮助在 idea 中一键导入所有 demo - - ├── sa-token-test // [测试] Sa-Token 单元测试合集 - ├── sa-token-springboot-test // [测试] Sa-Token SpringBoot 整合测试 - ├── sa-token-jwt-test // [测试] Sa-Token jwt 整合测试 - ├── sa-token-doc // [文档] Sa-Token 开发文档 - ├── pom.xml // [依赖] 顶级pom文件 -``` -其它: - -- [sa-token-demo-cross](https://gitee.com/sa-tokens/sa-token-demo-cross):Sa-Token 处理跨域示例。 -- [sa-token-three-plugin](https://gitee.com/sa-tokens/sa-token-three-plugin):Sa-Token 第三方插件合集。 -- [sa-token-study](https://gitee.com/sa-tokens/sa-token-study):Sa-Token 涉及知识点学习。