Встречается на собеседованиях • сегодня

В чём разница между OAuth2 и OpenID

OAuth2 — это протокол авторизации, позволяющий приложениям получать ограниченный доступ к пользовательским данным без раскрытия пароля. OpenID Connect (OIDC) — это надстройка над OAuth2, добавляющая аутентификацию (подтверждение личности пользователя).

Ключевые отличия:

  • Цель: OAuth2 — делегирование доступа, OIDC — аутентификация.
  • Токены: OAuth2 использует access/refresh токены, OIDC добавляет ID-токен (JWT с данными пользователя).
  • Стандарты: OIDC — расширение OAuth2 с обязательным использованием JWT и стандартными claims (sub, email и т.д.).

Пример кода (OIDC):

python
from authlib.integrations.requests_client import OAuth2Session

client = OAuth2Session(
    client_id="your_client_id",
    client_secret="your_secret",
    scope="openid email profile"
)
authorization_url = "https://provider.com/auth"
token = client.fetch_token(
    "https://provider.com/token",
    authorization_response=request.url
)
id_token = token["id_token"]  # JWT с данными пользователя
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы