Skip to main content
我们经常发布文档更新,此页面的翻译可能仍在进行中。 有关最新信息,请访问英语文档

关于 Enterprise Managed Users

可以从标识提供者的 GitHub 上集中管理企业成员的标识和访问。

关于 Enterprise Managed Users

使用 Enterprise Managed Users,可以通过标识提供者 (IdP) 控制企业成员的用户帐户。 IdP 中分配给 GitHub Enterprise Managed User 应用程序的用户将会预配为 GitHub 上的新用户帐户,并添加到企业中。 可以通过 IdP 控制用户帐户的用户名、配置文件数据、团队成员身份和存储库访问权限。

在 IdP 中,你可以为每个 托管用户帐户 提供用户、企业所有者或计费管理员的角色。 托管用户帐户 可以拥有企业内的组织,并且可以将其他 托管用户帐户 添加到组织和其中的团队。 有关详细信息,请参阅“企业中的角色”和“关于组织”。

企业使用 OIDC SSO 时,GitHub 将自动使用 IdP 的条件访问策略 (CAP) IP 条件来验证用户与 GitHub 的交互,当成员更改 IP 地址时,每次使用 personal access token 或 SSH 密钥时都会验证。 有关详细信息,请参阅“关于对 IdP 的条件访问策略的支持”。

可以授予 托管用户帐户 访问权限以及参与企业内部存储库的能力,但 托管用户帐户 无法创建公共内容,也不能与其他用户、组织和企业协作处理 GitHub 的其余部分。 有关详细信息,请参阅“托管用户帐户 的功能和限制”。

企业的 托管用户帐户 的用户名及其个人资料信息(例如显示名称和电子邮件地址)通过 IdP 设置,用户无法自行更改。 有关详细信息,请参阅“用户名和个人资料信息”。

企业所有者可以在 GitHub 上审核所有 托管用户帐户 的操作。 有关详细信息,请参阅“企业的审核日志事件”。

若要使用 Enterprise Managed Users,需要启用了 Enterprise Managed Users 的单独企业帐户类型。 有关创建此帐户的详细信息,请参阅“关于具有托管用户的企业”。

注意:使用 GitHub Enterprise Cloud 进行标识和访问管理有多个选项,而 Enterprise Managed Users 并不是每个客户的最佳解决方案。 如需详细了解 Enterprise Managed Users 是否适合你的企业,请参阅“关于企业身份验证”。

关于组织成员身份管理

可手动管理组织成员身份,也可使用 IdP 组自动更新成员身份。 要通过 IdP 管理组织成员身份,必须将成员添加到 IdP 组,并且 IdP 组必须连接到组织内的团队。 有关自动管理组织和团队成员身份的详细信息,请参阅“使用标识提供者组管理团队成员身份”。

将成员添加到企业拥有的组织的方式(通过 IdP 组或手动)决定了必须如何从组织中删除他们。

  • 如果将成员手动添加到组织,则必须手动将其删除。 从 IdP 上的 GitHub Enterprise Managed User 应用程序中取消分配他们,将暂停用户,但不会将其从组织中删除。
  • 如果用户由于被添加到映射到组织中的一个或多个团队的 IdP 组而成为该组织的成员,则从与组织关联的所有映射的 IdP 组中删除这些用户会将其从组织中删除。

要了解成员是如何添加到组织中的,可以按类型筛选成员列表。 有关详细信息,请参阅查看企业中的人员

标识提供者支持

Enterprise Managed Users 支持以下 IdP 和身份验证方法:

SAMLOIDC
Azure Active Directory
Okta

注意:Enterprise Managed Users 要求对 SAML 和 SCIM 使用一个 IdP。 确认已购买包含 SCIM 的 IdP 版本。

托管用户帐户 的功能和限制

托管用户帐户 只能参与企业中的专用和内部存储库及其用户帐户拥有的专用存储库。 托管用户帐户 对更广泛的 GitHub 社区具有只读访问权限。 这些针对用户和内容的可见性和访问限制适用于所有请求,包括 API 请求。

  • 不能邀请 托管用户帐户 加入企业外部的组织或存储库,也不能邀请 托管用户帐户 加入其他企业。
  • 托管用户帐户 和创建的内容只对企业的其他成员可见。
  • 其他 GitHub 用户无法查看、提及或邀请 托管用户帐户 进行协作。
  • 托管用户帐户 可以查看 GitHub.com 上的所有公共存储库,但不能以下列任何方式与企业外的存储库进行交互:
    • 将代码推送到存储库
    • 在存储库中创建问题或拉取请求
    • 在存储库中创建讨论或对讨论发表评论
    • 对问题或拉取请求发表评论,或添加对评论的回复
    • 星级评定、监视存储库,或创建存储库的分支
  • 托管用户帐户 无法创建 Gist 或对 Gist 添加评论。
  • 托管用户帐户 无法关注企业外部的用户。
  • 托管用户帐户 无法为 GitHub Actions 创建入门工作流。
  • 托管用户帐户 无法在其用户帐户上安装 GitHub Apps。
  • 可以选择 托管用户帐户 是否能够创建其用户帐户拥有的存储库。 有关详细信息,请参阅“在企业中实施存储库管理策略”。
  • 如果允许 托管用户帐户 创建其用户帐户拥有的存储库,则他们只能拥有专用存储库,并且只能邀请其他企业成员协作处理其用户拥有的存储库。
  • 托管用户帐户 无法从企业外部创建分支存储库。 托管用户帐户 可以将企业中组织所拥有的专用或内部存储库的分支创建到其用户帐户命名空间或企业拥有的其他组织,具体由企业策略规定。
  • 只能在 具有托管用户的企业 拥有的组织中创建专用和内部存储库,具体取决于组织和企业存储库可见性设置。
  • Enterprise Managed Users 不支持外部协作者。
  • 托管用户帐户 在使用 GitHub Pages 方面受到限制。 有关详细信息,请参阅“关于 GitHub Pages”。

Enterprise Managed Users 入门

必须先执行一系列配置步骤,开发人员才能将 GitHub Enterprise Cloud 与 Enterprise Managed Users 一起使用。

  1. 若要使用 Enterprise Managed Users,需要启用了 Enterprise Managed Users 的单独企业帐户类型。 若要试用 Enterprise Managed Users 或讨论从现有企业迁移的选项,请联系 GitHub 的销售团队

    GitHub 销售团队的联系人将与你合作创建新的 具有托管用户的企业。 你需要为将设置企业的用户提供电子邮件地址,以及一个短代码,该代码将用作企业成员用户名的后缀。 短代码必须是企业唯一的,长度为 3 ~ 8 个字符,由字母和数字组成,不包含特殊字符。 有关详细信息,请参阅“用户名和个人资料信息”。

  2. 创建企业后,你将收到来自 GitHub 的电子邮件,邀请你为企业的设置用户选择密码,该用户将是企业的第一个所有者。 设置密码时,请使用隐身或专用浏览窗口。 设置用户仅用于为企业配置单一登录和 SCIM 预配集成。 成功启用 SSO 后,设置用户将不再有权管理企业帐户。 设置用户的用户名是企业的短代码,后缀为 _admin

    如果需要重置设置用户的密码,请通过 GitHub 支持门户 联系 GitHub 支持。

  3. 你以设置用户身份登录后,我们建议你启用双因素身份验证。 有关详细信息,请参阅“配置双因素身份验证”。

  4. 首先,请配置 成员如何进行身份验证。 如果使用 Azure Active Directory 作为标识提供者,可以在 OpenID Connect (OIDC) 和安全断言标记语言 (SAML) 之间进行选择。 建议使用 OIDC,其中包括对条件访问策略 (CAP) 的支持。 如果需要从一个租户预配具有 托管用户帐户 的多个企业,则必须在第一个之后为每个企业使用 SAML。 如果使用 Okta 作为标识提供者,则可以使用 SAML 对成员进行身份验证。

    首先,请阅读所选身份验证方法的指南。

  5. 配置 SSO 后,可以配置 SCIM 预配。 SCIM 是标识提供者在 GitHub.com 上创建 托管用户帐户 的方式。 有关配置 SCIM 预配的详细信息,请参阅“为企业托管用户配置 SCIM 预配”。

  6. 配置身份验证和预配后,可以通过将 IdP 组与团队同步来开始管理 托管用户帐户 的组织成员身份。 有关详细信息,请参阅使用标识提供者组管理团队成员身份

如果企业成员必须使用一个工作站同时从 托管用户帐户 和个人帐户参与 GitHub.com 上的存储库,则可以提供支持。 有关详细信息,请参阅“支持在 GitHub.com 上具有多个用户帐户的开发人员”。

作为 托管用户帐户 进行身份验证

托管用户帐户 必须通过其标识提供者进行身份验证。 若要进行身份验证,托管用户帐户 可以访问其 IdP 应用程序门户或使用 GitHub.com 上的登录页。

默认情况下,当未经身份验证的用户尝试访问使用 Enterprise Managed Users 的企业时,GitHub 会显示 404 错误。 企业所有者可以选择性地启用自动重定向到单一登录 (SSO),而不会显示 404。 有关详细信息,请参阅“为企业中的安全设置强制实施策略”。

如果 SAML 配置错误或标识提供者 (IdP) 问题阻止你使用 SAML SSO,你可以使用恢复代码访问你的企业。 有关详细信息,请参阅“管理企业的恢复代码”。

通过 GitHub.com 作为 托管用户帐户 进行身份验证

  1. 导航到 https://github.com/login
  2. 在“用户名或电子邮件地址”文本框中,输入用户名,包括下划线和短代码。 显示登录表单的屏幕截图 表单识别用户名后将更新。 无需在此表单中输入密码。
  3. 若要继续访问标识提供者,请单击“使用标识提供者登录”。 显示“使用标识提供者登录”按钮的屏幕截图

用户名和个人资料信息

GitHub Enterprise Cloud 通过规范 IdP 提供的标识符自动为每个用户创建用户名。 有关详细信息,请参阅“外部身份验证的用户名注意事项”。

如果在规范化期间删除 IdP 提供的标识符的唯一部分,则预配用户时可能会发生冲突。 如果由于用户名冲突而无法预配用户,则应修改 IdP 提供的用户名。 有关详细信息,请参阅“解决用户名问题”。

注意:由于 GitHub 在创建每个用户名时向 IdP 提供的规范化标识符添加下划线和短代码,因此冲突只会在每个 具有托管用户的企业 内发生。 托管用户帐户 可以与企业外部 GitHub.com 上的其他用户帐户共享 IdP 标识符或电子邮件地址。

IdP 还提供了 托管用户帐户 的个人资料名称和电子邮件地址。 托管用户帐户 无法更改 GitHub 上的个人资料名称或电子邮件地址,并且 IdP 仅可提供单个电子邮件地址。

支持在 GitHub.com 上具有多个用户帐户的开发人员

团队中的人员可能需要在 GitHub.com 上参与 具有托管用户的企业 外部的资源。 例如,你可能希望为公司的开放源代码项目维护单独的企业。 由于 托管用户帐户 无法参与公共资源,因此用户需要为此工作维护单独的个人帐户。

必须使用一个工作站在 GitHub.com 上从两个用户帐户进行参与的人员可以配置 Git 以简化该过程。 有关详细信息,请参阅“管理多个帐户”。