关于 GitHub 的安全功能
GitHub 的安全功能帮助在仓库和整个组织中保护您的代码和机密安全。
- 部分功能适用于所有 GitHub 计划。
- 在 GitHub Team 和 GitHub Enterprise Cloud 上的组织若购买 GitHub Advanced Security 产品,可使用额外功能。
- 此外,许多 GitHub Secret Protection 和 GitHub Code Security 功能可在公开仓库上免费使用。
适用于所有 GitHub 计划
以下安全功能均可使用,无论您使用的是哪种 GitHub 计划。使用这些功能无需购买 GitHub Secret Protection 或 GitHub Code Security。
大多数功能可用于公开和私有仓库。有些功能仅适用于公开仓库。
安全策略
让您的用户能够轻松、保密地报告他们在仓库中发现的安全漏洞。更多信息请参阅向您的仓库添加安全策略。
依赖关系图
依赖关系图可让您查看仓库所依赖的生态系统和软件包,以及哪些仓库和软件包依赖于您的仓库。
您可以在仓库的 Insights(洞察) 选项卡中找到依赖关系图。更多信息请参阅关于依赖关系图。
软件物料清单(SBOM)
您可以将仓库的依赖关系图导出为符合 SPDX 标准的软件物料清单(SBOM)。更多信息请参阅导出仓库的软件物料清单。
GitHub 建议数据库
GitHub 建议数据库包含一系列经过策划的安全漏洞,您可以查看、搜索和过滤。更多信息请参阅在 GitHub 建议数据库中浏览安全建议。
Dependabot 警报和安全更新
查看已知包含安全漏洞的依赖项警报,并选择是否自动生成拉取请求来更新这些依赖项。更多信息请参阅关于 Dependabot 警报和关于 Dependabot 安全更新。
您还可以使用 GitHub 精心策划的默认 Dependabot 自动分流规则,自动过滤掉大量误报。
要了解 Dependabot 提供的各种功能概览以及入门指南,请参阅Dependabot 快速入门指南。
Dependabot 恶意软件警报
在 GitHub.com 和 GitHub Enterprise Server 3.22+ 上,您可以查看仓库中恶意依赖项的警报。参见Dependabot 恶意软件警报。
Dependabot 版本更新
使用 Dependabot 自动创建拉取请求,以保持依赖项为最新版本。这有助于降低使用旧版依赖项的风险。采用更新的版本可以更容易在发现安全漏洞时打补丁,也使 Dependabot 安全更新更容易成功地创建升级拉取请求。您还可以自定义 Dependabot 版本更新,以简化其在仓库中的集成。更多信息请参阅关于 Dependabot 版本更新。
安全建议
在公开仓库的代码中私下讨论并修复安全漏洞。随后,您可以发布安全建议,提醒社区此漏洞并鼓励成员升级。更多信息请参阅关于仓库安全建议。
仓库规则集
在分支和标签之间强制执行一致的代码标准、安全性和合规性。更多信息请参阅关于规则集。
构件证明
为您构建的软件创建不可伪造的来源和完整性保证。更多信息请参阅使用构件证明为构建建立来源。
注意
如果您使用的是 GitHub Free、GitHub Pro 或 GitHub Team 计划,构件证明仅适用于公开仓库。若要在私有或内部仓库中使用构件证明,必须使用 GitHub Enterprise Cloud 计划。
合作伙伴的机密扫描警报
当 GitHub 在公开仓库或公开 npm 包中检测到泄露的机密时,GitHub 会通知相关服务提供商该机密可能已泄露。有关支持的机密和服务提供商的详细信息,请参阅支持的机密扫描模式。
用户推送保护
用户推送保护会在您不小心将机密提交到公开仓库时自动进行防护,无论该仓库是否启用了机密扫描。用户推送保护默认开启,您可随时通过个人账户设置关闭此功能。更多信息请参阅管理用户推送保护。
在 GitHub Secret Protection 中可用
对于 GitHub Team 和 GitHub Enterprise Cloud 账户,购买GitHub Secret Protection后即可访问额外的安全功能。
GitHub Secret Protection 包含帮助您检测和防止凭证泄露及机密蔓延的功能,例如用于检测硬编码凭证的机密扫描以及在它们到达仓库之前阻止的推送保护。
这些功能适用于所有仓库类型。其中一些功能对公开仓库免费提供,这意味着您无需购买 GitHub Secret Protection 即可在公开仓库上启用该功能。
用户机密扫描警报
自动检测已提交到仓库中的硬编码凭证。您可以在仓库的 安全与质量 选项卡中查看 GitHub 在代码中发现的任何机密警报,以便快速响应凭证泄漏。更多信息请参阅关于机密扫描。
默认适用于公开仓库。
Copilot 机密扫描
Copilot 机密扫描的通用机密检测是基于 AI 的机密扫描扩展,能够识别源代码中的非结构化机密(密码),并生成警报。更多信息请参阅使用 Copilot 机密扫描负责任地检测通用机密。
推送保护
推送保护在推送过程中主动扫描您的代码以及所有仓库贡献者的代码,以检测硬编码机密,并在发现凭证泄漏时阻止推送。如果贡献者绕过阻止,将生成警报。更多信息请参阅关于推送保护。
默认适用于公开仓库。
推送保护的委托绕过
推送保护的委托绕过允许您控制哪些个人、角色和团队
- 可以绕过推送保护
- 免除推送保护
- 可以审查其他贡献者的绕过请求
更多信息请参阅关于推送保护的委托绕过。
自定义模式
您可以定义自定义模式,以识别默认机密扫描未检测到的机密,例如您组织内部使用的模式。更多信息请参阅为机密扫描定义自定义模式。
安全概览
安全概览允许您审查组织的整体安全态势,查看趋势和其他洞察,并管理安全配置,使您能够轻松监控组织的安全状态并识别风险最高的仓库和组织。更多信息请参阅关于安全概览。
在 GitHub Code Security 中可用
对于 GitHub Team 和 GitHub Enterprise Cloud 账户,购买GitHub Code Security后即可访问额外的安全功能。
GitHub Code Security 包含帮助您发现并修复漏洞的功能,如代码扫描、高级 Dependabot 功能和依赖审查。
这些功能适用于所有仓库类型。其中一些功能对公开仓库免费提供,这意味着您无需购买 GitHub Code Security 即可在公开仓库上启用该功能。
代码扫描
自动检测新代码或修改代码中的安全漏洞和编码错误。潜在问题会被突出显示并提供详细信息,帮助您在代码合并到默认分支之前进行修复。更多信息请参阅关于代码扫描。
默认适用于公开仓库。
CodeQL 命令行工具
在本地软件项目上运行 CodeQL 进程,或生成代码扫描结果以上传至 GitHub。更多信息请参阅关于 CodeQL 命令行工具。
默认适用于公开仓库。
Copilot Autofix
获取代码扫描警报的自动生成修复。更多信息请参阅关于代码扫描的 Copilot 自动修复的负责任使用。
默认适用于公开仓库。
Dependabot 自定义自动分流规则
帮助您大规模管理 Dependabot 警报。通过自定义自动分流规则,您可以控制要忽略、延迟或触发 Dependabot 安全更新的警报。更多信息请参阅关于 Dependabot 警报和自定义自动分流规则以优先处理 Dependabot 警报。
依赖审查
在合并拉取请求前显示对依赖项更改的完整影响,并查看任何易受攻击的版本的详细信息。更多信息请参阅关于依赖审查。
默认适用于公开仓库。
安全行动方案
通过创建安全行动方案并与开发者协作,规模化修复安全警报,从而减少安全积压。更多信息请参阅关于安全行动方案。
安全概览
安全概览允许您审查组织的整体安全态势,查看趋势和其他洞察,并管理安全配置,使您能够轻松监控组织的安全状态并识别风险最高的仓库和组织。更多信息请参阅关于安全概览。