Skip to main content

为企业中的安全设置实施策略

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

谁可以使用此功能?

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

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

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

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

Note

自 2023 年 3 月起,GitHub 要求所有在 GitHub.com 上贡献代码的用户启用一种或多种形式的双因素身份验证 (2FA)。 如果你属于符合条件的组,当选择该组进行注册时,将收到一封通知电子邮件,该电子邮件标志着 45 天的 2FA 注册期开始,并且你会看到要求在 GitHub.com 上注册 2FA 的横幅。 如果没有收到通知,则表示你属于需要启用 2FA 的组,但我们强烈建议启用 2FA。

有关 2FA 注册推出的详细信息,请参阅此博客文章

企业所有者可以要求企业拥有的所有组织中的组织成员、计费管理员和外部协作者使用双因素身份验证来保护其用户帐户。此策略不适用于具有托管用户的企业。

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

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

Warning

  • 当你要求企业采用双重身份验证时,企业拥有的所有组织中未使用双重身份验证的外部协作者(包括机器人帐户)将从组织中移除,并失去对存储库的访问权限。 他们还会失去对组织私有仓库的复刻的访问权限。 如果他们在从你的组织中删除后的三个月内为其帐户启用双重身份验证,则可以恢复其访问特权和设置。 有关详细信息,请参阅“Reinstating a former member of your organization(恢复组织前成员的身份)”。
  • 在你启用了必需的双重身份验证之后,企业拥有的任何组织中的任何外部协作者,如果其禁用了自己帐户的双重身份验证,都将自动从该组织中移除。 禁用双重身份验证的成员和账单管理员在重新启用双重身份验证前,将无法访问组织资源。
  • 如果你是某个要求双重身份验证的企业的唯一所有者,则在不为企业禁用双重身份验证要求的情况下,你将无法为用户帐户禁用双重身份验证。

Note

你的组织中的某些用户可能已被 GitHub.com 选中进行强制双因素身份验证注册,但这不会影响你在企业中为组织启用 2FA 要求的方式。 如果你为企业内的组织启用双重身份验证要求,当前未启用双重身份验证的外部协作者将从组织中移除,包括那些按 GitHub.com 要求需启用双重身份验证的外部协作者。

  1. 在 GitHub 的右上角,单击你的个人资料照片。

  2. 根据环境,单击“你的企业”,或单击“你的企业”,然后单击要查看的企业********。

  3. 在页面左侧的企业帐户边栏中,单击 设置”。

  4. 在“ 设置”下,单击“身份验证安全性” 。

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

    企业设置中某策略的屏幕截图。 用橙色边框突出显示了标记为“查看组织的当前配置”的链接。

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

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

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

在企业的组织中要求使用安全的双重身份验证方法

除要求使用双重身份验证外,企业所有者还可以要求企业拥有的所有组织中的组织成员、计费管理员和外部协作者使用安全的 2FA 方法。 安全的双重身份验证方法包括密钥、安全密钥、Authenticator 应用和 GitHub 移动应用。 未配置安全 2FA 方法或配置了任何不安全方法的用户将无法访问企业拥有的任何组织中的资源。 此策略不适用于具有托管用户的企业。

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

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

  2. 如果出现提示,请阅读关于要求使用安全 2FA 方法将如何影响用户访问组织资源的信息。 要确认更改,请单击“Confirm”****。

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

管理企业的 SSH 认证机构

您可以使用 SSH 认证机构 (CA) 来允许企业拥有的任何组织的成员使用您提供的 SSH 证书访问该组织的存储库。 如果企业使用 Enterprise Managed Users,企业 成员也可以允许使用证书访问个人拥有的仓库。 您可以要求成员使用 SSH 证书访问组织资源,除非 SSH 已在仓库中禁用。 有关详细信息,请参阅“关于 SSH 认证中心”。

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

添加 SSH 认证中心

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

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

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

  1. 在 GitHub 的右上角,单击你的个人资料照片。

  2. 根据环境,单击“你的企业”,或单击“你的企业”,然后单击要查看的企业********。

  3. 在页面左侧的企业帐户边栏中,单击 设置”。

  4. 在“ 设置”下,单击“身份验证安全性” 。

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

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

  7. 单击“添加 CA”。

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

    Note

    当需要 SSH 证书时,用户将无法通过 HTTPS 或通过无符号的 SSH 密钥 进行身份验证来访问组织的存储库,无论该 SSH 密钥是否为需要通过外部标识系统进行身份验证的组织获得授权。

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

管理对用户所有的存储库的访问

如果企业使用 托管用户帐户,则你可以启用或禁用访问包含 SSH 证书 的用户拥有的存储库。 但是,如果企业在 GitHub.com 上使用个人帐户,则成员无法使用证书访问个人拥有的存储库。

  1. 在 GitHub 的右上角,单击你的个人资料照片。

  2. 根据环境,单击“你的企业”,或单击“你的企业”,然后单击要查看的企业********。

  3. 在页面左侧的企业帐户边栏中,单击 设置”。

  4. 在“ 设置”下,单击“身份验证安全性” 。

  5. 在“SSH 证书颁发机构”下,选中“访问用户拥有的存储库”复选框。

删除 SSH 认证中心

对 CA 的删除无法撤销。 如果以后要使用同一 CA,您需要重新上传该 CA。

  1. 在 GitHub 的右上角,单击你的个人资料照片。

  2. 根据环境,单击“你的企业”,或单击“你的企业”,然后单击要查看的企业********。

  3. 在页面左侧的企业帐户边栏中,单击 设置”。

  4. 在“ 设置”下,单击“身份验证安全性” 。

  5. 在“SSH 证书颁发机构”下,在要删除的 CA 右侧,单击“删除”。

  6. 阅读警告,然后单击“我了解,请删除此 CA”。

升级 SSH 认证中心

在 2024 年 3 月 27 日之前上传到企业 的 CA, 允许使用未过期的证书。 若要详细了解现在新的 CA 需要过期的原因,请参阅“关于 SSH 认证中心”。 你可以升级现有 CA,以防止它发布未过期的证书。 为了获得最佳安全性,我们强烈建议你在验证不依赖于未过期证书后升级所有 CA。

  1. 在 GitHub 的右上角,单击你的个人资料照片。

  2. 根据环境,单击“你的企业”,或单击“你的企业”,然后单击要查看的企业********。

  3. 在页面左侧的企业帐户边栏中,单击 设置”。

  4. 在“ 设置”下,单击“身份验证安全性” 。

  5. 在“SSH 证书颁发机构”下,在要升级的 CA 右侧,单击“升级”****。

  6. 阅读警告,然后单击“升级”****。

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

管理未经身份验证的用户的 SSO

Note

Enterprise Managed Users 自动将用户重定向到登录页面的功能目前为 公共预览版,可能随时更改。

如果你的企业使用 Enterprise Managed Users,你可以选择未经身份验证的用户在尝试访问企业资源时看到的内容。 有关 Enterprise Managed Users 的详细信息,请参阅“关于 Enterprise Managed Users”。

默认情况下,为了隐藏专用资源的存在,当未经身份验证的用户尝试访问你的企业时,GitHub 将显示 404 错误。

为防止你的开发人员混淆,你可以更改此行为,以便用户通过标识提供者 (IdP) 自动重定向到单一登录 (SSO)。 启用自动重定向后,访问企业任何资源的 URL 的任何人都可以看到该资源是否存在。 但是,只有在他们使用你的 IdP 进行身份验证后具有适当的访问权限时,他们才能看到资源。

Note

如果用户在尝试访问企业的任何资源时登录到其个人帐户,他们将被自动注销并重定向到 SSO 以登录到其 托管用户帐户。 有关详细信息,请参阅“管理多个帐户”。

  1. 在 GitHub 的右上角,单击你的个人资料照片,然后单击“你的企业”****。
  2. 在页面左侧的企业帐户边栏中,单击“Identity provider”****。
  3. 在“Identity Provider”下,单击“Single sign-on configuration”********。
  4. 在“单一登录设置”下,选择或取消选择“自动重定向用户以登录”。

延伸阅读