package com.mydreamjob.auth; import jakarta.servlet.http.HttpServletRequest; import org.springframework.security.web.authentication.WebAuthenticationDetails; /** * 携带已验证会话标识的认证详情(S02)。 * *
{@code sessionId} 只可能由 {@link JwtAuthenticationFilter} 在 Access Token * 通过完整校验(签名、类型、issuer、audience、claim 与服务端会话状态)之后写入, * 因此可作为 {@code /auth/logout} 的可信会话来源,不接受任何客户端参数。
*/ public class SessionAuthenticationDetails extends WebAuthenticationDetails { private final String sessionId; public SessionAuthenticationDetails(HttpServletRequest request, String sessionId) { super(request); this.sessionId = sessionId; } public String getSessionId() { return sessionId; } }