From dc70be51f85db1831f986ed3e70b881563a82c40 Mon Sep 17 00:00:00 2001 From: zuohuaijun Date: Tue, 3 Sep 2024 11:31:35 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=98=8E=E5=A2=9E=E5=8A=A0=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E8=A1=A8=E7=89=88=E6=9C=AC=E5=8F=B7=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Admin.NET/Admin.NET.Core/Const/ClaimConst.cs | 5 +++++ Admin.NET/Admin.NET.Core/Entity/SysUser.cs | 6 ++++++ Admin.NET/Admin.NET.Core/Service/Auth/SysAuthService.cs | 2 +- Admin.NET/Admin.NET.Web.Core/Handlers/JwtHandler.cs | 2 ++ 4 files changed, 14 insertions(+), 1 deletion(-) diff --git a/Admin.NET/Admin.NET.Core/Const/ClaimConst.cs b/Admin.NET/Admin.NET.Core/Const/ClaimConst.cs index 7fdf85f3..e26054af 100644 --- a/Admin.NET/Admin.NET.Core/Const/ClaimConst.cs +++ b/Admin.NET/Admin.NET.Core/Const/ClaimConst.cs @@ -65,4 +65,9 @@ public class ClaimConst /// 登录模式PC、APP /// public const string LoginMode = "LoginMode"; + + /// + /// Token版本号 + /// + public const string TokenVersion = "TokenVersion"; } \ No newline at end of file diff --git a/Admin.NET/Admin.NET.Core/Entity/SysUser.cs b/Admin.NET/Admin.NET.Core/Entity/SysUser.cs index 0e03bc10..24508e94 100644 --- a/Admin.NET/Admin.NET.Core/Entity/SysUser.cs +++ b/Admin.NET/Admin.NET.Core/Entity/SysUser.cs @@ -313,6 +313,12 @@ public partial class SysUser : EntityTenant [MaxLength(512)] public string? Signature { get; set; } + /// + /// Token版本号 + /// + [SugarColumn(ColumnDescription = "Token版本号")] + public int TokenVersion { get; set; } = 1; + /// /// 最新密码修改时间 /// diff --git a/Admin.NET/Admin.NET.Core/Service/Auth/SysAuthService.cs b/Admin.NET/Admin.NET.Core/Service/Auth/SysAuthService.cs index a816273b..cf5463db 100644 --- a/Admin.NET/Admin.NET.Core/Service/Auth/SysAuthService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Auth/SysAuthService.cs @@ -229,7 +229,7 @@ public class SysAuthService : IDynamicApiController, ITransient { ClaimConst.OrgId, user.OrgId }, { ClaimConst.OrgName, user.SysOrg?.Name }, { ClaimConst.OrgType, user.SysOrg?.Type }, - { ClaimConst.LoginMode, loginMode }, + { ClaimConst.TokenVersion, user.TokenVersion }, }, tokenExpire); // 生成刷新Token令牌 diff --git a/Admin.NET/Admin.NET.Web.Core/Handlers/JwtHandler.cs b/Admin.NET/Admin.NET.Web.Core/Handlers/JwtHandler.cs index ffaf9a0b..b9e013aa 100644 --- a/Admin.NET/Admin.NET.Web.Core/Handlers/JwtHandler.cs +++ b/Admin.NET/Admin.NET.Web.Core/Handlers/JwtHandler.cs @@ -46,6 +46,8 @@ namespace Admin.NET.Web.Core return; } + // 验证Token版本号 + var sysConfigService = serviceScope.ServiceProvider.GetRequiredService(); var tokenExpire = await sysConfigService.GetTokenExpire(); var refreshTokenExpire = await sysConfigService.GetRefreshTokenExpire();