在没有 OAuth 的情况下使用 JWT 是不是安全? [关闭]

Posted

技术标签:

【中文标题】在没有 OAuth 的情况下使用 JWT 是不是安全? [关闭]【英文标题】:Is usage of JWT without OAuth secure? [closed]在没有 OAuth 的情况下使用 JWT 是否安全? [关闭] 【发布时间】:2021-06-16 22:18:45 【问题描述】:

我有一个通过 HTTPS 提供 REST API 的公共 Spring Web 应用程序。它目前仅使用 HTTP 基本身份验证。

我被要求实现 JWT 支持。我想这样做,但要保持简单 - 避免使用 OAuth 之类的东西(自以前的 spring-security-jwt is deprecated 以来,这是当前 Spring 中必须具备的)。

据我了解,在没有 OAuth 的情况下使用 JWT(在 HTTPS 中)是安全的。所以我可以从 JWT 标准中受益,而不需要专用的授权服务器。

这种设置是标准/通用方法吗? 能否提供 Spring 环境中的任何示例?

我的想法是使用像 jjwt 和 Spring Security 这样的库。

【问题讨论】:

【参考方案1】:

是的,没关系,强烈推荐。 HTTP 基本身份验证的问题之一是您依赖于您的凭据,您需要放入标头中,最好获取 JWT 令牌(bearer,refresh) 并将其用作承载和刷新令牌,具有适当的过期、刷新策略。

【讨论】:

以上是关于在没有 OAuth 的情况下使用 JWT 是不是安全? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何在没有 IdentityServer 或 OAuth 的情况下配置 JWT STS

Spring Security OAuth2 在没有 JWT 的情况下无法工作

Spring Boot OAuth2 资源服务器:库如何在没有公钥的情况下验证 JWT 令牌?

没有 OAuth 的 Spring 安全 JWT

如何在不使用库的情况下验证本机 Javascript 中的 Azure OAuth 访问 JWT 令牌?

如果没有 OpenID/Oauth2 等广泛使用的标准,我可以只使用 JWT 进行身份验证吗?