我已经使用JWT令牌实现了Oauth2.0,直到它基本上与Spring Boot一起使用。
问题1:我可以调用此网址,以便将'access_token'和'refresh_token'作为回复。
https://myapp/oauth/token?grant_type=password&username=______&password=_______
但每当我重新调用网址时, access_token和refresh_token 重新生成,旧 access_token 仍然可以使用直到它过期。 这是真的有效吗? 每次都重新生成?
问题2:此外,当我需要刷新access_token时,我调用了此网址
https://myapp/oauth/token?grant_type=password&username=______&password=_______
我再次 新的access_token和新的refresh_token 。对我来说很奇怪,refresh_token用于生成更新的refresh_token。但旧的refresh_token仍可以使用?!
如果这已经是JWT令牌应该真正起作用,请告诉我为什么我们需要refresh_token才能调用第一个URL来获取新令牌。
我已经花了一些时间,但仍然找不到提及这些事情的明确参考。 如果你能告诉我它应该有效的正确流程,我将不胜感激。 先感谢您。
答案 0 :(得分:0)
关于问题2:是的,你得到一个新的access_token和refresh_token。 由您(或负责RefreshTokenProvider的任何人)决定resfresh_token只能使用一次。 这篇博客文章:http://bitoftech.net/2014/07/16/enable-oauth-refresh-tokens-angularjs-app-using-asp-net-web-api-2-owin/(向下滚动到第6步)显示了一个示例。