使用 Microsoft Entra ID 配置 GitHub Enterprise Managed User 进行单一登录

本文介绍如何将 GitHub Enterprise Managed User (EMU) 与 Microsoft Entra ID 集成。 将 GitHub Enterprise Managed User 与 Microsoft Entra ID 集成后,可以:

  • 在 Microsoft Entra ID 中控制谁有权访问 GitHub Enterprise Managed User。
  • 让用户能够使用其 Microsoft Entra 帐户自动登录到 GitHub Enterprise Managed User。
  • 在中心位置管理帐户。

注意

GitHub Enterprise 托管用户 是 GitHub Enterprise Cloud 的一项功能,不同于 GitHub Enterprise 的标准 SAML SSO 实现。 如果你没有特意请求 EMU 实例,则你拥有标准的 GitHub Enterprise Cloud 计划。 在这种情况下,请参阅相关文档,将非 EMU 组织企业帐户 配置为使用 Microsoft Entra ID 进行身份验证。

先决条件

本文中概述的方案假定你已具备以下先决条件:

  • 已启用 GitHub Enterprise Managed User 单一登录 (SSO) 的订阅。

方案描述

本文中,您将在测试环境中配置并测试 Microsoft Entra SSO。

  • GitHub Enterprise Managed User 支持 SP 和 IDP 发起的 SSO。
  • GitHub Enterprise Managed User 需要 自动 用户预配

若要配置 GitHub Enterprise Managed User 与 Microsoft Entra ID 的集成,需要从库中将 GitHub Enterprise Managed User 添加到托管 SaaS 应用列表。

  1. 以至少云应用程序管理员身份登录到 Microsoft Entra 管理中心
  2. 浏览到 Entra ID>企业应用>新应用
  3. 在搜索框中键入“GitHub Enterprise 托管用户”。
  4. 从结果面板中选择 GitHub Enterprise Managed User ,然后选择“ 创建 ”按钮。 在该应用添加到租户时等待几秒钟。

或者,也可以使用 企业应用配置向导。 在此向导中,还可以将应用程序添加到租户、将用户/组添加到应用、分配角色以及演练 SSO 配置。 详细了解 Microsoft 365 向导。

配置并测试 GitHub Enterprise Managed User 的 Microsoft Entra SSO

若要配置并测试 GitHub Enterprise Managed User 的 Microsoft Entra SSO,请执行以下步骤:

  1. 配置 Microsoft Entra SSO - 在 Microsoft Entra 租户中启用 SAML 单一登录。
  2. 配置 GitHub Enterprise Managed User SSO - 在 GitHub Enterprise 中配置单一登录设置。

配置 Microsoft Entra SSO

按照以下步骤启用 Microsoft Entra SSO。

  1. 以至少云应用程序管理员身份登录到 Microsoft Entra 管理中心

  2. 浏览到 Entra ID>企业应用>GitHub Enterprise Managed User>单点登录

  3. 在“选择单一登录方法”页上选择“SAML” 。

  4. “使用 SAML 设置单一登录 ”页上,选择 基本 SAML 配置的 铅笔图标以编辑设置。

    截图显示编辑基本 SAML 配置。

  5. 在开始之前,请确保已准备好你的企业 URL。 下面提到的“实体”字段是启用了 EMU 的企业 URL 的企业名称。 例如, https://github.com/enterprises/contoso - contoso 就是实体。 如果要在“IDP”发起的模式下配置应用程序,请在“基本 SAML 配置”部分中输入以下字段的值 :

    a。 在“标识符”文本框中,使用以下模式键入 URL:

    注意

    请注意,标识符格式不同于应用程序的建议格式 - 请遵循上述格式。 此外,请确保标识符不包含尾部斜杠。

    b. 在“回复 URL”文本框中,使用以下模式键入 URL:

  6. 若要在 SP 启动模式下配置应用程序,请选择“设置其他 URL”,并执行以下步骤:

    在“登录 URL” 文本框中,使用以下模式键入 URL:

  7. 在“使用 SAML 设置单一登录”页的“SAML 签名证书”部分中,找到“证书 (PEM)”,选择“PEM 证书下载”以下载该证书并将其保存到计算机上

    屏幕截图显示了证书下载链接。

  8. 在“设置 GitHub Enterprise Managed User”部分,复制并保存以下 URL,供稍后在配置 GitHub 时使用。

    用于复制配置 URL 的屏幕截图。

分配 Microsoft Entra 测试用户

在本部分中,你将帐户分配到 GitHub Enterprise Managed User,以便完成 SSO 设置。

  1. 以至少云应用程序管理员身份登录到 Microsoft Entra 管理中心
  2. 浏览到 Entra ID>企业应用程序>GitHub Enterprise 托管用户
  3. 在应用的概述页中,找到“管理”部分,选择“用户和组” 。
  4. 选择“添加用户”,然后在“添加分配”对话框中选择“用户和组”。
  5. 在“ 用户和组 ”对话框中,从“用户”列表中选择你的帐户,然后选择屏幕底部的 “选择 ”按钮。
  6. “选择角色 ”对话框中,选择 “企业所有者 ”角色,然后选择屏幕底部的 “选择 ”按钮。 在下一篇文章中为您的帐户进行预配时,您的帐户将被分配为 GitHub 实例的企业账户所有者。
  7. 在“添加分配”对话框中,选择“分配”按钮 。

配置 GitHub Enterprise Managed User SSO

若要在 GitHub Enterprise Managed User 端配置单一登录,需要以下项:

  1. 上述 Microsoft Entra Enterprise Managed User 应用程序中的 URL:登录 URL;Microsoft Entra 标识符;注销 URL
  2. GitHub Enterprise 的第一个管理员用户的帐户名和密码。 这些凭据是通过 GitHub 解决方案工程联系人所发送的密码重置电子邮件提供的。

启用 GitHub Enterprise Managed User SAML SSO

在本部分中,你将获取上述 Microsoft Entra ID 中提供的信息,并将它们输入到企业设置中以启用 SSO 支持。

  1. 转到 https://github.com
  2. 选择右上角的“登录”
  3. 输入第一个管理员用户帐户的凭据。 登录句柄应采用以下格式:<your enterprise short code>_admin
  4. 导航到 https://github.com/enterprises/<your enterprise name>。 此信息应由解决方案工程联系人提供。
  5. 在左侧导航菜单中,选择“设置”,然后选择“身份验证安全性”。
  6. 选中“需要 SAML 身份验证”复选框
  7. 输入“登录 URL”。 此 URL 是前面从 Microsoft Entra ID 复制的“登录 URL”。
  8. 填写“颁发者”。 此 URL 是前面从 Microsoft Entra ID 复制的 Microsoft Entra 标识符。
  9. 填写“公共证书”。 请打开前面下载的 base64 证书,并将该文件的文本内容粘贴到此对话框中。
  10. 选择“ 测试 SAML 配置”。 此时会打开一个对话框,可在其中使用 Microsoft Entra 凭据登录,以验证 SAML SSO 是否已正确配置。 使用 Microsoft Entra 凭据登录。 测试时,可能需要清除浏览器的缓存,以确保登录到正确的租户。 当成功验证后,您会收到一条消息:已成功对 SAML SSO 身份进行认证
  11. 选择 “保存” 以保留这些设置。
  12. 请在安全的位置保存(下载、打印或复制)恢复代码。
  13. 此时,只有使用 SSO 的帐户才能登录到你的企业。 请按照以下文档中的预配说明来预配 SSO 支持的帐户。

GitHub Enterprise Managed User 要求 通过自动用户预配创建所有帐户,可 在此处 找到有关如何配置自动用户预配的更多详细信息。