Создать OIDC-приложение в Yandex Identity Hub для интеграции с MWS
МТС Web Services (MWS)
Чтобы пользователи вашей организации могли аутентифицироваться в MWS с помощью технологии единого входа по стандарту OpenID Connect, создайте OIDC-приложение в Identity Hub и настройте его на стороне Identity Hub и на стороне MWS.
Управлять OIDC-приложениями может пользователь, которому назначена роль organization-manager.oauthApplications.admin или выше.
Чтобы дать доступ пользователям вашей организации в MWS:
- Создайте аккаунт в MWS.
- Создайте приложение.
- Настройте интеграцию.
- Убедитесь в корректной работе приложения.
Создайте аккаунт в MWS
Если у вас нет аккаунта в MWS, создайте его:
- На странице входа в консоль MWS
нажмите кнопку Войти через МТС ID. - Создайте аккаунт МТС ID:
- Введите номер телефона. Номер будет привязан к аккаунту, и его нельзя будет заменить.
- Введите код подтверждения из СМС.
- Создайте аккаунт MWS:
- Введите email, который будет привязан к вашему аккаунту MWS.
- Нажмите кнопку Далее.
- Подтвердите регистрацию, перейдя в письме по ссылке Подтвердить почту.
- Примите условия пользовательского соглашения и нажмите кнопку Войти в консоль.
- В меню слева перейдите в Организация, затем в Об организации.
- Сохраните ID вашей организации MWS (например,
organization-test), который потребуется для настройки интеграции.
Создайте приложение
- Войдите в сервис Yandex Identity Hub
. - На панели слева выберите
Приложения. - В правом верхнем углу страницы нажмите
Создать приложение и в открывшемся окне:- Выберите метод единого входа OIDC (OpenID Connect).
- В поле Имя задайте имя создаваемого приложения:
mws-oidc-app. - В поле Каталог выберите каталог, в котором будет создан OAuth-клиент для приложения.
- (Опционально) В поле Описание задайте описание приложения.
- (Опционально) Добавьте метки:
- Нажмите Добавить метку.
- Введите метку в формате
ключ: значение. - Нажмите Enter.
- Нажмите Создать приложение.
Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.
По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.
-
Посмотрите описание команды CLI для создания OIDC-приложения:
yc organization-manager idp application oauth application create --help -
Создайте OAuth-клиент:
yc iam oauth-client create \ --name mws-oauth-client \ --scopes openid,email,profileГде:
--name— имя OAuth-клиента.--scopes— набор атрибутов пользователей, которые будут доступны MWS. Указаны атрибуты:openid— идентификатор пользователя. Обязательный атрибут.email— адрес электронной почты пользователя.profile— дополнительная информация о пользователе, такая как имя, фамилия, аватар.
Результат:
id: ajeqqip130i1******** name: mws-oauth-client folder_id: b1g500m2195v******** status: ACTIVEСохраните значение поля
id, оно понадобится для создания и настройки приложения. -
Создайте секрет для OAuth-клиента:
yc iam oauth-client-secret create \ --oauth-client-id <идентификатор_OAuth-клиента>Результат:
oauth_client_secret: id: ajeq9jfrmc5t******** oauth_client_id: ajeqqip130i1******** masked_secret: yccs__939233b8ac**** created_at: "2025-10-21T10:14:17.861652377Z" secret_value: yccs__939233b8ac********Сохраните значение поля
secret_value, оно понадобится для настройки MWS. -
Создайте OIDC-приложение:
yc organization-manager idp application oauth application create \ --organization-id <идентификатор_организации> \ --name mws-oidc-app \ --description "OIDC-приложение для интеграции с MWS" \ --client-id <идентификатор_OAuth-клиента> \ --authorized-scopes openid,email,profile \ --group-distribution-type noneГде:
--organization-id— идентификатор организации, в которой нужно создать OIDC-приложение. Обязательный параметр.--name— имя OIDC-приложения. Обязательный параметр.--description— описание OIDC-приложения. Необязательный параметр.--client-id— идентификатор OAuth-клиента, полученный на втором шаге. Обязательный параметр.--authorized-scopes— укажите те же атрибуты, которые были указаны при создании OAuth-клиента.--group-distribution-type— укажитеnone, так как группы пользователей не передаются в MWS.
Результат:
id: ek0o663g4rs2******** name: mws-oidc-app organization_id: bpf2c65rqcl8******** group_claims_settings: group_distribution_type: NONE client_grant: client_id: ajeqqip130i1******** authorized_scopes: - openid - email - profile status: ACTIVE created_at: "2025-10-21T10:51:28.790866Z" updated_at: "2025-10-21T12:37:19.274522Z"
Настройте интеграцию
Чтобы настроить интеграцию MWS с созданным OIDC-приложением в Identity Hub, выполните настройки на стороне MWS и на стороне Identity Hub.
Получите учетные данные приложения
- Войдите в сервис Yandex Identity Hub
. - На панели слева выберите
Приложения и выберите нужное OIDC-приложение. - На вкладке Обзор в блоке Конфигурация поставщика удостоверений (IdP) разверните секцию Дополнительные атрибуты и скопируйте значение параметра ClientID, которое необходимо задать на стороне MWS.
-
В блоке Секреты приложения нажмите кнопку Добавить секрет и в открывшемся окне:
- (Опционально) Добавьте произвольное описание создаваемого секрета.
- Нажмите Создать.
В окне отобразится сгенерированный секрет приложения. Сохраните полученное значение.
Важно
После обновления или закрытия страницы с информацией о приложении посмотреть секрет будет невозможно.
Если вы закрыли или обновили страницу, не сохранив сгенерированный секрет, используйте кнопку Добавить секрет, чтобы создать новый.
Чтобы удалить секрет, в списке секретов на странице OIDC-приложения в строке с нужным секретом нажмите значок
и выберите Удалить.
Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.
По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.
-
Получите информацию о созданном OIDC-приложении:
yc organization-manager idp application oauth application get <идентификатор_приложения>Где
<идентификатор_приложения>— это ID OIDC-приложения, полученный при создании.В результате вы получите информацию о приложении, включая:
id: ek0o663g4rs2******** name: mws-oidc-app organization_id: bpf2c65rqcl8******** client_grant: client_id: ajeqqip130i1******** authorized_scopes: - openid - email - profileСохраните значение
client_id— это Client ID для настройки MWS. -
Используйте секрет OAuth-клиента, который был сохранен при создании приложения на предыдущем шаге. Если вы не сохранили секрет, создайте новый:
yc iam oauth-client-secret create \ --oauth-client-id <идентификатор_OAuth-клиента>Сохраните значение
secret_valueиз результата команды — это Client Secret для настройки MWS.
Настройте приложение на стороне MWS
Чтобы настроить аутентификацию по стандарту OIDC на стороне MWS, вам потребуется создать и настроить федерацию
Настройте федерацию
- Войдите в консоль вашей организации
. - В левой панели выберите раздел Федерации.
- Нажмите кнопку Создать.
- Настройте федерацию:
-
Задайте имя федерации. Сохраните ID федерации (например,
federation-test), который потребуется для настройки интеграции. -
(Опционально) Выберите роли, которые будут назначены пользователям, авторизованным через федерацию.
Примечание
Подробнее о настройке ролей федеративных пользователей вы можете прочитать в документации MWS
. -
Укажите время сессии, по истечении которой пользователю необходимо будет повторно авторизоваться.
-
(Опционально) Введите описание федерации.
-
- Нажмите кнопку Создать.
Настройте OIDC-клиент
- После создания федерации нажмите кнопку Добавить IdP.
- (Опционально) Введите описание провайдера.
- Нажмите кнопку Далее.
- В поле Issuer введите
https://auth.yandex.cloud, затем нажмите кнопку Загрузить. Конфигурация заполнится автоматически. - В поле Client ID введите значение, скопированное ранее из поля ClientID.
- В поле Client Secret введите сгенерированный ранее секрет приложения.
- В блоке Способ получения данных выберите значение Token Endpoint и UserInfo Endpoint и нажмите Далее.
- Напротив атрибута
mws.subjectв поле IdP введитеpreferred_usernameи нажмите Далее. - Проверьте конфигурацию и нажмите Создать.
- После завершения настройки снова выберите добавленный IdP в разделе Федерации, после чего сохраните ID провайдера (например,
-testprov), который потребуется для настройки интеграции.
Настройте Redirect URI
- Войдите в сервис Yandex Identity Hub
. - На панели слева выберите
Приложения и выберите нужное OIDC-приложение. - Справа сверху нажмите
Редактировать и в открывшемся окне:-
В поле Redirect URI укажите эндпоинт аутентификации для вашей федерации MWS в формате:
https://auth.mws.ru/api/iam/v1/organizations/<идентификатор_организации>/userFederations/<идентификатор_созданной_федерации>/providers/<идентификатор_провайдера>/login-callbackНапример:
https://auth.mws.ru/api/iam/v1/organizations/organization-test/userFederations/federation-test/providers/-testprov/login-callback -
Нажмите Сохранить.
-
Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.
По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.
Обновите OAuth-клиент, указав Redirect URI:
yc iam oauth-client update \
--id <идентификатор_OAuth-клиента> \
--redirect-uris "https://auth.mws.ru/api/iam/v1/organizations/<идентификатор_организации>/userFederations/<идентификатор_созданной_федерации>/providers/<идентификатор_провайдера>/login-callback"
Где:
-
<идентификатор_OAuth-клиента>— идентификатор OAuth-клиента, полученный при его создании. -
--redirect-uris— эндпоинт аутентификации для вашей федерации MWS. Например:https://auth.mws.ru/api/iam/v1/organizations/organization-test/userFederations/federation-test/providers/-testprov/login-callback
Результат:
id: ajeiu3otac08********
name: mws-oidc-app
redirect_uris:
- https://auth.mws.ru/api/iam/v1/organizations/organization-test/userFederations/federation-test/providers/-testprov/login-callback
scopes:
- openid
- email
- profile
folder_id: b1gkd6dks6i1********
status: ACTIVE
Добавьте пользователя
Чтобы пользователи вашей организации могли аутентифицироваться в MWS с помощью OIDC-приложения Identity Hub, необходимо явно добавить в OIDC-приложение нужных пользователей и/или группы пользователей.
Примечание
Управлять пользователями и группами, добавленными в OIDC-приложение, может пользователь, которому назначена роль organization-manager.oidcApplications.userAdmin или выше.
Добавьте пользователя в приложение:
- Войдите в сервис Yandex Identity Hub
. - На панели слева выберите
Приложения и выберите нужное приложение. - Перейдите на вкладку Пользователи и группы.
- Нажмите
Добавить пользователей. - В открывшемся окне выберите нужного пользователя или группу пользователей.
- Нажмите Добавить.
Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.
По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.
-
Получите идентификатор пользователя или группы пользователей.
-
Чтобы добавить в приложение пользователя или группу пользователей:
-
Посмотрите описание команды CLI для добавления пользователей в приложение:
yc organization-manager idp application oauth application add-assignments --help -
Выполните команду:
yc organization-manager idp application oauth application add-assignments \ --id <идентификатор_приложения> \ --subject-id <идентификатор_пользователя_или_группы>Где:
--id— идентификатор OIDC-приложения.--subject-id— идентификатор нужного пользователя или группы пользователей.
Результат:
assignment_deltas: - action: ADD assignment: subject_id: ajetvnq2mil8********
-
Убедитесь в корректной работе приложения
Чтобы убедиться в корректной работе OIDC-приложения и интеграции с MWS, выполните аутентификацию в MWS от имени одного из добавленных в приложение пользователей.
Для этого:
- В браузере перейдите в консоль вашей организации
. - В левой панели выберите раздел Федерации.
- Выберите добавленный ранее IdP.
- На странице провайдера скопируйте из секции Основное значение Sign In URL. Это ссылка для входа в консоль MWS в качестве пользователя федерации.
- Выйдите из профиля MWS.
- Введите в адресную строку браузера скопированную ссылку и перейдите по ней.
- На странице аутентификации Yandex Cloud укажите email и пароль пользователя. Пользователь должен быть добавлен в приложение или состоять в группе, добавленной в приложение.
- Прочитайте и примите условия использования, затем нажмите Далее.
- Убедитесь, что вы аутентифицировались в MWS.