Как отличить refresh_token от access_token на этапе проверки на сервере безопасности? - PullRequest
1 голос
/ 19 января 2020

Я знаю разницу в понятии и цели , но что происходит на уровне синтаксиса?

Предположим, конечная точка входа в систему с базовым c ответом токенов:

http://acme.com/login

{
    "access_token": "AYjcyMzY3ZDhiNmJkNTY",
    "refresh_token": "RjY2NjM5NzA2OWJjuE7c",
    "expires_in": 3600
}

Оба токена были сгенерированы сервером безопасности с использованием его алгоритмов (секрет и утверждения)

Поэтому, когда срок действия access_token истекает, мне нужно обновить его, используя некоторую конечную точку, такую ​​как

http://acme.com/oauth/token

Отправка the refresh_token


В этот момент у меня возник вопрос

Предполагая, что эти токены имеют разные строковые значения и разное время истечения, но они были сгенерированы с тем же секретом , утверждает или алгоритмы

И мне нужно реализовать генерацию и проверку токена refre sh на сервере безопасности.

Как отличить access_token от refresh_token?


Текущий обходной путь

Добавление дополнительной заявки (например, type = refre sh) только для refresh_token, поэтому при получении Строка токена на сервере безопасности, и я ее декодирую, это утверждение полезно для определения, является ли полученная строка refresh_token, а не access_token.

...