跳至主要内容

管理组织的安全性和分析设置

您可以控制 GitHub 上组织项目中代码安全和分析的功能。

谁可以使用此功能?

组织所有者可以管理组织中存储库的安全性和分析设置。

关于安全性和分析设置的管理

GitHub 可以帮助您保护组织中的存储库。您可以管理组织成员在组织中创建的所有现有或新存储库的安全性和分析功能。使用 GitHub Enterprise Cloud 且拥有 GitHub Advanced Security 许可证的组织还可以管理对这些功能的访问权限。有关更多信息,请参阅 GitHub Enterprise Cloud 文档

注意:您无法禁用为公共存储库默认启用的某些安全性和分析功能。

您可以使用 GitHub 推荐的安全配置快速大规模启用安全功能,该配置是您可以应用于组织中存储库的安全启用设置集合。然后,您可以使用全局设置在组织级别进一步自定义 GitHub Advanced Security 功能。请参阅“关于大规模启用安全功能”。

注意:安全配置和全局设置处于测试阶段,可能会发生变化。

如果您启用安全性和分析功能,GitHub 将对您的存储库执行只读分析。

显示安全性和分析设置

  1. 在 GitHub 的右上角,选择您的个人资料照片,然后单击 您的组织.

  2. 在组织旁边,点击 **设置**。

  3. 在侧边栏的“安全”部分,点击 ** 代码安全和分析**。

    注意

    如果您的组织已加入安全配置和全局设置公开测试版,您将看到 **代码安全** 下拉菜单,而不是“代码安全和分析”。您可以使用安全配置管理存储库级别的安全设置,使用全局设置管理组织级别的安全设置。请参阅“在您的组织中应用 GitHub 推荐的安全配置” 和 “为您的组织配置全局安全设置”。

显示的页面允许您为组织中的存储库启用或禁用所有安全和分析功能。

为所有现有存储库启用或禁用功能

您可以为所有存储库启用或禁用功能。您对组织中存储库所做的更改的影响取决于其可见性。

  • **私有漏洞报告** - 您的更改仅影响公共存储库。

  • **依赖关系图** - 您的更改仅影响私有存储库,因为该功能始终为公共存储库启用。

  • **Dependabot 提醒** - 您的更改会影响所有存储库。

  • **Dependabot 安全更新** - 您的更改会影响所有存储库。

  • 秘密扫描 - 您的更改会影响公共仓库和这些仓库可能依赖的公共 npm 包。此选项控制是否为用户启用秘密扫描警报。合作伙伴的秘密扫描警报始终在所有公共仓库上运行。

  • 代码扫描 - 您的更改会影响公共仓库。有关符合条件的仓库的信息,请参阅“配置代码扫描的大规模默认设置”。对于不符合默认设置条件的仓库,您可以在仓库级别配置高级设置。有关更多信息,请参阅“配置代码扫描的高级设置”。

  1. 转到您组织的安全和分析设置。有关更多信息,请参阅“显示安全和分析设置”。

  2. 在“代码安全和分析”下,在功能的右侧,单击全部禁用全部启用以显示确认对话框。

  3. 查看对话框中的信息。

  4. 可选地,如果您要启用私有漏洞报告、依赖项图或 Dependabot,请选择为新的私有仓库默认启用

    Screenshot of the "Enable FEATURE" modal dialog, with the "Enable by default for new private repositories" option highlighted with a dark orange outline.

  5. 准备好进行更改时,单击禁用功能启用功能以禁用或启用组织中所有仓库的功能。

  6. 可选地,在安全和分析设置中您功能的部分,选择其他启用设置。其他启用设置可能包括

    • 特定类型仓库的自动启用
    • 特定于功能的设置,例如推荐在整个组织中使用代码扫描默认设置的扩展查询套件,或秘密扫描的自动秘密验证

    注意

    • 如果您为所有仓库禁用 CodeQL 代码扫描,此更改不会反映在组织安全概述中显示的覆盖率信息中。在“安全覆盖率”视图中,这些仓库仍将显示为已启用代码扫描。
    • 在组织中为所有符合条件的仓库启用代码扫描不会覆盖现有的代码扫描配置。有关使用不同设置为特定仓库配置默认设置的信息,请参阅“配置代码扫描的默认设置”。

当您为现有仓库启用一个或多个安全和分析功能时,您将在几分钟内在 GitHub 上看到任何结果。

  • 所有现有仓库都将具有所选配置。
  • 如果您已为新仓库启用复选框,则新仓库将遵循所选配置。
  • 我们使用权限扫描清单文件以应用相关服务。
  • 如果已启用,您将在依赖关系图中看到依赖关系信息。
  • 如果已启用,GitHub 将为存在漏洞的依赖关系或恶意软件生成 Dependabot 提醒。
  • 如果已启用,Dependabot 安全更新将在触发 Dependabot 提醒时创建拉取请求以升级存在漏洞的依赖关系。

在添加新仓库时自动启用或禁用功能

  1. 转到您组织的安全和分析设置。有关更多信息,请参阅“显示安全和分析设置”。
  2. 在“代码安全和分析”下,找到该功能,默认情况下为组织中的新仓库或所有新的私有仓库启用或禁用该功能。

允许 Dependabot 访问私有依赖关系

Dependabot 可以检查项目中过时的依赖关系引用,并自动生成拉取请求以更新它们。为此,Dependabot 必须访问所有目标依赖关系文件。通常,如果一个或多个依赖关系不可访问,则版本更新将失败。有关更多信息,请参阅“关于 Dependabot 版本更新”。

默认情况下,Dependabot 无法更新位于私有仓库或私有包注册表中的依赖关系。但是,如果依赖关系位于与使用该依赖关系的项目位于同一组织的私有 GitHub 仓库中,则可以通过授予 Dependabot 对主机仓库的访问权限来允许 Dependabot 成功更新版本。

如果您的代码依赖于私有注册表中的包,则可以通过在仓库级别配置此功能来允许 Dependabot 更新这些依赖关系的版本。您可以通过将身份验证详细信息添加到仓库的 dependabot.yml 文件来执行此操作。有关更多信息,请参阅“dependabot.yml 文件的配置选项”。

要允许 Dependabot 访问私有 GitHub 仓库

  1. 转到您组织的安全和分析设置。有关更多信息,请参阅“显示安全和分析设置”。

  2. 在“授予 Dependabot 私有仓库访问权限”下,单击**添加私有仓库**以显示仓库搜索字段。

    Screenshot of the dropdown that you can use to search for repositories. As you type, repositories whose name matches your search criteria will appear in the list. The search text field is highlighted with a dark orange outline.

  3. 开始输入您要授予 Dependabot 访问权限的仓库名称。

  4. 组织中匹配的仓库列表将显示,点击您要允许访问的仓库,这将把仓库添加到允许列表中。

  5. 可选地,要从列表中删除仓库,请点击仓库右侧的 .

进一步阅读