更新 JWT

This commit is contained in:
chfei committed 2026-08-28 15:31:45 +08:00
1 parent f84c4c1949
commit 8526e5e0d2
10 files changed
+40 -63

No files matched your search

@@ -1,4 +1,4 @@
using Asp.Versioning.OpenApi;
using Asp.Versioning.OpenApi;
using Microsoft.AspNetCore.Authentication.JwtBearer;
using Microsoft.AspNetCore.Authorization;
using Microsoft.Extensions.Configuration;
@@ -68,12 +68,12 @@ public static class JwtServiceCollectionExtensions
{
IOnlineUserStore onlineUserStore = context.HttpContext.RequestServices.GetRequiredService<IOnlineUserStore>();
ClaimsPrincipal? principal = context.Principal;
string? userIdValue = principal?.FindFirst(JwtClaimTypes.UserId)?.Value;
string? userName = principal?.FindFirst(JwtClaimTypes.UserName)?.Value;
string? jti = principal?.FindFirst(JwtClaimTypes.Jti)?.Value;
if (!int.TryParse(userIdValue, out int userId)
if (string.IsNullOrWhiteSpace(userName)
|| string.IsNullOrWhiteSpace(jti)
|| !onlineUserStore.IsTokenActive(userId, jti))
|| !onlineUserStore.IsTokenActive(userName, jti))
{
context.Fail(new SecurityTokenException("登录已失效,请重新登录"));
}