2022-08-26 16:16:05 +08:00
|
|
|
|
# 和 grpc 集成
|
|
|
|
|
|
|
|
|
|
本插件的作用是让 Sa-Token 和 grpc 做一个整合。
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
和dubbo插件一样,解决了以下问题
|
|
|
|
|
|
|
|
|
|
1. 在 [ 被调用端 ] 安全的调用 Sa-Token 相关 API。
|
|
|
|
|
2. 在 [ 调用端 ] 登录的会话,其登录状态可以自动传递到 [ 被调用端 ] ;在 [ 被调用端 ] 登录的会话,其登录状态可以自动回传到 [ 调用端 ]
|
2022-10-24 12:25:22 +08:00
|
|
|
|
3. Same-Token 安全校验
|
2022-08-26 16:16:05 +08:00
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
和dubbo插件一样,具有以下限制:
|
|
|
|
|
|
|
|
|
|
1. [ 调用端 ] 与 [ 被调用端 ] 的 `SaStorage` 数据无法互通。
|
|
|
|
|
2. [ 被调用端 ] 执行的 `SaResponse.setHeader()`、`setStatus()` 等代码无效。
|
|
|
|
|
|
|
|
|
|
### 引入插件
|
|
|
|
|
需要springboot环境,添加依赖(调用端和被调用端都需要引入):
|
|
|
|
|
|
2022-10-20 13:06:36 +08:00
|
|
|
|
<!---------------------------- tabs:start ---------------------------->
|
|
|
|
|
<!-------- tab:Maven 方式 -------->
|
|
|
|
|
``` xml
|
2022-08-26 16:16:05 +08:00
|
|
|
|
<!-- Sa-Token 整合 grpc -->
|
|
|
|
|
<dependency>
|
|
|
|
|
<groupId>cn.dev33</groupId>
|
2023-05-14 01:32:49 +08:00
|
|
|
|
<artifactId>sa-token-grpc</artifactId>
|
2022-08-26 16:16:05 +08:00
|
|
|
|
<version>${sa.top.version}</version>
|
|
|
|
|
</dependency>
|
|
|
|
|
```
|
2022-10-20 13:06:36 +08:00
|
|
|
|
<!-------- tab:Gradle 方式 -------->
|
|
|
|
|
``` gradle
|
|
|
|
|
// Sa-Token 整合 grpc
|
2023-05-14 01:32:49 +08:00
|
|
|
|
implementation 'cn.dev33:sa-token-grpc:${sa.top.version}'
|
2022-10-20 13:06:36 +08:00
|
|
|
|
```
|
|
|
|
|
<!---------------------------- tabs:end ---------------------------->
|
|
|
|
|
|
2022-08-26 16:16:05 +08:00
|
|
|
|
|
|
|
|
|
---
|
2022-10-24 12:25:22 +08:00
|
|
|
|
### 开启 Same-Token 校验:
|
2022-08-26 16:16:05 +08:00
|
|
|
|
直接在 `application.yml` 配置即可:
|
|
|
|
|
|
2022-10-20 13:06:36 +08:00
|
|
|
|
<!---------------------------- tabs:start ---------------------------->
|
|
|
|
|
<!------------- tab:yaml 风格 ------------->
|
|
|
|
|
``` yaml
|
2022-08-26 16:16:05 +08:00
|
|
|
|
sa-token:
|
|
|
|
|
# 打开 RPC 调用鉴权
|
2022-10-24 12:25:22 +08:00
|
|
|
|
check-same-token: true
|
2022-10-20 13:06:36 +08:00
|
|
|
|
```
|
|
|
|
|
<!------------- tab:properties 风格 ------------->
|
|
|
|
|
``` properties
|
|
|
|
|
# 打开 RPC 调用鉴权
|
2022-10-24 12:25:22 +08:00
|
|
|
|
sa-token.check-same-token=true
|
2022-10-20 13:06:36 +08:00
|
|
|
|
```
|
|
|
|
|
<!---------------------------- tabs:end ---------------------------->
|