Oauth2 Spring中的JWT令牌
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oauth2 Spring中的JWT令牌相关的知识,希望对你有一定的参考价值。
我已经在Oauth2 Framework中实现了JWT Token。在实现之后,我几乎没有想到任何查询,如下所示:
1。在JWT实现之前,每当用户访问资源服务器中具有相应访问令牌作为承载的API时,资源服务器使用user-info-uri端点检查auth服务器,如下所示
security:
oauth2:
resource:
user-info-uri: https://localhost:8080/auth/user
在JWT实现之后,我认为资源服务器和auth服务器之间没有检查调用,而是使用公钥验证JWT令牌的签名。但是为了在获取JWT令牌后检查这一点,我停止了auth服务器并尝试查看资源服务器是否验证了jwt令牌并给出了响应,但是这失败了。资源服务器是否与Auth Server建立任何连接?
2。之前在JWT实现之前,所有令牌都在数据库中持久化,因此在成功授权后获取令牌,并且由于令牌在DB中持久存在,因此令牌将是相同的,即使他再次调用相同的令牌API直到到期。在JWT实现之后,看起来JWT建议不要使生成的令牌持久存在于DB中,这意味着每次用户调用令牌端点时,他都会得到不同的JOT令牌。我们是否需要在数据库中保留JWT令牌?
3。任何人都可以看到所有用户详细信息,包括http://jwt.io/中JWT令牌的用户角色,这会产生任何问题吗?
除了上述查询之外,任何人都可以告诉我在Oauth2中使用JWT令牌的其他优缺点是什么
我将回答“我们是否需要在数据库中保留JWT令牌?”
答案是不。 JWT的想法是在客户端处理auth。您应该将JWT发送到客户端并将其保留在本地存储中。
以上是关于Oauth2 Spring中的JWT令牌的主要内容,如果未能解决你的问题,请参考以下文章
使用 OAuth2 保护服务,JWT 令牌不起作用 Spring Cloud
Spring Webflux SecurityValidate OAuth2 JWT 令牌
Spring Boot Security OAuth2 实现支持JWT令牌的授权服务器