Skip to main content

此版本的 GitHub Enterprise Server 将于以下日期停止服务 2026-08-25. 已停止发布的版本不受支持。 即使针对重大安全问题,也不会发布补丁。 若要获得更好的性能、改进的安全性和 GitHub Enterprise Server 中的新功能,请参阅升级过程的 Overview。 如需升级帮助,请联系 GitHub Enterprise 支持。

在企业中强制执行安全设置策略

您可以实施策略来管理企业组织中的安全设置,或允许在每个组织中设置策略。

谁可以使用此功能?

Enterprise owners can enforce policies for security settings in an enterprise.

关于企业中安全设置的策略

可以实施策略以控制企业拥有的组织的安全设置。 默认情况下,组织所有者可以管理安全设置。

要求企业中的组织进行双重身份验证

如果使用 你的 GitHub Enterprise Server 实例 LDAP 或内置身份验证,企业 所有者可以要求企业拥有的所有组织中的组织成员、计费经理和外部协作者使用双重身份验证来保护其用户帐户。

必须为自己的帐户启用双重身份验证,然后才能对企业拥有的所有组织都要求双重身份验证。 有关详细信息,请参阅“使用双重身份验证 (2FA) 保护您的帐户”。

在您要求使用双重身份验证之前,我们建议通知组织成员、外部协作者和帐单管理员,并要求他们为帐户设置双重身份验证。 组织所有者可以查看成员和外部协作者是否已在每个组织的“People”页面上使用 2FA。 有关详细信息,请参阅“查看组织中的用户是否已启用 2FA”。

双重身份验证代码的验证需要客户端设备和服务器上的准确时间。 站点管理员应确保时间同步已配置且准确无误。 有关详细信息,请参阅 配置时间同步

警告

  • 当你需要对企业进行双重身份验证时,不使用 2FA 的所有组织中的外部协作者(包括机器人帐户)将从组织中删除,并失去对其存储库的访问权限。 他们还会失去对组织私有仓库的复刻的访问权限。 如果他们在从你的组织中删除后的三个月内为其帐户启用双重身份验证,则可以恢复其访问特权和设置。 有关详细信息,请参阅“Reinstating a former member of your organization(恢复组织前成员的身份)”。
  • 在您启用强制性的双重身份验证后,属于贵企业旗下任一组织的任何外部协作者,如果随后为其账户禁用双重身份验证,都将被自动移出该组织。 禁用 2FA 的成员 和计费经理 在重新启用组织资源之前将无法访问它。
  • 如果你是某个要求双重身份验证的企业的唯一所有者,则在不为企业禁用双重身份验证要求的情况下,你将无法为用户帐户禁用双重身份验证。
  1. 在 GitHub Enterprise Server 的右上角,单击你的个人资料头像,然后单击“Enterprise settings”****。

  2. 在页面顶部,单击“ 设置”。

  3. 在“ Settings”下,单击“Authentication security”********。

  4. 在“Two-factor authentication(双重身份验证)”下,审查有关更改设置的信息。 (可选)若要在更改设置之前查看企业帐户中所有组织的当前配置,请单击“ View your organizations' current configurations”****。

    企业设置中某策略的屏幕截图。 框出了标有“查看组织的当前配置”的链接。

  5. 在“Two-factor authentication”下,选择“Require two-factor authentication for the enterprise and all of its organizations”,然后单击“Save”********。

  6. 如果出现提示,请阅读有关双重身份验证要求将如何影响用户对组织资源的访问的相关信息。 若要确认更改,请单击“Confirm”****。

  7. (可选)如果从您的企业拥有的组织中删除了任何外部协作者,我们建议向他们发送邀请,以恢复其以前对组织的权限和访问权限。 每个人都必须启用 2FA,然后才能接受你的邀请。

管理企业的 SSH 认证机构

您可以使用 SSH 认证机构 (CA) 来允许企业拥有的任何组织的成员使用您提供的 SSH 证书访问该组织的存储库。

成员 使用证书访问个人拥有的存储库。 可以要求成员使用 SSH 证书访问组织资源,除非仓库中禁用了 SSH。 有关详细信息,请参阅 关于 SSH 证书颁发机构

GitHub 使用 OpenSSH 格式的 SSH 用户证书,通过验证证书的签名和字段(包括有效期)来对通过 SSH 的 Git 操作进行身份验证,这些证书的签名和字段会与在组织和/或企业级别配置的受信任 SSH 证书颁发机构(CA)进行核对。

在颁发每个客户端证书时,必须包含扩展,以指定证书用于哪个 GitHub 用户。 有关详细信息,请参阅“关于 SSH 证书颁发机构”。

添加 SSH 证书颁发机构

如果您的企业需要 SSH 证书,企业成员应使用特殊的 URL 通过 SSH 进行 Git 操作。 有关详细信息,请参阅“关于 SSH 证书颁发机构”。

每个证书颁发机构只能上传到 GitHub 上的一个帐户。 如果 SSH 证书颁发机构已添加到某个组织或企业帐户,则不能将该证书颁发机构添加到 GitHub 上的其他组织或企业帐户。

如果将一个证书颁发机构添加到企业中,并将另一个证书颁发机构添加到企业组织中,则任一证书颁发机构都可用于访问组织的存储库。

  1. 在 GitHub Enterprise Server 的右上角,单击你的个人资料头像,然后单击“Enterprise settings”****。

  2. 在页面顶部,单击“ 设置”。

  3. 在“ Settings”下,单击“Authentication security”********。

  4. 在“SSH 证书颁发机构”右侧,单击“新建 CA”。

  5. 在“Key(密钥)”下,粘贴您的公共 SSH 密钥。

  6. 单击“添加 CA”。

  7. (可选)若要要求成员使用 SSH 证书,请选择“需要 SSH 证书”,然后单击“保存” 。

    注意

    当需要 SSH 证书时,用户将无法通过 HTTPS 或通过无符号的 SSH 密钥 .

    该要求不适用于获得授权的 GitHub Apps(包括用户到服务器的令牌)、部署密钥或 GitHub 功能,例如 GitHub Actions,它们是 GitHub 生态系统中的受信任环境。

管理对用户拥有的仓库的访问

如果企业使用 。

  1. 在 GitHub Enterprise Server 的右上角,单击你的个人资料头像,然后单击“Enterprise settings”****。
  2. 在页面顶部,单击“ 设置”。
  3. 在“ Settings”下,单击“Authentication security”********。
  4. 在“SSH 证书颁发机构”下,选中“访问用户拥有的存储库”复选框。

删除 SSH 认证中心

删除企业设置 GitHub 中的 SSH 证书颁发机构 (CA) 是无法撤销的。 如果您希望将来再次信任同一 CA,则需要在企业的 SSH 证书颁发机构设置中再次上传 CA 的公钥,然后将该 CA 添加回 GitHub。

删除 CA 会立即阻止 GitHub 接受由该 CA 签名的 SSH 证书,包括尚未过期的证书。 有关 CA 轮换指南,请参阅 关于 SSH 证书颁发机构

  1. 在 GitHub Enterprise Server 的右上角,单击你的个人资料头像,然后单击“Enterprise settings”****。
  2. 在页面顶部,单击“ 设置”。
  3. 在“ Settings”下,单击“Authentication security”********。
  4. 在“SSH 证书颁发机构”下,在要删除的 CA 右侧,单击“删除”。
  5. 阅读警告,然后单击“我了解,请删除此 CA”。

升级 SSH 证书颁发机构

上传到你的企业 早于 GitHub Enterprise Server 版本 3.13)允许使用不会过期的证书。 若要详细了解现在新的 CA 需要过期的原因,请参阅“关于 SSH 证书颁发机构”。 你可以升级现有 CA,以防止它发布未过期的证书。 为了获得最佳安全性,我们强烈建议你在验证不依赖于未过期证书后升级所有 CA。

  1. 在 GitHub Enterprise Server 的右上角,单击你的个人资料头像,然后单击“Enterprise settings”****。
  2. 在页面顶部,单击“ 设置”。
  3. 在“ Settings”下,单击“Authentication security”********。
  4. 在“SSH 证书颁发机构”下,在要升级的 CA 右侧,单击“升级”****。
  5. 阅读警告,然后单击“升级”****。

升级 CA 后,该 CA 签署的非过期证书将被拒绝。

延伸阅读