Создать OIDC-приложение в Yandex Identity Hub для интеграции с Time
Time
Чтобы пользователи вашей организации могли аутентифицироваться в Time с помощью технологии единого входа по стандарту OpenID Connect, создайте OIDC-приложение в Yandex Identity Hub и настройте его на стороне Yandex Identity Hub и на стороне Time.
Управлять OIDC-приложениями может пользователь, которому назначена роль organization-manager.oauthApplications.admin или выше.
Чтобы дать доступ пользователям вашей организации в Time:
- Создайте приложение.
- Настройте интеграцию.
- Добавьте пользователей.
- Убедитесь в корректной работе приложения.
Создайте приложение
- Войдите в сервис Yandex Identity Hub
. - На панели слева выберите
Приложения. - В правом верхнем углу страницы нажмите
Создать приложение и в открывшемся окне:- Выберите метод единого входа OIDC (OpenID Connect).
-
В поле Тип приложения выберите тип Web Application.
OIDC-приложения типа
Web Applicationоптимально подходят для аутентификации пользователей во внешних веб-приложениях, имеющих серверную часть (бэкенд), в которой может безопасно храниться секрет приложения. Подробнее о типах OIDC-приложений читайте в разделе Типы OIDC-приложений в Yandex Identity Hub. - В поле Имя задайте имя создаваемого приложения:
time-oidc-app. - В поле Каталог выберите каталог, в котором будет создан OAuth-клиент для приложения.
- (Опционально) Добавьте описание и метки приложения.
- Нажмите Создать приложение.
Настройте интеграцию
Чтобы настроить интеграцию Time с созданным OIDC-приложением в Yandex Identity Hub, выполните настройки на стороне Yandex Identity Hub и на стороне Time.
Получите учетные данные и создайте секрет приложения
- Войдите в сервис Yandex Identity Hub
. - На панели слева нажмите
Приложения и выберите приложениеtime-oidc-app. - На вкладке Обзор в блоке Конфигурация поставщика удостоверений (IdP) скопируйте значение параметра ClientID.
-
Создайте секрет приложения (действие доступно только для приложений типа
Web Application):-
В блоке Секреты приложения нажмите кнопку Добавить секрет и в открывшемся окне:
- (Опционально) Добавьте произвольное описание создаваемого секрета.
- Нажмите Создать.
В окне отобразится сгенерированный секрет приложения. Сохраните полученное значение.
Важно
После обновления или закрытия страницы с информацией о приложении посмотреть секрет будет невозможно.
Если вы закрыли или обновили страницу, не сохранив сгенерированный секрет, используйте кнопку Добавить секрет, чтобы создать новый.
Чтобы удалить секрет, в списке секретов на странице OIDC-приложения в строке с нужным секретом нажмите значок
и выберите Удалить. -
Настройте OIDC-аутентификацию на стороне Time
- Войдите в системную консоль Time по адресу
https://<имя_инстанса>.time-messenger.ru/admin_console/authentication/openid, где<имя_инстанса>— имя вашего инстанса Time. - В разделе Аутентификация:
- Выберите OpenID Connect.
- В списке Выберите провайдера укажите Подключение OpenID (Другое).
- (Опционально) В поле Название кнопки укажите текст, который будет отображаться на кнопке входа на странице авторизации, например
Используя OIDC. - (Опционально) Выберите цвет кнопки входа на странице авторизации.
- В поле Ссылка на поставщика укажите адрес провайдера OpenID Connect —
https://auth.yandex.cloud. - В поле ID клиента укажите значение ClientID, скопированное из Yandex Identity Hub.
- В поле Клиентский ключ укажите секрет приложения, сгенерированный в Yandex Identity Hub.
- Сохраните настройки.
Настройте Redirect URI в Yandex Identity Hub
- Войдите в сервис Yandex Identity Hub
. - На панели слева нажмите
Приложения и выберите приложениеtime-oidc-app. - Справа сверху нажмите
Редактировать и в открывшемся окне:- В поле Redirect URI укажите адрес обратного вызова
https://<имя_инстанса>.time-messenger.ru/signup/openid/complete, где<имя_инстанса>— имя вашего инстанса Time (поддомена наtime-messenger.ru). -
В блоке Безопасность OAuth/OIDC отключите опцию Требовать PKCE, чтобы приложение Yandex Identity Hub при обмене данными не требовало от внешнего приложения использовать расширение безопасности PKCE.
PKCE — это расширение безопасности, применяемое в стандарте OAuth 2.0 с целью минимизировать риски перехвата аутентификационных данных. Подробнее читайте в разделе PKCE.
- Нажмите Сохранить.
- В поле Redirect URI укажите адрес обратного вызова
Добавьте пользователей
Для аутентификации в Time, добавьте в OIDC-приложение Yandex Identity Hub нужных пользователей и/или группы пользователей.
Примечание
Управлять пользователями и группами, добавленными в OIDC-приложение, может пользователь, которому назначена роль organization-manager.oidcApplications.userAdmin или выше.
Чтобы добавить пользователей в SAML-приложение:
- Войдите в сервис Yandex Identity Hub
. - На панели слева нажмите
Приложения и выберите приложениеtime-oidc-app. - Перейдите на вкладку Пользователи и группы.
- Нажмите
Добавить пользователей. - В открывшемся окне выберите нужных пользователей.
- Нажмите Добавить.
Совет
Если вы хотите более тонко настроить аутентификацию пользователей в приложениях, в том числе разрешить аутентификацию только с определенных IP-адресов, используйте политики аутентификации.
Политики аутентификации — это инструмент Yandex Identity Hub, позволяющий гибко настраивать доступ к приложениям, запрещая или разрешая аутентификацию определенным пользователям в определенных приложениях и/или с определенных IP-адресов. Подробнее читайте в разделе Политики аутентификации в Yandex Identity Hub.
Убедитесь в корректной работе приложения
Чтобы проверить корректность работы OIDC-приложения и интеграции с Time, выполните вход в Time под учетной записью одного из добавленных пользователей. Для этого:
- В браузере откройте страницу входа вашего инстанса Time:
https://<имя_инстанса>.time-messenger.ru. - Выберите вход через OpenID Connect.
- Аутентифицируйтесь в Yandex Cloud под учетной записью пользователя из вашей организации.
- Убедитесь, что после успешной аутентификации вы вошли в Time.