📌 OAuth 2.0 и OpenID Connect простыми словами для QAOAuth и OpenID Connect часто звучат сложно, но на практике это просто способы безопасно пускать пользователя в систему — без передачи пароля каждому сервису.
Разберёмся без криптографии и лишней теории 👇
▫️ Что такое OAuth 2.0OAuth — это протокол авторизации.
Он отвечает на вопрос:
👉 «Можно ли этому приложению получить доступ к ресурсу пользователя?»
Пример:
Вы логинитесь в сервис через Google → сервис получает access token, но не знает ваш пароль от Google.
Важно для QA:
— OAuth не про логин, а про доступ
— Токен даёт ограниченные права (scope)
— Токен имеет срок жизни
▫️ Что такое OpenID Connect (OIDC)
OIDC — это надстройка над OAuth, которая добавляет аутентификацию.
OIDC отвечает на вопрос:
👉 «Кто этот пользователь?»
OIDC возвращает ID Token, в котором есть:
— user_id
— email
— имя
— issuer (кто подтвердил пользователя)
Проще:
OAuth → что можно делать
OIDC → кто пользователь
▫️ Типичный OAuth / OIDC flow (упрощённо)— Пользователь нажал «Login with Google»
— Его редиректит на страницу провайдера
— Пользователь подтверждает доступ
— Приложение получает токены
— Пользователь залогинен
▫️ Основные типы токенов— Access Token — используется в API-запросах
— Refresh Token — обновляет access token
— ID Token (OIDC) — содержит данные о пользователе
▫️ Что QA важно проверять— Истечение срока действия access token
— Обновление refresh token
— Поведение при logout
— Доступ по ролям и scope
— Ошибки 401 / 403
— Можно ли использовать старый токен
— Что происходит при отмене доступа у провайдера
▫️ Где смотреть и тестировать— Browser DevTools → Network / Application
— Postman — подмена токенов
—
jwt.io — декодирование JWT
—
Webhook.site / httpbin — проверка headers
💡 Совет:Если не понимаете flow — просто пройдите логин шаг за шагом и смотрите Network. OAuth перестаёт быть «магией», когда видишь реальные запросы.