简体中文
  • saml
  • azure
  • ad
  • sso

如何将 Azure AD (Entra ID) SAML SSO 集成到你的认证提供商中

学习如何使用标准 SAML 连接器将 Azure AD SSO 与 Logto 集成。

Simeng
Simeng
Developer

Logto 提供了一个开箱即用的 SAML 连接器,以便与 SSO 身份提供商集成。每个提供商都有其特定的配置信息。本指南将带你完成将 Azure AD 与 Logto 集成的步骤。

在 Logto 中创建一个新的 SAML 社交连接器

  1. 访问你的 Logto 云控制台 并导航到连接器部分。

  2. 切换到 社会连接器 标签并点击右上角的 添加社会连接器 按钮。

    Logto 云控制台

  3. 选择 SAML 连接器。

    SAML 连接器

    你将看到 SAML 连接器创建表单:

    连接器创建表单

  4. 填写连接器的一般信息

    连接器一般信息

    字段名称描述
    社交登录按钮名称将在登录页面显示的社会登录按钮的名称。
    社交登录按钮的 Logo URL将在登录页面显示的社会登录按钮的 Logo URL。
    身份提供商名称身份提供商的名称。这可能帮助你识别连接器的目标提供商。
    同步个人信息是否仅在初次注册后或在每次登录会话后从身份提供商同步用户个人信息。
  5. 设置实体 ID 和断言消费者服务 URL

    实体 ID 和断言消费者服务 URL

    实体 ID 和 ACS URL 是身份和服务提供商在 SAML 交换过程中使用的重要组件。

    SP 实体 ID: 实体 ID 是在基于 SAML 的系统中表示 SAML 实体的唯一标识符。它用于区分 SAML 交换中的不同参与者。SP 实体 ID 帮助 IdP 识别请求的受众并建立信任。

    ACS URL(断言消费者服务 URL): ACS URL 是服务提供商(Logto)提供的特定端点,身份提供商(IdP)在成功认证后向其发送 SAML 断言。一旦用户被 IdP 认证,IdP 生成一个包含用户属性并进行了数字签名的 SAML 断言。IdP 随后将此断言发送到 SP 的 ACS URL。SP 验证断言,提取用户属性,并完成用户登录。

    字段名称描述示例
    SP 实体 ID(受众)AzureAD 用于识别 Logto 身份的 SP 实体。推荐使用你的 Logto 租户端点作为实体 ID。https://<tenant-id>.logto.app
    IdP 单点登录 URLIdP 登录端点。在 Azure 中是可选的。此字段用于 SP 识别 IdP 发起的登录会话。目前 Logto 不支持 IdP 发起的登录会话。请留空此字段。
    X.509 证书用于签署 SAML 断言的 IdP 证书。(我们将在稍后从 AzureAD 获取此证书)
    IdP 元数据的 XML 格式IdP 元数据的 XML 文件内容。(我们将在稍后从 Azure AD 获取此文件)
    断言消费者服务 URLSP 的 ACS URL。SP(Logto)接受 SAML 断言请求的端点。用你自己的租户 ID 和连接器 ID 替换。https://<tenant-id>.logto.app/api/authn/saml/<connector-id>

在 Azure 门户中创建 SAML SSO 应用程序

  1. 登录到 Azure Active Directory 仪表盘。选择“企业应用”。

    企业应用

  2. 选择“新建应用” → “创建你自己的应用”。

    创建你自己的应用

  3. 初始化一个 SAML 应用。

    初始化一个 SAML 应用

  4. 使用你在 Logto 设置的 实体 IDACS URL 填写配置。

    SAML 应用配置

  5. 配置用户属性和声明

    你可以通过点击“编辑”按钮在“用户属性 & 声明”部分配置用户属性。

    用户属性和声明

    Logto 需要在 SAML 断言中发送以下基本用户属性:

    声明名称属性名称
    http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddressuser.mail
    http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameuser.name
  6. 将用户或用户组分配至 SAML 应用 为了让用户或用户组得以认证,我们需要将他们分配到 AzureAD SAML 应用中。从导航菜单的“管理”部分中选择“用户和组”。然后选择“添加用户/组”。

    分配用户和组

  7. 通过下载证书和元数据文件获得 AzureAD IdP 详细信息。 通过点击“下载”按钮来下载 联合元数据 XML 文件和 证书(Base64) 文件。你需要这些文件来完成 Logto 中的 SAML 连接器创建。

    下载 IdP 元数据和证书

返回 Logto 完成 SAML 连接创建

切换回 Logto 云控制台的 SAML 连接器创建表单并继续填写 IdP 详细信息。将 IdP 元数据 XML 文件内容复制到 IdP 元数据字段。将 IdP 证书粘贴到 IdP 证书字段。

IdP 详细信息

设置用户资料映射

根据 AzureAD 的用户声明设置,你可以在 Logto 中进行关键映射配置:

Logto 可用的用户字段为:

点击“保存并完成”。

启用 SAML 连接器

一旦你完成了 SAML 连接器的创建,你可以通过导航到“登录体验”部分并添加连接器为“社会登录”方法来启用连接器:

启用 SAML 连接器

使用我们的预览演示应用验证你的 AzureAD SSO 登录:

AzureAD SSO 登录

恭喜!你已成功将 AzureAD SSO 与 Logto 集成。现在你可以使用 AzureAD 登录你的 Logto 账户。