SEC11-BP04 人工代码审查 - 安全支柱

SEC11-BP04 人工代码审查

对您制作的软件执行人工代码审查。此流程有助于确保编写代码的人不是唯一检查代码质量的人。

期望结果:在开发过程中纳入人工代码审查步骤可以提高所编写的软件的质量,帮助团队中缺乏经验的成员提升自身技能,并且有助于确定哪些情况可以使用自动化。自动化工具和测试可以支持人工代码审查。

常见反模式:

  • 在部署前不执行代码审查。

  • 让同一个人编写和审查代码。

  • 不使用自动化来协助或编排代码审查。

  • 在审查代码之前没有对构建者进行应用程序安全方面的培训。

建立此最佳实践的好处:

  • 提高代码质量。

  • 通过重复利用通用方法提高代码开发的一致性。

  • 减少在渗透测试和后续阶段发现的问题。

  • 改进团队内部的知识传授。

在未建立这种最佳实践的情况下暴露的风险等级:

实施指导

在整个代码管理流程中应实施审查步骤。具体细节取决于分支、拉取请求和合并请求所用的方法。您可以使用 AWS CodeCommit 或第三方解决方案,例如 GitHub、GitLab 或 Bitbucket。无论使用哪种方法,务必要确认在将代码部署到生产环境中之前,您的流程需要进行代码审查。使用 Amazon CodeGuru Reviewer 等工具可以更轻松地编排代码审查过程。

实施步骤

  • 在代码管理流程中实施人工审查步骤,并在继续之前执行此审查。

  • 考虑使用 Amazon CodeGuru Reviewer 来管理和协助代码审查工作。

  • 实施审批流程,要求在代码需要完成代码审查后方可进入下一阶段。

  • 验证是否存在这样一个流程:识别在人工代码审查期间发现并可以自动检测到的问题。

  • 根据您的代码开发实践集成人工代码审查步骤。

资源

相关最佳实践:

相关文档:

相关视频:

相关示例: