微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我可以只使用 JWT 进行身份验证而不使用 OpenID/Oauth2 等广泛使用的标准吗?

如何解决我可以只使用 JWT 进行身份验证而不使用 OpenID/Oauth2 等广泛使用的标准吗?

我正在编写 Rest Api 和 SPA。我想要用户的无状态身份验证。这就是为什么我想知道仅使用 JWT 而没有广泛使用的标准(如 OpenID/Oauth2)是否仍然安全?

解决方法

JWT 是一种令牌格式。 OAuth2/OIDC 是一个协议,它告诉您应该如何获取访问、刷新和 ID 令牌。没有要求只能通过 OAuth 获取 JWT,或者 OAuth 流应该只使用 JWT。事实上,访问和刷新令牌通常是不透明的令牌,而不是 JWT。此外,JWT 还可用于许多其他功能(例如签名请求对象)。

这意味着您的系统可以发出 JWT,而无需使用 OAuth2/OIDC 中描述的协议。也就是说,您必须记住,创建标准是为了我们可以实现互操作性并防止常见的安全威胁。如果您实施 OAuth2 或 OIDC 流程来获取令牌,而不是自己解决问题,那么您的系统将更加安全。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。