在客户端存储 jwt 令牌的最佳实践是什么?

问题描述 投票:0回答:2

在 HttpSession 中存储 jwt 令牌安全吗?如果不是,存储 jwt 令牌的最佳实践是什么。以便在客户端中进一步使用。

public void setLoggedinUserInSession(HttpServletRequest httpServletRequest, String jwtToken){
    HttpSession session = httpServletRequest.getSession(true);
    session.setAttribute("token", jwtToken);
}
security jwt httpsession
2个回答
1
投票

关于您的问题 - 如何在客户端上存储 JWT 令牌。 Cookie 是其中一种方法。有很多大大小小的事情需要照顾,但它们都被 OWASP ASVS 总结了:https://github.com/OWASP/ASVS/blob/v4.0.3/4.0/en/0x12-V3-Session-管理.md

一件重要的事情:HTTP Session 不是正确的选择。看看如何处理 cookie https://www.baeldung.com/java-servlet-cookies-session#1-create-a-cookie 并执行此操作。


-1
投票

不要存储 JWT Access Token HttpSession,也不要存储在非 HttpOnly cookie 中,甚至不建议使用 HttpOnly cookie。 到目前为止,我发现的唯一安全的选择是本地存储,但您必须使用 CSP、清理输入等来保护它。

看这里:https://medium.com/@serg290696/jwt-authentication-but-this-time-secure-fe0a52deb0aa

© www.soinside.com 2019 - 2024. All rights reserved.