Security configurations 是 GitHub安全功能的启用设置集合,可应用于组织中的任何存储库 或 enterprise。
有两种类型的 security configuration:
-
[GitHub-recommended security configuration](#the-github-recommended-security-configuration) -
[Custom security configurations](#custom-security-configurations)
每个存储库只能应用一个 security configuration。
可以使用 REST API 创建和管理安全配置。 有关详细信息,请参阅“配置”。
注意
如果你的企业使用 Enterprise Managed Users,请注意,企业级 security configurations 不会自动向用户命名空间存储库推出。 还有一些其他 secret scanning 设置可以应用于企业中的用户命名空间存储库,但不能将企业级 security configurations 应用于此类用户拥有的存储库。
GitHub-recommended security configuration
GitHub-recommended security configuration 具备诸多优点:
-
它由 GitHub 的主题专家创建和管理。
-
它是应用于组织中的所有存储库的最快速 security configuration。
-
它旨在有效地保护低影响和高影响存储库。
_我们建议组织和企业首先应用 GitHub-recommended security configuration_。
GitHub-recommended security configuration 包括 GitHub Code Security 和 GitHub Secret Protection 功能。 将配置应用于组织中的专用和内部仓库会产生使用费或需要许可证。
Custom security configurations
如果你熟悉 GitHub 的安全产品,并且具有 GitHub-recommended security configuration 无法满足的特定安全需求,则可以创建并应用 custom security configurations。 使用 custom security configurations,你可以:
- 编辑不同安全功能的启用设置
- 为存储库创建多个配置,以反映其不同级别的可见性、风险容忍度和影响
还可以选择是否要在配置中包含 GitHub Code Security 或 GitHub Secret Protection 功能。 如果这样做,请记住,这些功能在应用于专用和内部存储库时会产生使用成本(或需要 GitHub Advanced Security 许可证)。
强制实施 security configurations
在应用 security configuration 时,可以选择强制执行,这意味着用户无法更改该配置中所含功能的启用状态。
如果组织中的用户 或 enterprise 尝试使用 REST API 在强制配置中更改某个功能的启用状态,API 调用将显示为成功,但不会更改启用状态。
某些情况可能会导致存储库的 security configurations 强制措施失效。 例如,在以下情况下,code scanning 的启用将不适用于存储库:
- GitHub Actions 最初在存储库上启用,但在存储库中禁用。
- GitHub Actions 不适用于 repository.
- 从 code scanning 默认设置中排除的语言在存储库级别更改。
保留新存储库的默认设置
如果已为新创建的存储库设置默认安全设置,则 GitHub 将通过为企业自动创建“新建存储库默认设置”security configuration 来保留这些设置。 该配置与你 2024 年 12 月起针对新存储库的先前企业级默认设置匹配。
该配置将自动应用于企业中不属于具有其默认设置的组织的任何新创建的存储库。
后续步骤
若要开始使用 GitHub-recommended security configuration 来你组织中的仓库,请参阅 在组织中应用 GitHub 建议的安全配置。
或者,若要开始使用 custom security configurations 保护组织中的存储库,请参阅 删除自定义安全配置。