Skip to main content

从 SAML 迁移到 OIDC

如果使用 SAML 对 enterprise with managed users 中的成员进行身份验证,则可以迁移到 OpenID Connect (OIDC),并受益于对 IdP 的条件访问策略的支持。

若要使用标识提供者管理企业中的用户,企业必须启用 Enterprise Managed Users,它适用于 GitHub Enterprise Cloud。 有关详细信息,请参阅“关于 Enterprise Managed Users”。

注意:对 Enterprise Managed Users 的 OpenID Connect (OIDC) 和条件访问策略 (CAP) 支持仅适用于 Azure AD。

关于将 enterprise with managed users 从 SAML 迁移到 OIDC

如果 enterprise with managed users 使用 SAML SSO 通过 Azure Active Directory (Azure AD) 进行身份验证,则可以迁移到 OIDC。 When your enterprise uses OIDC SSO, GitHub will automatically use your IdP's conditional access policy (CAP) IP conditions to validate user interactions with GitHub, when members change IP addresses, and each time a personal access token or SSH key is used.

从 SAML 迁移到 OIDC 时,managed user accounts 和以前为 SAML 预配但未由 GitHub Enterprise Managed User (OIDC) 应用程序预配的组会将“(SAML)”追加到其显示名称。

如果你不熟悉 Enterprise Managed Users 并且尚未为企业配置身份验证,则无需迁移,并且可以立即设置 OIDC 单一登录。 有关详细信息,请参阅“为 Enterprise Managed User 配置 OIDC”。

迁移企业

注意:若要以设置用户身份登录,则需要恢复代码。 如果还没有恢复代码,则可以在以企业所有者身份登录时访问这些代码。 有关详细信息,请参阅“下载企业帐户的单一登录恢复代码”。

  1. 在开始迁移之前,请登录到 Azure,并在现有 GitHub Enterprise Managed User 应用程序中禁用预配。

  2. 如果在 Azure AD 中使用条件访问 (CA) 网络位置策略,并且当前在 GitHub.com 上将 IP 允许列表与企业帐户或企业帐户拥有的任何组织一起使用,则禁用 IP 允许列表。 有关详细信息,请参阅“在企业中实施安全设置”和“管理组织允许的 IP 地址”。

  3. 使用用户名“@SHORT-CODE_admin”以企业的设置用户身份登录到 GitHub.com。

  4. 当系统提示继续访问标识提供者时,请单击“使用恢复代码”,并使用企业恢复代码之一登录。

  5. 在 GitHub.com 的右上角,单击你的个人资料照片,然后单击“你的企业”。 GitHub Enterprise Cloud 上个人资料照片下拉菜单中的“你的企业”

  6. 在企业列表中,单击您想要查看的企业。 企业列表中的企业名称

  7. 在企业帐户侧边栏中,单击 “设置”。 企业帐户侧边栏中的“设置”选项卡

  8. In the left sidebar, click Authentication security. Security tab in the enterprise account settings sidebar

  9. 在页面底部的“迁移到 OpenID Connect 单一登录”旁边,单击“使用 Azure 进行配置”。

    警告:迁移可能需要长达一个小时,并且迁移期间不会预配任何用户。 可通过返回到企业的安全设置页,确认迁移是否仍在进行中;如果“需要 SAML 身份验证”仍处于选中状态,则迁移仍在进行中。

    显示“使用 Azure 进行配置”按钮的屏幕截图

  10. 阅读这两个警告,然后单击以继续。

  11. 在 GitHub Enterprise Cloud 将你重定向到 IdP 后,登录,然后按照说明授予同意并安装 GitHub Enterprise Managed User (OIDC) 应用程序。 在 Azure AD 通过 OIDC 请求 GitHub Enterprise Managed Users 的权限后,启用“代表组织同意”,然后单击“接受” 。

    警告:必须以具有全局管理员权限的用户身份登录到 Azure AD,才能同意安装 GitHub Enterprise Managed User (OIDC) 应用程序。

  12. 在新选项卡或窗口中,在 GitHub.com 上以设置用户身份登录时,请使用 admin:enterprise 范围和 no expiration 创建 personal access token (classic),并将其复制到剪贴板 。 有关创建新令牌的详细信息,请参阅“创建 personal access token”。

  13. 在 Azure 门户中 GitHub Enterprise Managed User (OIDC) 应用程序的设置中,在“租户 URL”下键入 https://api.github.com/scim/v2/enterprises/YOUR_ENTERPRISE,将 YOUR_ENTERPRISE 替换为企业帐户的名称。

    例如,如果企业帐户的 URL 为 https://github.com/enterprises/octo-corp,则企业帐户的名称为 octo-corp

  14. 在“机密令牌”下,粘贴之前创建的带有 admin:enterprise 范围的 personal access token (classic)。

  15. 要测试配置,请单击“测试连接”。

  16. 要保存更改,请在窗体顶部单击“保存”。

  17. 在 Azure 门户中,将用户和组从旧 GitHub Enterprise Managed User 应用程序复制到新的 GitHub Enterprise Managed User (OIDC) 应用程序。

  18. 通过预配单个新用户来测试配置。

  19. 如果测试成功,请单击“开始预配”,开始为所有用户预配。