From 131d163fa9142b210e491797088ebdb88987e9b5 Mon Sep 17 00:00:00 2001 From: click33 <2393584716@qq.com> Date: Sat, 25 May 2024 11:45:31 +0800 Subject: [PATCH 01/14] =?UTF-8?q?=E6=9B=B4=E6=8D=A2=E5=8A=A0=E7=BE=A4?= =?UTF-8?q?=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 ++-- sa-token-doc/more/join-group.md | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 1de42a1b..7ec1d0ff 100644 --- a/README.md +++ b/README.md @@ -194,9 +194,9 @@ QQ交流群:936523917 [点击加入](https://qm.qq.com/q/xfoMJA5Az0) 微信交流群: - + - + (扫码添加微信,备注:sa-token,邀您加入群聊) diff --git a/sa-token-doc/more/join-group.md b/sa-token-doc/more/join-group.md index 732d3586..2ca7611a 100644 --- a/sa-token-doc/more/join-group.md +++ b/sa-token-doc/more/join-group.md @@ -15,9 +15,9 @@ QQ交流群:936523917 [点击加入](https://qm.qq.com/q/xfoMJA5Az0) ### 2、加入微信交流群: -![微信群](https://oss.dev33.cn/sa-token/wx-qr-300.png ':size=180') + - +![微信群](https://oss.dev33.cn/sa-token/qr/i-wx-qr2.png ':size=175') (扫码添加微信,备注:sa,邀您加入群聊) From 3a81e5f5374055b8f14ea126d89c89dbe5369f13 Mon Sep 17 00:00:00 2001 From: click33 <2393584716@qq.com> Date: Mon, 27 May 2024 10:40:15 +0800 Subject: [PATCH 02/14] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E9=83=A8=E5=88=86?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E6=8F=8F=E8=BF=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sa-token-doc/use/config.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sa-token-doc/use/config.md b/sa-token-doc/use/config.md index d9dbc48c..613b875c 100644 --- a/sa-token-doc/use/config.md +++ b/sa-token-doc/use/config.md @@ -221,7 +221,7 @@ sa-token.sign.secret-key=kQwIOrYvnXmSDkwEiFngrKidMcdrgKor | ticketTimeout | long | 300 | ticket 有效期 (单位: 秒) | | allowUrl | String | * | 所有允许的授权回调地址,多个用逗号隔开(不在此列表中的URL将禁止下放ticket),参考:[SSO整合:配置域名校验](/sso/sso-check-domain) | | homeRoute | String | | 主页路由:在 /sso/auth 登录后不指定 redirect 参数的情况下默认跳转的路由 | -| isSlo | Boolean | false | 是否打开单点注销功能 | +| isSlo | Boolean | true | 是否打开单点注销功能 | | isHttp | Boolean | false | 是否打开模式三(此值为 true 时将使用 http 请求:校验 ticket 值、单点注销、获取 userinfo),参考:[详解](/use/config?id=配置项详解:isHttp) | | autoRenewTimeout | Bolean | false | 是否在每次下发 ticket 时,自动续期 token 的有效期(根据全局 timeout 值) | | maxRegClient | int | 32 | 在 Access-Session 上记录 Client 信息的最高数量(-1=无限),超过此值将进行自动清退处理,先进先出 | From fc6761e020d48b77efcd6d56c93f7f01ecc34e28 Mon Sep 17 00:00:00 2001 From: noear Date: Mon, 27 May 2024 22:08:10 +0800 Subject: [PATCH 03/14] =?UTF-8?q?=E8=B0=83=E6=95=B4=20sa-token-redisson-ja?= =?UTF-8?q?ckson2=20=E5=86=85=E7=9A=84=E7=89=88=E6=9C=AC=E4=BE=9D=E8=B5=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sa-token-plugin/sa-token-redisson-jackson2/pom.xml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sa-token-plugin/sa-token-redisson-jackson2/pom.xml b/sa-token-plugin/sa-token-redisson-jackson2/pom.xml index 08b20901..fae05d9d 100644 --- a/sa-token-plugin/sa-token-redisson-jackson2/pom.xml +++ b/sa-token-plugin/sa-token-redisson-jackson2/pom.xml @@ -18,8 +18,8 @@ - 3.23.5 - 2.15.2 + 3.27.2 + 2.17.0 @@ -34,6 +34,7 @@ org.redisson redisson + ${redisson.version} org.yaml From f082880568bdee41881bb10e296d264e9f639faa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=97=E9=92=9F=E4=B8=80=E5=85=AD?= <1477007136@qq.com> Date: Thu, 6 Jun 2024 01:08:28 +0800 Subject: [PATCH 04/14] =?UTF-8?q?doc:=20=E5=A2=9E=E5=8A=A0=E4=BA=86=20Kotl?= =?UTF-8?q?in=20=E7=A4=BA=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sa-token-doc/start/webflux-example.md | 77 +++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) diff --git a/sa-token-doc/start/webflux-example.md b/sa-token-doc/start/webflux-example.md index fa43e661..be2577ee 100644 --- a/sa-token-doc/start/webflux-example.md +++ b/sa-token-doc/start/webflux-example.md @@ -34,6 +34,13 @@ // Sa-Token 权限认证(Reactor响应式集成),在线文档:https://sa-token.cc implementation 'cn.dev33:sa-token-reactor-spring-boot-starter:${sa.top.version}' ``` + + +注:如果你使用的是 `SpringBoot 3.x`,只需要将 `sa-token-reactor-spring-boot-starter` 修改为 `sa-token-reactor-spring-boot3-starter` 即可。 +``` gradle +// Sa-Token 权限认证(Reactor响应式集成),在线文档:https://sa-token.cc +implementation("cn.dev33:sa-token-reactor-spring-boot-starter:${sa.top.version}") +``` @@ -43,6 +50,8 @@ implementation 'cn.dev33:sa-token-reactor-spring-boot-starter:${sa.top.version}' ### 3、创建启动类 在项目中新建包 `com.pj` ,在此包内新建主类 `SaTokenDemoApplication.java`,输入以下代码: + + ``` java @SpringBootApplication public class SaTokenDemoApplication { @@ -53,8 +62,24 @@ public class SaTokenDemoApplication { } ``` + +```kotlin +@SpringBootApplication +class SaTokenDemoApplication + +fun main(args: Array) { + runApplication(*args) + println(SaManager.getConfig()) +} +``` + + + ### 4、创建全局过滤器 新建`SaTokenConfigure.java`,注册 Sa-Token 的全局过滤器 + + + ``` java /** * [Sa-Token 权限认证] 全局配置类 @@ -85,10 +110,41 @@ public class SaTokenConfigure { } } ``` + + +```kotlin +@Configuration +class SaTokenConfigure { + /** + * 注册 [Sa-Token全局过滤器] + */ + @Bean + fun saReactorFilter(): SaReactorFilter = SaReactorFilter() + // 指定 [拦截路由](此处为拦截所有path) + .addInclude("/**") + // 指定 [放行路由] + .addExclude("/favicon.ico") + // 指定[认证函数]: 每次请求执行 + .setAuth { + println("---------- sa全局认证") + // SaRouter.match("/test/test", SaFunction { StpUtil.checkLogin() }) + } + // 指定[异常处理函数]:每次[认证函数]发生异常时执行此函数 + .setError { e: Throwable -> + println("---------- sa全局异常 ") + SaResult.error(e.message) + } +} +``` + + 你只需要按照此格式复制代码即可,有关过滤器的详细用法,会在之后的章节详细介绍。 ### 5、创建测试Controller + + + ``` java @RestController @RequestMapping("/user/") @@ -114,6 +170,27 @@ public class UserController { } ``` + +```kotlin +@RestController +@RequestMapping("/user/") +class UserController { + + @RequestMapping("doLogin") + fun doLogin(username: String, password: String) = + // 此处仅作模拟示例,真实项目需要从数据库中查询数据进行比对 + if ("zhang" == username && "123456" == password) { + StpUtil.login(10001) + "登录成功" + } else "登录失败" + + @RequestMapping("isLogin") + fun isLogin() = "当前会话是否登录:" + StpUtil.isLogin() + +} +``` + + ### 6、运行 启动代码,从浏览器依次访问上述测试接口: From 4c59ace69af970c9e5e47dd753b1d9e454758118 Mon Sep 17 00:00:00 2001 From: Jelex Date: Fri, 7 Jun 2024 09:36:00 +0000 Subject: [PATCH 05/14] update sa-token-doc/sso/sso-check-domain.md. Signed-off-by: Jelex --- sa-token-doc/sso/sso-check-domain.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sa-token-doc/sso/sso-check-domain.md b/sa-token-doc/sso/sso-check-domain.md index db82615d..1af4ea02 100644 --- a/sa-token-doc/sso/sso-check-domain.md +++ b/sa-token-doc/sso/sso-check-domain.md @@ -33,7 +33,7 @@ sa-token: ``` properties # 配置允许单点登录的 url -sa-token.sso.allow-url=http://sa-sso-client1.com:9001/sso/login +sa-token.sso-server.allow-url=http://sa-sso-client1.com:9001/sso/login ``` From dd61ddb0c406c27c3b727ed4c34c1f84a0338782 Mon Sep 17 00:00:00 2001 From: click33 <2393584716@qq.com> Date: Tue, 11 Jun 2024 06:26:48 +0800 Subject: [PATCH 06/14] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E8=B5=9E=E5=8A=A9?= =?UTF-8?q?=E8=80=85=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sa-token-doc/index.html | 21 ++++++++++++++++++--- sa-token-doc/static/donate/donate-list.js | 14 ++++++++++++++ 2 files changed, 32 insertions(+), 3 deletions(-) diff --git a/sa-token-doc/index.html b/sa-token-doc/index.html index bb798bc2..0910c256 100644 --- a/sa-token-doc/index.html +++ b/sa-token-doc/index.html @@ -537,8 +537,11 @@ - + + +
@@ -795,10 +798,22 @@ - + + + + + + + + + + +

diff --git a/sa-token-doc/static/donate/donate-list.js b/sa-token-doc/static/donate/donate-list.js index ec1252e2..d2088651 100644 --- a/sa-token-doc/static/donate/donate-list.js +++ b/sa-token-doc/static/donate/donate-list.js @@ -1110,4 +1110,18 @@ var donateList = [ "msg": "感谢您的开源项目!", "date": "2024-05-07" }, + { + "name": "INS6", + "link": "https://gitee.com/feiyuchuixue", + "money": 188.0, + "msg": '感谢Sa-Token开源!Sz-Admin一个轻量化RBAC开源框架。', + "date": "2024-06-05" + }, + { + "name": "Zongyy", + "link": "https://gitee.com/zongyY11", + "money": 10.0, + "msg": "感谢您的开源项目!", + "date": "2024-06-05" + }, ] \ No newline at end of file From 9540df9e0168309f3b11b6060c59642365e678ce Mon Sep 17 00:00:00 2001 From: click33 <2393584716@qq.com> Date: Tue, 11 Jun 2024 13:57:01 +0800 Subject: [PATCH 07/14] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E8=B5=9E=E5=8A=A9?= =?UTF-8?q?=E8=80=85=E5=90=8D=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sa-token-doc/static/donate/donate-list.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sa-token-doc/static/donate/donate-list.js b/sa-token-doc/static/donate/donate-list.js index d2088651..98803048 100644 --- a/sa-token-doc/static/donate/donate-list.js +++ b/sa-token-doc/static/donate/donate-list.js @@ -1124,4 +1124,11 @@ var donateList = [ "msg": "感谢您的开源项目!", "date": "2024-06-05" }, + { + "name": "驰骋BPM", + "link": "https://gitee.com/chichengsoft", + "money": 100.0, + "msg": '感谢开源, 欢迎下载:驰骋低代码BPM https://gitee.com/opencc/JFlow', + "date": "2024-06-11" + }, ] \ No newline at end of file From ec40d9cda63b22e85b0d427c48157850fdef7e62 Mon Sep 17 00:00:00 2001 From: click33 <2393584716@qq.com> Date: Tue, 11 Jun 2024 17:14:18 +0800 Subject: [PATCH 08/14] =?UTF-8?q?=E6=9B=B4=E6=8D=A2=E5=8F=8B=E8=81=94logo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sa-token-doc/index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sa-token-doc/index.html b/sa-token-doc/index.html index 0910c256..b58219bf 100644 --- a/sa-token-doc/index.html +++ b/sa-token-doc/index.html @@ -746,8 +746,8 @@ - - + From a4177c3c7cc310350a11bada8840c013c3dc8612 Mon Sep 17 00:00:00 2001 From: click33 <2393584716@qq.com> Date: Wed, 12 Jun 2024 17:48:31 +0800 Subject: [PATCH 09/14] =?UTF-8?q?=E5=88=A0=E9=99=A4=E4=B8=8D=E5=BF=85?= =?UTF-8?q?=E8=A6=81=E7=9A=84=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sa-token-doc/index.html | 8 -------- 1 file changed, 8 deletions(-) diff --git a/sa-token-doc/index.html b/sa-token-doc/index.html index b58219bf..bf768c52 100644 --- a/sa-token-doc/index.html +++ b/sa-token-doc/index.html @@ -920,19 +920,11 @@

-

Sa-Token 公众号

From f9114ab749f8a6aeccd0dd8242a1d314410d94e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E5=85=88=E7=94=9F?= Date: Wed, 19 Jun 2024 15:22:51 +0800 Subject: [PATCH 10/14] =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E5=90=8E@SaCheckBasic=E6=9B=BF=E6=8D=A2=E4=B8=BA@SaCheckHttpBa?= =?UTF-8?q?sic?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/pj/test/AtController.java | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/sa-token-demo/sa-token-demo-springboot-redisson/src/main/java/com/pj/test/AtController.java b/sa-token-demo/sa-token-demo-springboot-redisson/src/main/java/com/pj/test/AtController.java index 3af4c603..92358348 100644 --- a/sa-token-demo/sa-token-demo-springboot-redisson/src/main/java/com/pj/test/AtController.java +++ b/sa-token-demo/sa-token-demo-springboot-redisson/src/main/java/com/pj/test/AtController.java @@ -1,14 +1,9 @@ package com.pj.test; +import cn.dev33.satoken.annotation.*; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import cn.dev33.satoken.annotation.SaCheckBasic; -import cn.dev33.satoken.annotation.SaCheckLogin; -import cn.dev33.satoken.annotation.SaCheckPermission; -import cn.dev33.satoken.annotation.SaCheckRole; -import cn.dev33.satoken.annotation.SaCheckSafe; -import cn.dev33.satoken.annotation.SaMode; import cn.dev33.satoken.stp.StpUtil; import cn.dev33.satoken.util.SaResult; @@ -71,7 +66,7 @@ public class AtController { } // 通过Basic认证后才可以进入 ---- http://localhost:8081/at/checkBasic - @SaCheckBasic(account = "sa:123456") + @SaCheckHttpBasic(account = "sa:123456") @RequestMapping("checkBasic") public SaResult checkBasic() { return SaResult.ok(); From a5d103e73bf8edb7715d83769fb9c9c278e1755c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E5=85=88=E7=94=9F?= Date: Wed, 19 Jun 2024 15:27:27 +0800 Subject: [PATCH 11/14] =?UTF-8?q?=E6=9B=B4=E6=96=B0demo-ssm=E9=87=8C?= =?UTF-8?q?=E9=9D=A2=E7=9A=84=E6=B3=A8=E8=A7=A3@SaCheckHttpBasic?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/pj/controller/AtController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sa-token-demo/sa-token-demo-ssm/src/main/java/com/pj/controller/AtController.java b/sa-token-demo/sa-token-demo-ssm/src/main/java/com/pj/controller/AtController.java index 88176cc0..ee0e9b36 100644 --- a/sa-token-demo/sa-token-demo-ssm/src/main/java/com/pj/controller/AtController.java +++ b/sa-token-demo/sa-token-demo-ssm/src/main/java/com/pj/controller/AtController.java @@ -65,7 +65,7 @@ public class AtController { } // 通过Basic认证后才可以进入 ---- http://localhost:8080/sa_token_demo_ssm_war/at/checkBasic - @SaCheckBasic(account = "sa:123456") + @SaCheckHttpBasic(account = "sa:123456") @RequestMapping("checkBasic") public SaResult checkBasic() { return SaResult.ok(); From 1b5022cb4a77d0cfc25dccbc2ccfcb8d2161267a Mon Sep 17 00:00:00 2001 From: click33 <2393584716@qq.com> Date: Fri, 21 Jun 2024 20:30:13 +0800 Subject: [PATCH 12/14] test submit --- sa-token-doc/_sidebar.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sa-token-doc/_sidebar.md b/sa-token-doc/_sidebar.md index c75611db..c8675b92 100644 --- a/sa-token-doc/_sidebar.md +++ b/sa-token-doc/_sidebar.md @@ -120,5 +120,5 @@ -






+







----- 到底线了 -----

\ No newline at end of file From 2c68248f7fe910d93062a97bfc3316f567214363 Mon Sep 17 00:00:00 2001 From: click33 <2393584716@qq.com> Date: Fri, 21 Jun 2024 20:33:39 +0800 Subject: [PATCH 13/14] test submit --- sa-token-doc/_sidebar.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sa-token-doc/_sidebar.md b/sa-token-doc/_sidebar.md index c8675b92..c75611db 100644 --- a/sa-token-doc/_sidebar.md +++ b/sa-token-doc/_sidebar.md @@ -120,5 +120,5 @@ -







+






----- 到底线了 -----

\ No newline at end of file From a113560019d5a4b1e5075871a10cffc72aa02305 Mon Sep 17 00:00:00 2001 From: click33 <2393584716@qq.com> Date: Fri, 21 Jun 2024 20:47:26 +0800 Subject: [PATCH 14/14] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=89=98=E7=AE=A1?= =?UTF-8?q?=E5=9C=B0=E5=9D=80=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index 7ec1d0ff..8ee0ded8 100644 --- a/README.md +++ b/README.md @@ -187,6 +187,14 @@ Sa-Token-OAuth2 模块分为四种授权模式,解决不同场景下的授权 - [[ Solon ]](https://gitee.com/noear/solon):一个更现代感的应用开发框架:更快、更小、更自由。 + +### 代码托管 +- 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/click33/sa-token](https://gitcode.com/click33/sa-token) + + + ### 交流群