Русский
  • azure
  • sso
  • authentication
  • SAML

Интеграция Azure SAML SSO с использованием Logto

Узнайте, как интегрировать Azure SAML SSO с использованием Logto за несколько минут.

Simeng
Simeng
Developer

Microsoft Entra ID, также известная как Azure Active Directory (Azure AD), представляет собой комплексное решение для управления идентификацией и доступом, которое предоставляет обширный набор возможностей для управления пользователями и группами. Многие организации используют Azure AD для управления своими пользователями и группами. Это также популярный выбор для интеграции единого входа (SSO). Azure AD поддерживает как протоколы OpenID Connect (OIDC), так и Security Assertion Markup Language (SAML) для интеграции SSO. В этом руководстве мы покажем вам, как сначала интегрировать ваше приложение Logto с Azure SAML SSO.

Требования

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

Аккаунт в Logto облаке. Если у вас его нет, вы можете легко зарегистрироваться для аккаунта Logto. Logto бесплатен для личного использования. Все функции доступны для dev-tenants, включая функцию SSO.

Также необходимо хорошо интегрированное приложение Logto. Если у вас его нет, пожалуйста, следуйте инструкции по интеграции, чтобы создать приложение Logto.

Интеграция

Создайте новый соединитель Azure SAML SSO в Logto

  1. Посетите консоль Logto Cloud и перейдите на страницу Enterprise SSO.

Консоль Logto Cloud

  1. Нажмите кнопку Добавить Enterprise SSO и выберите Microsoft Enrtra Id (SAML) в качестве поставщика SSO.
azure connector

Откроем портал Azure в другой вкладке и следуйте шагам для создания корпоративного приложения на стороне Azure.

Создайте корпоративное приложение в Azure

  1. Перейдите на портал Azure и войдите как администратор.

  2. Выберите службу Microsoft Entra ID.

  3. Перейдите в раздел Enterprise applications с помощью бокового меню. Нажмите New application и выберите Create your own application в верхнем меню.

  4. Введите название приложения и выберите Integrate any other application you don't find in the gallery (Non-gallery).

Create Application
  1. После создания приложения выберите Setup single sign-on > SAML для настройки параметров SAML SSO.
Setup SSO
  1. Откройте первый раздел Basic SAML Configuration и скопируйте следующую информацию из Logto.
Entity ID
  • Audience URI(SP Entity ID): Представляет собой глобально уникальный идентификатор для вашей службы Logto, функционирующий как EntityId для СП во время запросов аутентификации к IdP. Этот идентификатор является ключевым для безопасного обмена утверждениями SAML и другими данными, связанными с аутентификацией, между IdP и Logto.

  • ACS URL: URL службы приема утверждений (ACS) — это место, куда отправляется утверждение SAML с помощью запроса POST. Этот URL используется IdP для отправки утверждения SAML в Logto. Он работает как обратный URL, где Logto ожидает получить и обработать ответ SAML, содержащий информацию о личности пользователя.

SP Configuration

Нажмите Save, чтобы сохранить конфигурацию.

Предоставьте метаданные SAML IdP для Logto

Как только приложение SAML SSO будет создано в Azure, вам потребуется предоставить конфигурацию метаданных SAML IdP в Logto. Конфигурация метаданных содержит открытый сертификат SAML IdP и конечную точку SAML SSO.

  1. Logto предоставляет три различных способа настройки метаданных SAML. Самый простой способ — через URL метаданных. Вы можете найти URL метаданных на портале Azure.

    Скопируйте App Federation Metadata Url из раздела SAML Certificates section вашего приложения Azure AD SSO и вставьте его в поле Metadata URL в Logto.

    Metadata URL
  2. Нажмите кнопку сохранить, и Logto автоматически загрузит метаданные с URL и настроит интеграцию SAML SSO.

    Metadata Configuration

Настройка сопоставления атрибутов пользователя

Logto предоставляет гибкий способ сопоставления атрибутов пользователя, возвращаемых от IdP, с атрибутами пользователя в Logto. Следующие атрибуты пользователя от IdP будут синхронизированы с Logto по умолчанию:

  • id: Уникальный идентификатор пользователя. Logto будет читать утверждение nameID из ответа SAML как идентификатор идентичности пользователя SSO.
  • email: Адрес электронной почты пользователя. Logto будет читать утверждение email из ответа SAML как основной адрес электронной почты пользователя по умолчанию.
  • name: Имя пользователя.

Вы можете управлять логикой сопоставления атрибутов пользователя либо на стороне Azure AD, либо на стороне Logto.

  1. Сопоставьте атрибуты пользователя AzureAD с атрибутами пользователя Logto на стороне Logto.

    Посетите раздел Attributes & Claims в вашем приложении Azure AD SSO.

    Скопируйте следующие имена атрибутов (с префиксом пространства имен) и вставьте их в соответствующие поля в Logto.

    • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress

    • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name (Рекомендация: обновите эту карту значений атрибута до user.displayname для улучшения пользовательского опыта)

    Default Attributes Mapping
  2. Сопоставьте атрибуты пользователя AzureAD с атрибутами пользователя Logto на стороне AzureAD.

    Посетите раздел Attributes & Claims в вашем приложении Azure AD SSO.

    Нажмите Edit и обновите поля Additional claims в соответствии с настройками атрибутов пользователя Logto:

    • обновите значение имени утверждения на основе настроек атрибутов пользователя Logto.
    • удалите префикс пространства имен.
    • нажмите Save, чтобы продолжить.

    В итоге вы получите следующие настройки:

    Logto Attributes

Вы также можете указать дополнительные атрибуты пользователя на стороне Azure AD. Logto будет вести учет оригинальных атрибутов пользователя, возвращаемых от IdP, в поле sso_identity пользователя.

Назначьте пользователей для приложения Azure SAML SSO

Вам потребуется назначить пользователей для приложения Azure SAML SSO, чтобы они могли использовать SSO.

Посетите раздел Users and groups в вашем приложении Azure AD SSO. Нажмите Add user/group, чтобы назначить пользователей для приложения Azure AD SSO. Только пользователи, назначенные вашему приложению Azure AD SSO, смогут аутентифицироваться через соединитель Azure AD SSO.

Assign Users

Включите соединитель Azure SAML SSO в Logto

Установите домен электронной почты и включите соединитель Azure SAML SSO в Logto

Укажите domains электронной почты вашей организации на вкладке experience соединителя SAML SSO в Logto. Это позволит использовать соединитель SSO в качестве метода аутентификации для этих пользователей.

Email Domain

Пользователи с адресами электронной почты в указанных доменах будут ограничены использованием соединителя SAML SSO в качестве единственного метода аутентификации.

Включите соединитель Azure SAML SSO в опыте входа Logto

Перейдите на вкладку Sign-in Experience и включите корпоративное SSO.

Enable SSO

Теперь вы можете протестировать интеграцию SSO, используя кнопку превью в правом верхнем углу раздела Sign-in Experience preview.