Openid Connect, что делать с access_token и refresh_token?

Насколько я понял из этого сообщения в блоге, в openid connect мы используем токен id для проверки подлинности пользователя. Почему ответ включает токен доступа и токен обновления? Также в блоге не упоминается о проверке того, кто отправил токен. Как мы можем убедиться, что это действительно тот idp, который отправил сообщение?


person Can't Tell    schedule 28.05.2015    source источник


Ответы (1)


В статье описывается базовый профиль клиента, в котором клиент получает маркеры от IDP при обратном вызове конечной точки маркера. Проверка сертификата сервера SSL для сертификата сервера, представленного на конечной точке токена, гарантирует, что мы имеем дело с правильным IDP, что может сделать ненужной проверку id_token отдельно.

Маркер доступа включен, чтобы позволить клиенту сделать вызов к так называемой конечной точке информации о пользователе и получить больше утверждений о пользователе. Эта конечная точка представляет собой API, защищенный с помощью OAuth 2.0, поэтому клиенту необходимо предоставить токен доступа. Кроме того, поскольку OpenID Connect основан на OAuth 2.0, токен доступа может быть связан с большим количеством областей, чтобы его можно было использовать и с другими (не OpenID Connect) API (обычный OAuth 2.0).

Токен обновления включен по обычным причинам OAuth 2.0, чтобы клиент мог получить новый токен доступа, когда срок действия старого истекает, без повторной явной аутентификации пользователя.

person Hans Z.    schedule 28.05.2015
comment
Спасибо за ответ. Когда вы говорите The SSL server certificate verification of the server certificate presented on the token endpoint, вы имеете в виду сертификат, используемый в https-соединении? - person Can't Tell; 28.05.2015
comment
Также, когда вы говорите verifying the id_token, вы имеете в виду проверку подписи (используя секрет + хеширование или RSA, как указано на jwt.io? )? - person Can't Tell; 28.05.2015