From e6dc3ba4fe53068aefb919b22f0039a6bf33f318 Mon Sep 17 00:00:00 2001 From: smallchill Date: Sun, 14 Jul 2024 13:20:09 +0800 Subject: [PATCH] =?UTF-8?q?:zap:=204.1.0.RELEASE=20=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E8=AE=A4=E8=AF=81=E5=8D=87=E7=BA=A7=E4=B8=BA=E5=9B=BD=E5=AF=86?= =?UTF-8?q?=E7=AE=97=E6=B3=95=EF=BC=8C=E6=95=B0=E6=8D=AE=E5=BA=93password?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E5=86=85=E5=AE=B9=E6=97=A0=E9=9C=80=E5=8F=98?= =?UTF-8?q?=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 15 +++--- blade-auth/pom.xml | 2 +- .../auth/controller/AuthController.java | 9 +++- .../auth/granter/CaptchaTokenGranter.java | 12 +++-- .../auth/granter/PasswordTokenGranter.java | 13 ++++-- .../org/springblade/auth/utils/TokenUtil.java | 33 ++++++++++++- .../org/springblade/test/AesKeyGenerator.java | 23 ---------- .../springblade/test/SignKeyGenerator.java | 14 +++--- .../org/springblade/test/Sm2KeyGenerator.java | 46 +++++++++++++++++++ blade-common/pom.xml | 2 +- blade-gateway/pom.xml | 2 +- blade-ops/blade-admin/pom.xml | 2 +- blade-ops/blade-develop/pom.xml | 2 +- blade-ops/blade-report/pom.xml | 2 +- blade-ops/blade-resource/pom.xml | 2 +- blade-ops/blade-seata-order/pom.xml | 2 +- blade-ops/blade-seata-storage/pom.xml | 2 +- blade-ops/pom.xml | 4 +- blade-service-api/blade-demo-api/pom.xml | 2 +- blade-service-api/blade-desk-api/pom.xml | 2 +- blade-service-api/blade-dict-api/pom.xml | 2 +- blade-service-api/blade-scope-api/pom.xml | 2 +- blade-service-api/blade-system-api/pom.xml | 2 +- blade-service-api/blade-user-api/pom.xml | 2 +- blade-service-api/pom.xml | 4 +- blade-service/blade-demo/pom.xml | 2 +- blade-service/blade-desk/pom.xml | 2 +- blade-service/blade-log/pom.xml | 2 +- blade-service/blade-system/pom.xml | 2 +- blade-service/blade-user/pom.xml | 2 +- blade-service/pom.xml | 4 +- doc/nacos/blade.yaml | 15 ++++-- pom.xml | 16 +++---- script/docker/.env | 2 +- script/docker/docker-compose.yml | 3 +- script/kuboard/kuboard_spring-blade.yaml | 26 +++++------ 36 files changed, 180 insertions(+), 99 deletions(-) delete mode 100644 blade-auth/src/test/java/org/springblade/test/AesKeyGenerator.java create mode 100644 blade-auth/src/test/java/org/springblade/test/Sm2KeyGenerator.java diff --git a/README.md b/README.md index f6722e91..a992e1fe 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@

- Downloads + Downloads Build Status Build Status Coverage Status @@ -32,12 +32,13 @@ | 技术栈 | 版本 | |----------------------|------------| | Java | 17+ | -| Spring | 6.1.5 | -| Spring Boot | 3.2.4 | -| Spring Cloud | 2023.0.1 | -| Spring Cloud Alibaba | 2022.0.0.0 | -| Nacos Alibaba | 2.3.1 | -| Mybatis Plus | 3.5.6 | +| NodeJS | 18+ | +| Spring | 6.1.10 | +| Spring Boot | 3.2.7 | +| Spring Cloud | 2023.0.2 | +| Spring Cloud Alibaba | 2023.0.1.0 | +| Nacos Alibaba | 2.3.2 | +| Mybatis Plus | 3.5.7 | ## 工程结构 diff --git a/blade-auth/pom.xml b/blade-auth/pom.xml index 4f73a838..98cd480b 100644 --- a/blade-auth/pom.xml +++ b/blade-auth/pom.xml @@ -8,7 +8,7 @@ SpringBlade org.springblade - 4.0.0 + 4.1.0 blade-auth diff --git a/blade-auth/src/main/java/org/springblade/auth/controller/AuthController.java b/blade-auth/src/main/java/org/springblade/auth/controller/AuthController.java index 0529bc6b..3f9babff 100644 --- a/blade-auth/src/main/java/org/springblade/auth/controller/AuthController.java +++ b/blade-auth/src/main/java/org/springblade/auth/controller/AuthController.java @@ -16,9 +16,9 @@ package org.springblade.auth.controller; import com.wf.captcha.SpecCaptcha; -import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; import lombok.AllArgsConstructor; import org.springblade.auth.granter.ITokenGranter; import org.springblade.auth.granter.TokenGranterBuilder; @@ -92,4 +92,11 @@ public class AuthController { return R.data(Kv.init().set("key", key).set("image", specCaptcha.toBase64())); } + @PostMapping("/logout") + @Operation(summary = "登出") + public R logout() { + // 登出预留逻辑 + return R.data(Kv.init().set("code", "200").set("msg", "操作成功")); + } + } diff --git a/blade-auth/src/main/java/org/springblade/auth/granter/CaptchaTokenGranter.java b/blade-auth/src/main/java/org/springblade/auth/granter/CaptchaTokenGranter.java index 2bf81bd1..0762f935 100644 --- a/blade-auth/src/main/java/org/springblade/auth/granter/CaptchaTokenGranter.java +++ b/blade-auth/src/main/java/org/springblade/auth/granter/CaptchaTokenGranter.java @@ -20,6 +20,7 @@ import org.springblade.auth.enums.BladeUserEnum; import org.springblade.auth.utils.TokenUtil; import org.springblade.common.cache.CacheNames; import org.springblade.core.log.exception.ServiceException; +import org.springblade.core.secure.props.BladeAuthProperties; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.*; import org.springblade.system.user.entity.UserInfo; @@ -42,6 +43,8 @@ public class CaptchaTokenGranter implements ITokenGranter { private IUserClient userClient; private RedisUtil redisUtil; + private BladeAuthProperties authProperties; + @Override public UserInfo grant(TokenParameter tokenParameter) { HttpServletRequest request = WebUtil.getRequest(); @@ -62,14 +65,17 @@ public class CaptchaTokenGranter implements ITokenGranter { if (Func.isNoneBlank(account, password)) { // 获取用户类型 String userType = tokenParameter.getArgs().getStr("userType"); + // 解密密码 + String decryptPassword = TokenUtil.decryptPassword(password, authProperties.getPublicKey(), authProperties.getPrivateKey()); + // 定义返回结果 R result; // 根据不同用户类型调用对应的接口返回数据,用户可自行拓展 if (userType.equals(BladeUserEnum.WEB.getName())) { - result = userClient.userInfo(tenantId, account, DigestUtil.encrypt(password)); + result = userClient.userInfo(tenantId, account, DigestUtil.encrypt(decryptPassword)); } else if (userType.equals(BladeUserEnum.APP.getName())) { - result = userClient.userInfo(tenantId, account, DigestUtil.encrypt(password)); + result = userClient.userInfo(tenantId, account, DigestUtil.encrypt(decryptPassword)); } else { - result = userClient.userInfo(tenantId, account, DigestUtil.encrypt(password)); + result = userClient.userInfo(tenantId, account, DigestUtil.encrypt(decryptPassword)); } userInfo = result.isSuccess() ? result.getData() : null; } diff --git a/blade-auth/src/main/java/org/springblade/auth/granter/PasswordTokenGranter.java b/blade-auth/src/main/java/org/springblade/auth/granter/PasswordTokenGranter.java index 9572a6a5..908135a2 100644 --- a/blade-auth/src/main/java/org/springblade/auth/granter/PasswordTokenGranter.java +++ b/blade-auth/src/main/java/org/springblade/auth/granter/PasswordTokenGranter.java @@ -17,6 +17,8 @@ package org.springblade.auth.granter; import lombok.AllArgsConstructor; import org.springblade.auth.enums.BladeUserEnum; +import org.springblade.auth.utils.TokenUtil; +import org.springblade.core.secure.props.BladeAuthProperties; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.DigestUtil; import org.springblade.core.tool.utils.Func; @@ -37,6 +39,8 @@ public class PasswordTokenGranter implements ITokenGranter { private IUserClient userClient; + private BladeAuthProperties authProperties; + @Override public UserInfo grant(TokenParameter tokenParameter) { String tenantId = tokenParameter.getArgs().getStr("tenantId"); @@ -46,14 +50,17 @@ public class PasswordTokenGranter implements ITokenGranter { if (Func.isNoneBlank(account, password)) { // 获取用户类型 String userType = tokenParameter.getArgs().getStr("userType"); + // 解密密码 + String decryptPassword = TokenUtil.decryptPassword(password, authProperties.getPublicKey(), authProperties.getPrivateKey()); + // 定义返回结果 R result; // 根据不同用户类型调用对应的接口返回数据,用户可自行拓展 if (userType.equals(BladeUserEnum.WEB.getName())) { - result = userClient.userInfo(tenantId, account, DigestUtil.encrypt(password)); + result = userClient.userInfo(tenantId, account, DigestUtil.encrypt(decryptPassword)); } else if (userType.equals(BladeUserEnum.APP.getName())) { - result = userClient.userInfo(tenantId, account, DigestUtil.encrypt(password)); + result = userClient.userInfo(tenantId, account, DigestUtil.encrypt(decryptPassword)); } else { - result = userClient.userInfo(tenantId, account, DigestUtil.encrypt(password)); + result = userClient.userInfo(tenantId, account, DigestUtil.encrypt(decryptPassword)); } userInfo = result.isSuccess() ? result.getData() : null; } diff --git a/blade-auth/src/main/java/org/springblade/auth/utils/TokenUtil.java b/blade-auth/src/main/java/org/springblade/auth/utils/TokenUtil.java index 5de8370b..82231f12 100644 --- a/blade-auth/src/main/java/org/springblade/auth/utils/TokenUtil.java +++ b/blade-auth/src/main/java/org/springblade/auth/utils/TokenUtil.java @@ -20,6 +20,9 @@ import org.springblade.core.secure.AuthInfo; import org.springblade.core.secure.TokenInfo; import org.springblade.core.secure.utils.SecureUtil; import org.springblade.core.tool.utils.Func; +import org.springblade.core.tool.utils.SM2Util; +import org.springblade.core.tool.utils.StringPool; +import org.springblade.core.tool.utils.StringUtil; import org.springblade.system.user.entity.User; import org.springblade.system.user.entity.UserInfo; @@ -43,7 +46,8 @@ public class TokenUtil { public final static String USER_NOT_FOUND = "用户名或密码错误"; public final static String HEADER_KEY = "Authorization"; public final static String HEADER_PREFIX = "Basic "; - public final static String DEFAULT_AVATAR = "https://gw.alipayobjects.com/zos/rmsportal/BiazfanxmamNRoxxVxka.png"; + public final static String ENCRYPT_PREFIX = "04"; + public final static String DEFAULT_AVATAR = "https://bladex.cn/images/logo.png"; /** * 创建认证token @@ -97,4 +101,31 @@ public class TokenUtil { return SecureUtil.createJWT(param, "audience", "issuser", TokenConstant.REFRESH_TOKEN); } + /** + * 解析国密sm2加密密码 + * + * @param rawPassword 请求时提交的原密码 + * @param publicKey 公钥 + * @param privateKey 私钥 + * @return 解密后的密码 + */ + public static String decryptPassword(String rawPassword, String publicKey, String privateKey) { + // 其中有空则匹配失败 + if (StringUtil.isAnyBlank(publicKey, privateKey)) { + return StringPool.EMPTY; + } + // 处理部分工具类加密不带04前缀的情况 + if (!StringUtil.startsWithIgnoreCase(rawPassword, ENCRYPT_PREFIX)) { + rawPassword = ENCRYPT_PREFIX + rawPassword; + } + // 解密密码 + String decryptPassword = SM2Util.decrypt(rawPassword, privateKey); + // 签名校验 + boolean isVerified = SM2Util.verify(decryptPassword, SM2Util.sign(decryptPassword, privateKey), publicKey); + if (!isVerified) { + return StringPool.EMPTY; + } + return decryptPassword; + } + } diff --git a/blade-auth/src/test/java/org/springblade/test/AesKeyGenerator.java b/blade-auth/src/test/java/org/springblade/test/AesKeyGenerator.java deleted file mode 100644 index 0ea6c91a..00000000 --- a/blade-auth/src/test/java/org/springblade/test/AesKeyGenerator.java +++ /dev/null @@ -1,23 +0,0 @@ -package org.springblade.test; - -import org.springblade.core.tool.utils.AesUtil; - -/** - * aesKey生成器 - * - * @author Chill - */ -public class AesKeyGenerator { - - public static void main(String[] args) { - System.out.println("======================================================="); - for (int i = 0; i < 10; i++) { - String aesKey = AesUtil.genAesKey(); - System.out.println("SpringBlade AesKey:[" + aesKey + "] "); - } - System.out.println("======================================================="); - System.out.println("====== blade.token.aes-key 的值从中挑选一个便可 ========="); - System.out.println("======================================================="); - } - -} diff --git a/blade-auth/src/test/java/org/springblade/test/SignKeyGenerator.java b/blade-auth/src/test/java/org/springblade/test/SignKeyGenerator.java index fd1aa61d..0878fc35 100644 --- a/blade-auth/src/test/java/org/springblade/test/SignKeyGenerator.java +++ b/blade-auth/src/test/java/org/springblade/test/SignKeyGenerator.java @@ -1,5 +1,6 @@ package org.springblade.test; +import org.springblade.core.tool.utils.AesUtil; import org.springblade.core.tool.utils.RandomType; import org.springblade.core.tool.utils.StringUtil; @@ -11,13 +12,12 @@ import org.springblade.core.tool.utils.StringUtil; public class SignKeyGenerator { public static void main(String[] args) { - System.out.println("======================================================="); - for (int i = 0; i < 10; i++) { - String signKey = StringUtil.random(32, RandomType.ALL); - System.out.println("SpringBlade SignKey:[" + signKey + "] "); - } - System.out.println("======================================================="); - System.out.println("====== blade.token.sign-key 的值从中挑选一个便可 ========="); + System.out.println("=========== blade.token.sign-key 配置如下 =============="); + System.out.println("#blade配置\n" + + "blade:\n" + + " token:\n" + + " sign-key: " + StringUtil.random(32, RandomType.ALL) +"\n" + + " aes-key: " + AesUtil.genAesKey() ); System.out.println("======================================================="); } diff --git a/blade-auth/src/test/java/org/springblade/test/Sm2KeyGenerator.java b/blade-auth/src/test/java/org/springblade/test/Sm2KeyGenerator.java new file mode 100644 index 00000000..e527cbf6 --- /dev/null +++ b/blade-auth/src/test/java/org/springblade/test/Sm2KeyGenerator.java @@ -0,0 +1,46 @@ +package org.springblade.test; + +import org.bouncycastle.crypto.AsymmetricCipherKeyPair; +import org.bouncycastle.util.encoders.Hex; +import org.springblade.core.tool.utils.SM2Util; +import org.springblade.core.tool.utils.StringPool; + +/** + * signKey生成器 + * + * @author Chill + */ +public class Sm2KeyGenerator { + + public static void main(String[] args) { + System.out.println("================ blade.auth 配置如下 ================="); + AsymmetricCipherKeyPair keyPair = SM2Util.generateKeyPair(); + String publicKey = SM2Util.getPublicKeyString(keyPair); + String privateKey = SM2Util.getPrivateKeyString(keyPair); + System.out.println("#blade配置 \n" + + "blade:\n" + + " auth:\n" + + " public-key: " + publicKey + "\n" + + " private-key: " + privateKey); + System.out.println("======================================================="); + System.out.println(StringPool.EMPTY); + System.out.println("============== saber website.js 配置如下 ==============="); + System.out.println("//saber配置\n" + + "auth: {\n" + + " publicKey: '" + publicKey + "',\n" + + "}"); + System.out.println("======================================================="); + System.out.println(StringPool.EMPTY); + System.out.println("============== 密码:[admin] 加密流程如下 ================"); + String password = "admin"; + byte[] encryptedData = SM2Util.encrypt(password, publicKey); + String decryptedText = SM2Util.decrypt(encryptedData, privateKey); + System.out.println("加密前: " + password); + System.out.println("加密后: " + Hex.toHexString(encryptedData)); + System.out.println("解密后: " + decryptedText); + System.out.println("请注意: 此密文为前端加密后调用token接口的密码参数"); + System.out.println("======================================================="); + + } + +} diff --git a/blade-common/pom.xml b/blade-common/pom.xml index 4fa1dce5..d9e356f0 100644 --- a/blade-common/pom.xml +++ b/blade-common/pom.xml @@ -5,7 +5,7 @@ SpringBlade org.springblade - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-gateway/pom.xml b/blade-gateway/pom.xml index 12478300..43849e86 100644 --- a/blade-gateway/pom.xml +++ b/blade-gateway/pom.xml @@ -5,7 +5,7 @@ SpringBlade org.springblade - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-ops/blade-admin/pom.xml b/blade-ops/blade-admin/pom.xml index a3bdc508..ff6e41bf 100644 --- a/blade-ops/blade-admin/pom.xml +++ b/blade-ops/blade-admin/pom.xml @@ -5,7 +5,7 @@ blade-ops org.springblade - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-ops/blade-develop/pom.xml b/blade-ops/blade-develop/pom.xml index 74f8538e..5feaef11 100644 --- a/blade-ops/blade-develop/pom.xml +++ b/blade-ops/blade-develop/pom.xml @@ -6,7 +6,7 @@ org.springblade blade-ops - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-ops/blade-report/pom.xml b/blade-ops/blade-report/pom.xml index 2020991c..00701f32 100644 --- a/blade-ops/blade-report/pom.xml +++ b/blade-ops/blade-report/pom.xml @@ -5,7 +5,7 @@ org.springblade blade-ops - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-ops/blade-resource/pom.xml b/blade-ops/blade-resource/pom.xml index f81caf76..71c4f583 100644 --- a/blade-ops/blade-resource/pom.xml +++ b/blade-ops/blade-resource/pom.xml @@ -5,7 +5,7 @@ blade-ops org.springblade - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-ops/blade-seata-order/pom.xml b/blade-ops/blade-seata-order/pom.xml index 9642750b..fd0e5a18 100644 --- a/blade-ops/blade-seata-order/pom.xml +++ b/blade-ops/blade-seata-order/pom.xml @@ -5,7 +5,7 @@ blade-ops org.springblade - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-ops/blade-seata-storage/pom.xml b/blade-ops/blade-seata-storage/pom.xml index 4ed5602a..2e47698c 100644 --- a/blade-ops/blade-seata-storage/pom.xml +++ b/blade-ops/blade-seata-storage/pom.xml @@ -5,7 +5,7 @@ blade-ops org.springblade - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-ops/pom.xml b/blade-ops/pom.xml index c1dac492..0e6a19a0 100644 --- a/blade-ops/pom.xml +++ b/blade-ops/pom.xml @@ -5,13 +5,13 @@ SpringBlade org.springblade - 4.0.0 + 4.1.0 4.0.0 blade-ops ${project.artifactId} - 4.0.0 + 4.1.0 pom blade-admin diff --git a/blade-service-api/blade-demo-api/pom.xml b/blade-service-api/blade-demo-api/pom.xml index 611f074b..ca02cb57 100644 --- a/blade-service-api/blade-demo-api/pom.xml +++ b/blade-service-api/blade-demo-api/pom.xml @@ -5,7 +5,7 @@ blade-service-api org.springblade - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-service-api/blade-desk-api/pom.xml b/blade-service-api/blade-desk-api/pom.xml index fe424f6d..352c0b2f 100644 --- a/blade-service-api/blade-desk-api/pom.xml +++ b/blade-service-api/blade-desk-api/pom.xml @@ -5,7 +5,7 @@ blade-service-api org.springblade - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-service-api/blade-dict-api/pom.xml b/blade-service-api/blade-dict-api/pom.xml index 61245fb6..5e386bed 100644 --- a/blade-service-api/blade-dict-api/pom.xml +++ b/blade-service-api/blade-dict-api/pom.xml @@ -5,7 +5,7 @@ blade-service-api org.springblade - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-service-api/blade-scope-api/pom.xml b/blade-service-api/blade-scope-api/pom.xml index cdfba6f7..809309f0 100644 --- a/blade-service-api/blade-scope-api/pom.xml +++ b/blade-service-api/blade-scope-api/pom.xml @@ -5,7 +5,7 @@ blade-service-api org.springblade - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-service-api/blade-system-api/pom.xml b/blade-service-api/blade-system-api/pom.xml index eea1c817..facdbfef 100644 --- a/blade-service-api/blade-system-api/pom.xml +++ b/blade-service-api/blade-system-api/pom.xml @@ -5,7 +5,7 @@ blade-service-api org.springblade - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-service-api/blade-user-api/pom.xml b/blade-service-api/blade-user-api/pom.xml index 18ebda8c..6f639faf 100644 --- a/blade-service-api/blade-user-api/pom.xml +++ b/blade-service-api/blade-user-api/pom.xml @@ -5,7 +5,7 @@ blade-service-api org.springblade - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-service-api/pom.xml b/blade-service-api/pom.xml index de057cd5..e2219067 100644 --- a/blade-service-api/pom.xml +++ b/blade-service-api/pom.xml @@ -5,13 +5,13 @@ SpringBlade org.springblade - 4.0.0 + 4.1.0 4.0.0 blade-service-api ${project.artifactId} - 4.0.0 + 4.1.0 pom SpringBlade 微服务API集合 diff --git a/blade-service/blade-demo/pom.xml b/blade-service/blade-demo/pom.xml index db20c4b7..dd5f812d 100644 --- a/blade-service/blade-demo/pom.xml +++ b/blade-service/blade-demo/pom.xml @@ -5,7 +5,7 @@ blade-service org.springblade - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-service/blade-desk/pom.xml b/blade-service/blade-desk/pom.xml index 2c5a998e..765e3b09 100644 --- a/blade-service/blade-desk/pom.xml +++ b/blade-service/blade-desk/pom.xml @@ -6,7 +6,7 @@ org.springblade blade-service - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-service/blade-log/pom.xml b/blade-service/blade-log/pom.xml index 1795f262..2bc5807b 100644 --- a/blade-service/blade-log/pom.xml +++ b/blade-service/blade-log/pom.xml @@ -5,7 +5,7 @@ blade-service org.springblade - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-service/blade-system/pom.xml b/blade-service/blade-system/pom.xml index 69ae8748..35798026 100644 --- a/blade-service/blade-system/pom.xml +++ b/blade-service/blade-system/pom.xml @@ -5,7 +5,7 @@ blade-service org.springblade - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-service/blade-user/pom.xml b/blade-service/blade-user/pom.xml index 6253841d..87f1e9dc 100644 --- a/blade-service/blade-user/pom.xml +++ b/blade-service/blade-user/pom.xml @@ -5,7 +5,7 @@ blade-service org.springblade - 4.0.0 + 4.1.0 4.0.0 diff --git a/blade-service/pom.xml b/blade-service/pom.xml index a190fa9a..1db479e4 100644 --- a/blade-service/pom.xml +++ b/blade-service/pom.xml @@ -7,12 +7,12 @@ org.springblade SpringBlade - 4.0.0 + 4.1.0 blade-service ${project.artifactId} - 4.0.0 + 4.1.0 pom SpringBlade 微服务集合 diff --git a/doc/nacos/blade.yaml b/doc/nacos/blade.yaml index 5a8ffb4c..1cd354ed 100644 --- a/doc/nacos/blade.yaml +++ b/doc/nacos/blade.yaml @@ -73,7 +73,7 @@ knife4j: swagger: title: SpringBlade 接口文档系统 description: SpringBlade 接口文档系统 - version: 4.0.0 + version: 4.1.0 license: Powered By SpringBlade licenseUrl: https://bladex.cn terms-of-service-url: https://bladex.cn @@ -84,11 +84,16 @@ swagger: #blade配置 blade: + auth: + #使用 @org.springblade.test.Sm2KeyGenerator 获取,用于国密sm2验签,需和前端保持一致 + public-key: 请配置sm2公钥 + #使用 @org.springblade.test.Sm2KeyGenerator 获取,用于国密sm2解密,前端无需配置 + private-key: 请配置sm2私钥 token: - #使用 blade-auth服务 @org.springblade.test.SignKeyGenerator 获取 - sign-key: 请配置32位签名提高安全性 - #使用 blade-auth服务 @org.springblade.test.AesKeyGenerator 获取 - aes-key: 请配置Aes的密钥 + #使用 @org.springblade.test.SignKeyGenerator 获取 + sign-key: 请配置32位签名 + #使用 @org.springblade.test.SignKeyGenerator 获取 + aes-key: 请配置cryptoKey xss: enabled: true skip-url: diff --git a/pom.xml b/pom.xml index 0d8dd48f..d5a279ed 100644 --- a/pom.xml +++ b/pom.xml @@ -5,12 +5,12 @@ org.springblade SpringBlade - 4.0.0 + 4.1.0 pom - 4.0.0 - 4.0.0 + 4.1.0 + 4.1.0 17 3.11.0 @@ -21,13 +21,13 @@ 3.3.4 3.1.3 - 6.1.5 - 3.2.4 + 6.1.10 + 3.2.7 3.2.3 - 2023.0.1 + 2023.0.2 - 2022.0.0.0 - 2.3.1 + 2023.0.1.0 + 2.3.2 10.211.55.5 diff --git a/script/docker/.env b/script/docker/.env index b1a9ae12..3e87a4be 100644 --- a/script/docker/.env +++ b/script/docker/.env @@ -1,2 +1,2 @@ REGISTER=192.168.0.157/blade -TAG=4.0.0 +TAG=4.1.0 diff --git a/script/docker/docker-compose.yml b/script/docker/docker-compose.yml index be82eb72..f9e3d64d 100644 --- a/script/docker/docker-compose.yml +++ b/script/docker/docker-compose.yml @@ -1,13 +1,14 @@ version: '3' services: nacos: - image: nacos/nacos-server:v2.3.1 + image: nacos/nacos-server:v2.3.2 hostname: "nacos-standalone" environment: - NACOS_AUTH_ENABLE=true - NACOS_AUTH_CACHE_ENABLE=true - NACOS_AUTH_IDENTITY_KEY=nacos - NACOS_AUTH_IDENTITY_VALUE=nacos + - NACOS_AUTH_TOKEN= # 请阅读官方文档了解规则后替换为自己的token:https://nacos.io/zh-cn/docs/v2/guide/user/auth.html - MODE=standalone - TZ=Asia/Shanghai volumes: diff --git a/script/kuboard/kuboard_spring-blade.yaml b/script/kuboard/kuboard_spring-blade.yaml index 323e165c..fcaaff96 100644 --- a/script/kuboard/kuboard_spring-blade.yaml +++ b/script/kuboard/kuboard_spring-blade.yaml @@ -152,7 +152,7 @@ spec: spec: containers: - name: blade-admin - image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-admin:4.0.0' + image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-admin:4.1.0' args: - '--spring.profiles.active=${PROFILE}' - '--spring.cloud.nacos.config.server-addr=${NACOS_SERVER_ADDR}' @@ -386,7 +386,7 @@ spec: spec: containers: - name: blade-auth - image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-auth:4.0.0' + image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-auth:4.1.0' args: - '--spring.profiles.active=${PROFILE}' - '--spring.cloud.nacos.config.server-addr=${NACOS_SERVER_ADDR}' @@ -625,7 +625,7 @@ spec: spec: containers: - name: blade-desk - image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-desk:4.0.0' + image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-desk:4.1.0' args: - '--spring.profiles.active=${PROFILE}' - '--spring.cloud.nacos.config.server-addr=${NACOS_SERVER_ADDR}' @@ -864,7 +864,7 @@ spec: spec: containers: - name: blade-develop - image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-develop:4.0.0' + image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-develop:4.1.0' args: - '--spring.profiles.active=${PROFILE}' - '--spring.cloud.nacos.config.server-addr=${NACOS_SERVER_ADDR}' @@ -1096,7 +1096,7 @@ spec: spec: containers: - name: blade-gateway - image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-gateway:4.0.0' + image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-gateway:4.1.0' args: - '--spring.profiles.active=${PROFILE}' - '--spring.cloud.nacos.config.server-addr=${NACOS_SERVER_ADDR}' @@ -1331,7 +1331,7 @@ spec: spec: containers: - name: blade-log - image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-log:4.0.0' + image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-log:4.1.0' args: - '--spring.profiles.active=${PROFILE}' - '--spring.cloud.nacos.config.server-addr=${NACOS_SERVER_ADDR}' @@ -1565,7 +1565,7 @@ spec: spec: containers: - name: blade-report - image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-report:4.0.0' + image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-report:4.1.0' args: - '--spring.profiles.active=${PROFILE}' - '--spring.cloud.nacos.config.server-addr=${NACOS_SERVER_ADDR}' @@ -1799,7 +1799,7 @@ spec: spec: containers: - name: blade-resource - image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-resource:4.0.0' + image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-resource:4.1.0' args: - '--spring.profiles.active=${PROFILE}' - '--spring.cloud.nacos.config.server-addr=${NACOS_SERVER_ADDR}' @@ -2033,7 +2033,7 @@ spec: spec: containers: - name: blade-system - image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-system:4.0.0' + image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-system:4.1.0' args: - '--spring.profiles.active=${PROFILE}' - '--spring.cloud.nacos.config.server-addr=${NACOS_SERVER_ADDR}' @@ -2267,7 +2267,7 @@ spec: spec: containers: - name: blade-user - image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-user:4.0.0' + image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-user:4.1.0' args: - '--spring.profiles.active=${PROFILE}' - '--spring.cloud.nacos.config.server-addr=${NACOS_SERVER_ADDR}' @@ -2496,7 +2496,7 @@ spec: spec: containers: - name: saber-web - image: 'swr.cn-east-2.myhuaweicloud.com/blade/saber-web:4.0.0' + image: 'swr.cn-east-2.myhuaweicloud.com/blade/saber-web:4.1.0' ports: - name: web containerPort: 80 @@ -2721,7 +2721,7 @@ spec: spec: containers: - name: blade-swagger - image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-swagger:4.0.0' + image: 'swr.cn-east-2.myhuaweicloud.com/blade/blade-swagger:4.1.0' args: - '--spring.profiles.active=${PROFILE}' - '--spring.cloud.nacos.config.server-addr=${NACOS_SERVER_ADDR}' @@ -3749,7 +3749,7 @@ spec: spec: containers: - name: mysql - image: 'swr.cn-east-2.myhuaweicloud.com/blade/saber-db:v4.0.0' + image: 'swr.cn-east-2.myhuaweicloud.com/blade/saber-db:v4.1.0' ports: - name: mysql containerPort: 3306