МТИ — Теплоэнергетика

Федеративная аутентификация через «Газпром ID» в ВКР: безопасность и метрики SSO

26 марта 2026 года «Золотое яблоко» подключило «Газпром ID» как один из способов входа на сайт и в мобильное приложение. Для бьюти-ретейлера это не маркетинговый «плюс кнопки», а переход от собственной учётной записи к модели федеративной идентичности: клиент проходит аутентификацию у внешнего Identity Provider (IdP), а ретейлер получает подтверждённый идентификатор и минимально необходимые атрибуты. Для выпускника направления «Информационная безопасность», «Прикладная информатика» или «Программная инженерия» это готовый полигон: OAuth 2.0, OpenID Connect, JWT, DPIA, оценка уровня доверия. В статье разберём, как превратить новость в защищаемую ВКР, какие метрики считать и где чаще всего «сыпятся» дипломники.

Частые вопросы до старта

Чем OAuth 2.0 отличается от OpenID Connect, и что ставить в центр ВКР?

OAuth 2.0 — это про делегирование доступа (когда приложению выдают access token для API). OpenID Connect (OIDC) — надстройка над OAuth 2.0, добавляющая слой идентификации: ID token в формате JWT с полями sub, iss, aud, exp. В дипломе правильно строить работу вокруг OIDC, а OAuth 2.0 рассматривать как транспортный слой для получения токенов.

Вуз требует собственную реализацию — можно ли использовать внешний IdP?

Можно и нужно: сравнительный анализ «свой IdP vs федеративный» — это отдельная задача главы 1. Обоснуйте через ISO/IEC 25010 (функциональная полнота, безопасность, сопровождаемость) и TCO на 3 года. Ваш вклад — интеграционный слой, consent-экран, маппинг атрибутов и журналирование, а не повторение криптографии.

Какие метрики SSO реально считаются в главе 3?

Время логина p95, success rate токен-обмена, latency на /authorize и /token, доля сессий с MFA, количество refresh-циклов, инциденты account takeover на 1000 входов, конверсия «открыл экран входа → авторизовался». Всё это снимается с OpenTelemetry-трейсов и логов IdP.

Как оформлять схемы потоков аутентификации для нормоконтроля?

UML Sequence Diagram — основной инструмент для authorization code flow. Дополнительно — C4 Context (клиент, retailer-backend, IdP, consent-сервис) и схема алгоритма по ГОСТ 19.701 при описании серверной проверки ID token. Не смешивайте нотации в одном рисунке.

Темы ВКР, которые выстрелят на защите

Как встроить материал статьи в главы ВКР

Глава 1. Аналитика: от новости к постановке задачи

Не пересказывайте пресс-релиз — превращайте его в источник требований. Начните с карты стейкхолдеров: клиент, ретейлер, IdP «Газпром ID», регулятор. Сформулируйте три сценария: первичный вход, повторный вход (silent SSO по refresh token), выход из всех сессий (federated logout). Постройте C4 Context-диаграмму: браузер, BFF ретейлера, IdP, consent-хранилище, SIEM. Затем — модель угроз STRIDE: у «Золотого яблока» ключевые риски — перехват authorization code, подмена redirect_uri, replay ID token, избыточные scopes при маппинге атрибутов.

Глава 2. Проектирование и реализация

Здесь уместны UML Sequence Diagram для Authorization Code Flow + PKCE и код обработчика callback на стороне backend-for-frontend. Ключевые проверки: state, nonce, подпись JWT, aud и iss, срок действия. Ниже — минимальный псевдокод проверки ID token:

def verify_id_token(id_token, jwks, expected_aud, expected_iss):
    header = jwt.get_unverified_header(id_token)
    key = jwks.get(header["kid"])
    if key is None:
        raise InvalidToken("unknown kid")
    claims = jwt.decode(
        id_token, key,
        algorithms=["RS256"],
        audience=expected_aud,
        issuer=expected_iss,
        options={"require": ["exp", "iat", "sub", "nonce"]},
    )
    if claims["nonce"] != session.pop_nonce():
        raise InvalidToken("nonce mismatch")
    return claims["sub"]

Архитектурно держите токены в backend (BFF), а не в localStorage фронтенда. Access token — короткоживущий (5–15 минут), refresh — rotated и привязан к device fingerprint. Сессии — в Redis с TTL и возможностью принудительного отзыва.

Глава 3. Тестирование и метрики

Снимайте метрики через OpenTelemetry: спаны на /authorize, /token, /userinfo, атрибуты idp.name, error_code. Проверяйте по OWASP ASVS раздел V2 (Authentication) и V3 (Session Management). Обязательные тесты: CSRF на callback, открытый redirect, доступ с истёкшим ID token, повторное использование authorization code.

МетрикаЧто показываетИсточник
Успешность токен-обменаКачество интеграции с IdPЛоги /token
p95 логинаUX-эффект от SSOOTel-трейсы
Доля MFA-сессийУровень доверияДанные IdP
Инциденты ATO / 1000 входовБезопасностьSIEM
Consent-доля отказовПрозрачность приватностиConsent-сервис

Чему вы научитесь

Чек-лист перед сдачей
  • Постановка задачи в главе 1 совпадает с выводами главы 3 — сверьте формулировки.
  • Sequence-диаграмма покрывает happy path и 2 негативных сценария (истёкший код, неверный nonce).
  • Все метрики из главы 3 имеют источник данных и метод замера.
  • Ссылки на OWASP ASVS, ISO/IEC 25010 и ГОСТ приведены с редакциями и годами.
  • Код в приложении совпадает с листингами в тексте, нумерация сквозная.
  • Проверен нормоконтроль: поля, шрифт, подписи к рисункам, нумерация формул.
  • Уникальность текста не ниже требований вуза, а цитаты оформлены по ГОСТ Р 7.0.5.
Типичные ошибки студентов
  1. Реализуют OAuth 2.0 «на глазок», без PKCE. В публичных клиентах (SPA, мобильные приложения) это открывает перехват authorization code. Как в кейсе «Золотого яблока», где вход идёт из мобильного приложения, PKCE обязателен — закладывайте его в диаграмму с первого дня.
  2. Хранят ID token в localStorage. XSS превращается в угон сессии. В ВКР покажите BFF-паттерн: токены живут на сервере, браузер получает только HttpOnly cookie.
  3. Забывают о federated logout. Пользователь выходит из ретейлера, но сессия в IdP остаётся. Опишите механизм Back-Channel Logout и протестируйте его в главе 3 — это один из самых частых вопросов на защите.
Если тема кажется объёмной (а по опыту интеграция SSO в ВКР съедает 120+ часов), наши специалисты помогут с проектированием архитектуры, реализацией модуля и оформлением по ГОСТ — от бесплатной консультации до полного сопровождения. Подскажем, как связать кейс с «Газпром ID» с вашей постановкой задачи.
Материал подготовлен экспертами компании [Название сайта]. Мы помогаем студентам с 2010 года. Если вам нужна помощь в разработке темы или оформлении работы, наши специалисты готовы подсказать.
Последнее обновление: 2026-10-02

Источник: «Золотое яблоко» упростило вход для покупателей благодаря «Газпром ID» (опубликовано 2026-03-26)