Интеграция Azure SAML SSO с использованием Logto
Узнайте, как интегрировать Azure SAML SSO с использованием Logto за несколько минут.
Узнайте, как интегрировать Azure SAML SSO с использованием Logto за несколько минут.
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 в другой вкладке и следуйте шагам для создания корпоративного приложения на стороне Azure.
Перейдите на портал Azure и войдите как администратор.
Выберите службу Microsoft Entra ID.
Перейдите в раздел Enterprise applications с помощью бокового меню. Нажмите New application и выберите Create your own application в верхнем меню.
Введите название приложения и выберите Integrate any other application you don't find in the gallery (Non-gallery).

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

Нажмите Save, чтобы сохранить конфигурацию.
Как только приложение SAML SSO будет создано в Azure, вам потребуется предоставить конфигурацию метаданных SAML IdP в Logto. Конфигурация метаданных содержит открытый сертификат SAML IdP и конечную точку SAML SSO.
Logto предоставляет три различных способа настройки метаданных SAML. Самый простой способ — через URL метаданных. Вы можете найти URL метаданных на портале Azure.
Скопируйте App Federation Metadata Url из раздела SAML Certificates section вашего приложения Azure AD SSO и вставьте его в поле Metadata URL в Logto.

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

Logto предоставляет гибкий способ сопоставления атрибутов пользователя, возвращаемых от IdP, с атрибутами пользователя в Logto. Следующие атрибуты пользователя от IdP будут синхронизированы с Logto по умолчанию:
nameID из ответа SAML как идентификатор идентичности пользователя SSO.email из ответа SAML как основной адрес электронной почты пользователя по умолчанию.Вы можете управлять логикой сопоставления атрибутов пользователя либо на стороне Azure AD, либо на стороне Logto.
Сопоставьте атрибуты пользователя 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 для улучшения пользовательского опыта)

Сопоставьте атрибуты пользователя AzureAD с атрибутами пользователя Logto на стороне AzureAD.
Посетите раздел Attributes & Claims в вашем приложении Azure AD SSO.
Нажмите Edit и обновите поля Additional claims в соответствии с настройками атрибутов пользователя Logto:
Save, чтобы продолжить.В итоге вы получите следующие настройки:

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

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

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

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