2014·federation
Modern

OpenID Connect

Тонкий слой identity поверх OAuth 2.0. id_token (JWT) + userinfo + discovery.

Плюсы
  • +Стандартизирует identity на OAuth2
  • +JWT id_token
Минусы
  • Наследует все ловушки OAuth2
OpenID Connect (поверх OAuth 2)
SPA / AppOPResourceGET /.well-known/openid-configurationendpoints, jwks_uriOAuth2 authcode flow с scope=openidaccess_token + id_token (JWT)verify id_token signature via JWKSGET /userinfo (Bearer)claims (sub, name, email)
  1. 1.SPA / App OPGET /.well-known/openid-configuration
  2. 2.OP SPA / Appendpoints, jwks_uri
  3. 3.SPA / App OPOAuth2 authcode flow с scope=openid
  4. 4.OP SPA / Appaccess_token + id_token (JWT)
  5. 5.SPA / App SPA / Appverify id_token signature via JWKS
  6. 6.SPA / App OPGET /userinfo (Bearer)
  7. 7.OP SPA / Appclaims (sub, name, email)
OpenID Connect

Discovery + JWKS. Полный flow реализован в /oauth2 (scope=openid выдаёт id_token).

Сервер
  1. OIDC — это identity-слой поверх OAuth2
  2. Клиент использует scope=openid → сервер выдаёт id_token (JWT) рядом с access_token
  3. id_token содержит sub, iss, aud, iat, exp — это и есть «логин»
  4. JWKS публикует ключи, которыми сервис подписывает id_token (обычно RS/ES)
Network · DevTools
Запусти демо — сюда упадут все запросы.
Выбери запрос слева, чтобы посмотреть детали.