Skip to main content

保护你的组织

您可以使用许多 GitHub 功能来帮助保护组织的安全。

谁可以使用此功能

Organization owners and security managers can manage security features for an organization.

简介

作为组织所有者或安全经理,你可以使用 GitHub 的安全功能来保护组织的代码、依赖项和机密的安全。 有关详细信息,请参阅“GitHub 安全功能”。

组织的安全需求是独一无二的。 如果组织受到了某个特定功能可能阻止的漏洞的影响,或者该功能可帮助你的组织满足合规性要求,则可能需要启用该功能。

可以同时跨组织中的多个存储库启用安全功能。 对于要启用的每个功能,必须决定如何在组织的存储库中推出该功能。 不同的功能对组织及其参与者的影响不同,因此评估每个功能的影响非常重要。 例如:

  • 某些功能可以生成通知,以通知组织成员特定漏洞:为了确保这些通知具有针对性和相关性,在你启用某项功能之前,可能要求成员检查其通知设置。 有关详细信息,请参阅“配置通知”。
  • 某些功能可能会占用启用这些功能的每个存储库的资源。 例如,在专用存储库中启用 code scanning 可能会使用 GitHub Advanced Security 许可证,在存储库中运行 code scanning 分析将导致使用 GitHub Actions 或其他 CI 系统。

作为组织所有者,你可以通过向团队分配“安全经理”角色来授予某些用户启用或禁用安全功能的权限。 安全经理可以配置安全设置并监视组织中安全功能的使用情况。 有关详细信息,请参阅“管理组织中的安全管理员”。

关于功能的先决条件

某些安全功能具有先决条件。 例如,Dependabot alerts 使用来自依赖项关系图的信息,因此启用 Dependabot alerts 会自动启用依赖项关系图。

某些功能默认在公共存储库中启用。 在专用存储库中,某些功能仅适用于使用 GitHub Advanced Security 并已启用 Advanced Security 作为存储库功能的企业。 有关详细信息,请参阅“关于 GitHub 高级安全性”。

必须为每个存储库单独配置一些功能。 例如,若要在存储库中启用 Dependabot version updates,必须添加一个 dependabot.yml 文件,指定在何处查找有关项目依赖项的信息。 有关详细信息,请参阅“配置 Dependabot 版本更新”。

在组织中启用安全功能

决定启用安全功能后,下一步是决定如何在组织中推出该功能。

  • 如果要尽快推出某项功能,可以一次性为所有符合条件的存储库启用该功能。 有关详细信息,请参阅“为所有存储库启用功能”。
  • 如果要控制功能推出的速度,以及哪些存储库中启用了哪些功能,则可以为所选存储库启用功能。 有关详细信息,请参阅“为所选存储库启用功能”。

确定如何为组织的现有存储库启用功能后,还必须决定如何处理未来在组织中创建的任何新存储库。 有关详细信息,请参阅“为新存储库启用功能”。

为所有存储库启用功能

推出安全功能的最快方法是一次性为组织中的所有存储库启用该功能。 如果已确定对某项功能的迫切需要,则为所有存储库启用该功能可在整个组织中提供保护,而无需暂停设计推出计划。

在为所有存储库启用某项功能之前,应考虑此操作将产生的影响。 如果不确定某项功能将产生什么影响,最安全的做法是先为有限的所选存储库启用该功能。 在以下情况下,一次性为所有存储库启用某项功能可能是一个合适的选项。

  • 你已大致了解组织中的所有存储库,并且确信它们都会受益于特定功能。
  • 如果某项功能需要 GitHub Advanced Security 许可证或 GitHub Actions 分钟等资源,则你已评估了所需的资源,并乐于继续。
  • 如果该功能生成通知或拉取请求,则你确信这些通知或拉取请求将对于接收它们或必须审阅它们的成员具有针对性和相关性。

准备好继续操作后,请按照以下步骤为所有存储库启用功能。

  1. 在 GitHub.com 上,导航到组织的主页。

  2. 在组织名称下,单击 “设置”****。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”********。

    组织配置文件中选项卡的屏幕截图。 “设置”选项卡以深橙色标出。

  3. 在左侧边栏中,单击“ 代码安全与分析”。

  4. 若要在组织中支持某项功能的所有存储库中启用该功能,请单击该功能名称旁边的“全部启用”。

单击“全部启用”时,系统会提示你确认你的选择。 你还将被告知该功能是否依赖于其他功能,或者需要 GitHub Advanced Security。 有关详细信息,请参阅“管理组织的安全和分析设置”。

为所选存储库启用功能

在某些情况下,最好是识别需要某项功能的存储库,然后仅为这些存储库启用该功能。

如果不确定某项功能将产生的影响,可能需要先在有限的所选存储库中测试该功能,然后再承诺为所有存储库启用该功能,或者可能需要在多个阶段逐步推出该功能。 你可能还意识到,组织中的某些存储库需要与其他存储库不同的一组功能。

确定需要某功能的存储库后,可以单独为每个存储库启用该功能。 作为组织所有者或安全管理员,你可以为组织中的每个存储库配置安全设置。 有关详细信息,请参阅“保护您的仓库”。

对于 GitHub Enterprise Cloud 上的组织,可以使用“安全覆盖范围”视图来识别需要某项功能的存储库,然后为这些存储库启用该功能。 有关详细信息,请参阅 GitHub Enterprise Cloud 文档中的“为多个存储库启用安全功能”。

为新存储库启用功能

可以选择在组织中创建的所有新存储库中自动启用安全功能。 在新存储库中启用功能可确保它们立即受到保护,并确保尽早识别存储库中的任何漏洞。 但是,若要尽可能高效地使用安全功能,可能需要单独查看每个新存储库。

  1. 在 GitHub.com 上,导航到组织的主页。

  2. 在组织名称下,单击 “设置”****。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”********。

    组织配置文件中选项卡的屏幕截图。 “设置”选项卡以深橙色标出。

  3. 在左侧边栏中,单击“ 代码安全与分析”。

  4. 在功能名称下方,选择用于在适用的未来存储库中自动启用该功能的选项。

    “代码安全性和分析”页的屏幕截图。 在“Dependabot 警报”下方,将以橙色轮廓突出显示用于在未来存储库中启用该功能的复选框。

监视安全功能的影响

启用某项功能后,应与组织中的存储库管理员和参与者沟通,以评估该功能的影响。 可能需要在存储库级别调整某些功能的配置,或重新评估组织中安全功能的分布情况。 还应监视功能生成的安全警报,以及成员对这些警报的响应。

使用 GitHub Enterprise Cloud 的组织可以使用安全概述来查看哪些团队和存储库受到安全警报的影响,并按严重性细分警报。 有关详细信息,请参阅GitHub Enterprise Cloud 文档中的“评估代码安全风险”。

可以使用各种工具来监视组织成员为响应安全警报而采取的操作。 有关详细信息,请参阅“审核安全警报”。

后续步骤

为了帮助用户报告安全漏洞,可以创建一个默认安全策略,该策略将显示在组织的任何没有自己的安全策略的公共存储库中。 有关详细信息,请参阅“创建默认的社区运行状况文件”。