2017-02-01 3 views
0

Я использовал Oauth2.0 с использованием токена JWT, пока он, похоже, в основном не работает с Spring Boot.Как работает срок службы токенов JWT в загрузке весны

Вопрос1: Я могу назвать этот URL, чтобы получить ответ «access_token» и «refresh_token» в качестве ответа.

https://myapp/oauth/token?grant_type=password&username=______&password=_______ 

Но когда каждый раз, когда я вновь назвал URL, как access_token и refresh_token были регенерировать и старый access_token все еще можно использовать, пока не истек. Как это работает? Восстановить оба раза?

Вопрос2: Кроме того, когда мне нужно обновить свою access_token, я назвал этот URL

https://myapp/oauth/token?grant_type=password&username=______&password=_______ 

Я, опять же, получил как новый access_token и новый refresh_token. Для меня довольно странно, что refresh_token использовался для создания нового refresh_token. Но старый refresh_token все еще может работать ?!

Если это уже то, что токен JWT действительно должен работать, скажите, пожалуйста, почему нам нужно refresh_token, когда мы можем вызвать первый URL-адрес, чтобы получить новый токен в любом случае.

Я провел некоторое время на этом, но до сих пор не смог найти четкую ссылку на эти вещи. Если бы вы могли сказать мне правильный поток, что он должен работать, я был бы признателен. Спасибо заранее.

+0

Возможный дубликат [Почему OAuth v2 имеет оба доступа и обновления токенов?] (Http://stackoverflow.com/questions/3487991/why-does-oauth-v2-have-both-access-and-refresh- токены) – Strelok

+0

Итак, кто-то, пожалуйста, ответьте на мой вопрос2. Для меня довольно странно, что refresh_token использовался для создания нового refresh_token. Но старый refresh_token все еще может работать ?! – Edmund

ответ

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) показывает пример.

Смежные вопросы