Skip to main content

为 GitHub Enterprise Cloud 选择企业类型

若要确定用户如何访问 GitHub Enterprise Cloud 上的公司资源,请问自己一些有关公司、管理员、用户的需求和工作流的问题。

关于企业类型

在开始使用 GitHub Enterprise Cloud 之前,必须确定企业成员将如何访问公司的数据,例如组织、存储库、问题和拉取请求。

在 GitHub Enterprise Cloud 上,企业帐户是用户进行协作的中心位置。 通过企业帐户,用户还可以保护、管理、治理对公司数据的访问。 有关详细信息,请参阅“关于企业帐户”。

用户可用的特性和功能取决于你创建的企业类型。 你可以选择以下两种企业类型之一:

企业类型用户标识身份验证预配
在 GitHub.com 上拥有个人帐户的企业GitHub.com 上的现有个人帐户
  • GitHub.com 的用户名和密码
  • (可选)通过外部身份管理系统,进行其他的安全断言标记语言 (SAML) 身份验证
  • 无;用户拥有帐户,企业和组织所有者手动授予成员身份
  • (可选)使用身份管理系统中的跨域身份管理系统 (SCIM) 来预配对使用 SAML 身份验证的单个组织的访问
具有托管用户的企业由外部身份管理系统管理
  • SAML
  • 如果使用 Microsoft Entra ID(以前称为 Azure AD),则为 OpenID Connect (OIDC)
  • 身份管理系统中的 SCIM

如果公司不熟悉 GitHub Enterprise Cloud,个人帐户和 Enterprise Managed Users 同样易于采用。

为了在开源社区进行协作,同时在托管环境中采用内部开源 (innersource),一些公司以在 GitHub.com 上拥有个人帐户的现有企业的身份来维护存储库,同时还创建单独的 具有托管用户的企业。

为了选择最适合你和用户的企业类型,请问自己以下问题。

是否希望控制用户的用户帐户?

如果你不希望企业成员在 GitHub.com 上使用其自己的个人帐户来访问企业资源,则 Enterprise Managed Users 可能适合你的企业。

Enterprise Managed Users 可为用户提供真正的 SSO 体验。 如果选择 Enterprise Managed Users,则将为用户预配帐户,且用户无需登录到单独的用户帐户。 还可通过控制与帐户关联的用户名和电子邮件地址,确保这些用户帐户符合公司标识。

如果不选择 Enterprise Managed Users,则每个用户必须在 GitHub.com 上创建、管理和登录到个人帐户。 可以配置 SAML 身份验证,这样用户除了登录到个人帐户外,还必须向外部身份管理系统进行身份验证。 成功进行 SAML 身份验证后, GitHub 会将用户的个人帐户链接到身份管理系统上的外部标识。

如果你当前要求用户在 GitHub.com 上创建新的个人帐户,以帮助增加公司的资源,则 Enterprise Managed Users 可能是更好的替代。 如果仅将外部身份管理系统用作用户和访问管理的事实来源会增加太多复杂性,则可创建一个企业,以便能够为 GitHub.com 上的现有个人帐户配置其他 SAML 访问控制,这可能是更好的选择。 例如,也许你的企业没有在身份管理系统中加入新用户的既定流程。

你的外部身份管理系统是否受支持?

如果选择使用 GitHub.com 上的个人帐户来创建企业,则可以使用符合 SAML 2.0 标准的外部身份管理系统,配置其他的身份验证。 此外,GitHub 还正式支持一些身份管理系统,并进行了相关测试。 有关详细信息,请参阅“为企业配置 SAML 单点登录”。

GitHub 合作伙伴身份管理系统的一些开发人员合作,提供“铺好道路”的 Enterprise Managed Users 集成。 为了简化配置并确保完全支持,GitHub 建议使用单个合作伙伴 IdP 进行身份验证和预配。如果使用合作伙伴标识提供程序 (IdP),则可在 IdP 上配置一个应用程序,以提供身份验证和预配。 IdP 必须支持 SAML 2.0 标准。 或者,如果使用 Entra ID(以前称为 Azure AD),则可配置 OpenID Connect (OIDC) 身份验证。 如果不使用合作伙伴 IdP,或者仅使用合作伙伴 IdP 进行身份验证,则可以集成实施 SAML 2.0 和跨域身份管理系统 (SCIM) 2.0 标准的 IdP。 有关详细信息,请参阅“关于 Enterprise Managed Users”。

你的用户是在公共存储库、Gist 还是在 GitHub Pages 站点上工作?

为防止企业成员在 GitHub.com 上意外将企业拥有的内容泄露给公众,Enterprise Managed Users 对用户可执行的操作施加了严格的限制。 例如,托管用户帐户 无法创建公共存储库、任何可见性的 Gist 或在企业外部可见的 GitHub Pages 站点。 有关限制的完整列表,请参阅“托管用户帐户的功能和限制”。

某些企业可能无法接受这些限制。 要确定 Enterprise Managed Users 是否适合你,请与你的用户一起了解限制,并确认任何限制是否会阻碍你现有的工作流。 如果是这样,拥有个人帐户的企业可能是企业的更好选择。

用户是否依赖于企业外部的协作?

托管用户帐户 仅适用于企业内的存储库。 如果你的开发人员必须参与企业内外的存储库(包括专用存储库),则 Enterprise Managed Users 可能不适合你的企业。 具有个人帐户的企业可能是更好的解决方案。

如果你的公司以在 GitHub.com 上拥有个人帐户的现有企业的身份来维护存储库,并且创建了单独的 具有托管用户的企业,则从单个工作站参与两家企业拥有的存储库的用户必须在浏览器内部,在 GitHub.com 上的帐户之间切换。 用户可能还需要自定义工作站的 Git 配置,以适应这两个帐户。 此工作流的复杂性可能会增加错误地将内部代码泄露给公众的风险。

如果你选择 Enterprise Managed Users,但要求用户从单个工作站参与企业外部的资源,则可以在开发人员的本地 Git 配置中为帐户之间的切换提供支持。 有关详细信息,请参阅“关于 Enterprise Managed Users”。

企业能否容忍迁移成本?

如果你的企业已在使用 GitHub.com 上的个人帐户,则采用 Enterprise Managed Users 时,必须迁移到新的企业帐户。 有关详细信息,请参阅“关于 Enterprise Managed Users”。

尽管 Enterprise Managed Users 在成本方面与使用个人帐户的企业没有不同,但迁移过程可能需要团队付出一定的时间或成本。 确认你的企业和用户可以接受此迁移过程。 如果是这样,拥有个人帐户的企业可能是你的更好选择。

延伸阅读