Yandex Identity Hub: как настроить единый вход в Grafana Cloud через SAML

Yandex Identity Hub — IdP‑сервис для централизованного управления доступом. Он помогает настроить безопасный единый вход в Grafana Cloud и другие корпоративные системы через протокол SAML — стандарт для обмена данными аутентификации.

Краткий пересказ YandexGPT
  • Yandex Identity Hub — это поставщик удостоверений (IdP), который помогает управлять доступом к корпоративным ресурсам и реализует технологию единого входа (SSO).
  • Сервис работает с протоколами аутентификации SAML и OIDC и предоставляется по модели SaaS, что обеспечивает быстрый старт и не требует развёртывания собственной инфраструктуры.
  • Yandex Identity Hub позволяет централизованно управлять доступом к приложениям из единой консоли, снижая нагрузку на IT- и ИБ-команды.
  • В сервисе используется новый тип контейнера для хранения локальных учётных записей — пул пользователей, к которому обязательно нужно привязать домен.
  • Реализован механизм Login Discovery, который автоматически определяет, к какому пулу или федерации относится пользователь.
  • Для повышения безопасности используется многофакторная аутентификация (MFA) с поддержкой TOTP и стандартов FIDO2/WebAuthn.
  • С помощью политик безопасности можно определить доступные методы MFA и задать временные параметры (например, «Срок создания» и «Время жизни»).
  • Для интеграции сторонних сервисов в Yandex Identity Hub создаётся сущность «Приложение», где хранятся настройки для взаимодействия с внешним сервисом.
Тезисы сформулированыYandexGPT
Спасибо!

Чем больше систем использует компания, тем сложнее управлять учётными записями. Сотрудникам приходится запоминать десятки паролей, а нагрузка на IT- и ИБ‑специалистов растёт — им нужно контролировать доступ к каждому приложению отдельно. Всё это снижает общую безопасность.

Yandex Identity Hub — это единый поставщик удостоверений, который помогает управлять доступом к корпоративным ресурсам. Сервис контролирует приложения вне зависимости от того, где они развёрнуты — в локальной инфраструктуре (on‑premises), другом облаке или в Yandex Cloud.

В статье рассмотрим архитектуру Yandex Identity Hub, его новую сущность — пул пользователей — и настройку политик безопасности. А ещё на практике покажем, как интегрировать внешнее SaaS‑приложение Grafana Cloud по протоколу SAML.

Yandex Identity Hub как поставщик удостоверений

Yandex Identity Hub — это поставщик удостоверений (Identity Provider, IdP). Такая система создаёт, хранит и управляет пользователями и группами, а также проверяет их подлинность при доступе к корпоративным ресурсам.

Раньше мы использовали федеративную аутентификацию: доверяли проверку данных для входа внешним провайдерам — например, Яндекс ID или корпоративным IdP наших клиентов.

Теперь Yandex Identity Hub может сам проверять подлинность пользователей. Это позволяет реализовать технологию единого входа — Single Sign‑On (SSO). Сотрудник входит в систему один раз и получает доступ ко всем корпоративным приложениям, к которым у него есть права.

В результате сервис централизует работу с учётными записями, группами и политиками безопасности. Он обеспечивает аутентификацию и в наших сервисах, и в сторонних приложениях.

Протокол авторизации поверх OAuth 2.0, используется для проверки личности (аутентификации).

Архитектура и преимущества SaaS‑модели

Yandex Identity Hub — центральное звено в архитектуре доступа к корпоративным системам. Он работает с современными протоколами аутентификации: SAML и OpenID Connect (OIDC). Протокол OIDC мы используем для доступа к собственным сервисам, таким как консоль управления (UI), Yandex DataSphere и Yandex DataLens. Для интеграции со сторонними системами — SaaS‑решениями или локальными приложениями компании — подходят оба протокола.

Сервис предоставляется по модели SaaS (Software as a Service), как и другие популярные в мире IdP‑решения, например Okta и Microsoft Entra ID.

Главное преимущество — быстрый старт. Не нужно разворачивать и поддерживать собственную инфраструктуру. Настройка локальных IdP в отказоустойчивой конфигурации требует времени и экспертизы. Наш сервис готов к работе сразу.

Кроме того, Yandex Identity Hub позволяет централизованно управлять доступом. Администраторы контролируют все подключённые приложения из единой консоли — это снижает нагрузку на внутренние IT- и ИБ‑команды.

Пулы пользователей и локальная аутентификация

Для перехода на собственную аутентификацию мы создали новый тип контейнера, где хранятся локальные учётные записи — пул пользователей. Его главное отличие от федерации в том, что к пулу обязательно нужно привязать домен.

При создании пула мы выдаём технический поддомен, но также можно добавить и верифицировать собственные корпоративные домены. Для верификации достаточно добавить специальную TXT‑запись в DNS. Все домены глобально уникальны в рамках облака, и это гарантирует уникальность имён пользователей.

Пул также отвечает за настройки безопасности — например, именно на этом уровне задаются парольные политики.

Привязка доменов к пулам позволила нам реализовать механизм Login Discovery. Он автоматически определяет, к какому пулу или федерации относится пользователь. Когда на экране входа вводят логин, система анализирует его доменную часть:

  • Если домен привязан к пулу, система запросит пароль для локальной аутентификации.
  • Если домен относится к федерации, она перенаправит пользователя на страницу его корпоративного IdP. Благодаря этому больше не нужно запоминать или вводить идентификаторы федераций.

Для локальных пользователей Yandex Identity Hub выступает первичным хранилищем атрибутов. Ещё добавили функцию блокировки: если сотрудника заблокировать, он потеряет доступ, но все выданные ему права в облаке сохранятся. Это позволяет легко ограничить доступ на определённое время.

Защита доступа с помощью MFA и политик безопасности

Одной аутентификации по паролю недостаточно для надёжной защиты, поэтому для локальных пользователей реализована многофакторная аутентификация (MFA). Поддерживаются два основных метода проверки:

  • одноразовые пароли на основе времени (TOTP);
  • методы, использующие стандарты безопасной аутентификации FIDO2/WebAuthn.

Стандарт FIDO2/WebAuthn работает без паролей и использует биометрию или аппаратные ключи. Можно применять USB‑ключи, например Rutoken и YubiKey, или платформенные аутентификаторы — Windows Hello и Touch ID. Мы также поддерживаем технологию Passkeys, которая позволяет использовать мобильное устройство в качестве ключа без установки дополнительных приложений.

С помощью политик безопасности можно определить, какие методы MFA будут доступны: все варианты или только устойчивые к фишингу. К последним относится стандарт FIDO2/WebAuthn. Распространённый метод TOTP не защищает от фишинга, в то время как WebAuthn защищён от таких атак на уровне архитектуры.

В политиках также задаются временные параметры. Например, «Срок создания» — это период, за который сотруднику нужно зарегистрировать второй фактор. Если он не успеет, доступ к аккаунту будет заблокирован. Это защищает от компрометации учётных записей.

Другой параметр, «Время жизни», определяет, как часто нужно повторно проходить проверку вторым фактором, даже если сессия ещё активна. Чтобы политика начала действовать, её нужно назначить конкретным пользователям или группам.

Интеграция внешних приложений: SAML и OIDC

Чтобы интегрировать сторонний сервис, в Yandex Identity Hub нужно создать специальную сущность — «Приложение». В ней хранятся все настройки для взаимодействия между Yandex Identity Hub, который выступает как IdP, и внешним сервисом — поставщиком услуг (Service Provider, SP).

Сравнение SAML- и OIDC‑приложений

Критерий

SAML‑приложения

OIDC‑приложения

Основа доверия

Доверие строится на основе сертификатов, которыми подписывается SAML‑ответ для проверки подлинности.

Протокол — это надстройка над OAuth 2.0, для работы использует секреты (Client Secrets).

Управление атрибутами

Гибкое управление атрибутами, которые передаются в SAML‑ответе. Можно передавать информацию о группах.

Передачей атрибутов управляют Scopes — стандартизированные наборы данных (openid, email, profile, groups).

Особенности настройки

Требуется обмен метаданными между IdP и SP, включая параметры Issuer, ACS URL и другие.

Мы генерируем структурированные секреты с префиксом, чтобы отслеживать их возможные утечки в публичных источниках.

Пошаговая настройка SSO для Grafana Cloud

Настройку интеграции рассмотрим на примере Grafana Cloud — управляемой платформы для мониторинга и наблюдаемости, которая поддерживает SAML-аутентификацию.

Для работы понадобится аккаунт в Grafana Cloud с правами администратора. Предполагается, что пул пользователей и сами локальные пользователи уже созданы в Yandex Identity Hub.

Шаг 1. Создание SAML‑приложения в Yandex Identity Hub

  1. Сначала в сервисе Yandex Identity Hub нужно перейти в раздел «Приложения» и нажать «Создать приложение».

  2. Далее следует выбрать метод единого входа SAML, задать имя приложения, например grafana‑cloud‑sso, и завершить создание. После этого откроется страница с настройками, где будут доступны данные для конфигурации Grafana Cloud.

Шаг 2. Настройка SAML на стороне Grafana Cloud и обмен метаданными

Настройка происходит за счёт обмена метаданными между Yandex Identity Hub и Grafana Cloud.

  1. В интерфейсе Grafana Cloud перейдите в раздел Administration → Authentication → SAML и активируйте опцию Allow signup. Это позволит автоматически создавать пользователей в Grafana при первом входе через SSO.

  2. В интерфейсе Yandex Identity Hub на странице приложения скопируйте значение параметра Metadata URL.

  3. Вернитесь в Grafana Cloud и вставьте скопированный адрес в поле Metadata URL в блоке Finish configuring Grafana using IdP metadata. Сервис сам загрузит нужные параметры.

  4. В Grafana Cloud скопируйте адреса эндпоинтов:

    a. Metadata URL (это SP EntityID);
    b. Assertion Consumer Service URL (это ACS URL).

  5. Вернитесь в Yandex Identity Hub, нажмите Редактировать и вставьте скопированные значения в поля SP EntityID и ACS URL. Значения SP EntityID должны совпадать на обеих сторонах.

Шаг 3. Сопоставление атрибутов и ролей

Теперь нужно настроить соответствие между атрибутами пользователей в Yandex Identity Hub и полями в Grafana Cloud. Для интеграции у пользователя должен быть атрибут электронной почты. В настройках SAML в Grafana Cloud в блоке Assertion attributes mappings можно указать имена атрибутов, например fullname и emailaddress.

Чтобы автоматически назначать роли (Viewer, Editor, Admin), нужно настроить передачу атрибута групп:

  1. Для этого в Yandex Identity Hub на вкладке Атрибуты созданного приложения следует добавить атрибут группы, например groups.

  2. Затем в Grafana Cloud в блоке Role mapping настройте соответствие: например, пользователи из группы Grafana‑Editors получат роль Editor.

Шаг 4. Добавление пользователей в приложение

Чтобы сотрудники могли войти в Grafana Cloud, их нужно добавить в SAML‑приложение в Yandex Identity Hub:

  1. Если для ролей используются группы, их сначала нужно создать в разделе Группы и добавить туда пользователей.

  2. После этого на вкладке Пользователи и группы самого приложения можно добавить нужных пользователей или группы.

Шаг 5. Проверка работы интеграции

  1. Для проверки нужно перейти на страницу авторизации Grafana Cloud и нажать кнопку Sign in with SAML. Система перенаправит на страницу аутентификации Yandex Identity Hub.

  2. Здесь нужно ввести логин и пароль локального пользователя и, если настроена MFA, пройти проверку вторым фактором.

При успешной аутентификации произойдёт вход в Grafana Cloud. Если было настроено сопоставление ролей, пользователю автоматически назначится соответствующая роль.

Yandex Identity Hub: как настроить единый вход в Grafana Cloud через SAML
Войдите, чтобы сохранить пост