SEC11-BP04 人工代码审查
对您制作的软件执行人工代码审查。此流程有助于确保编写代码的人不是唯一检查代码质量的人。
期望结果:在开发过程中纳入人工代码审查步骤可以提高所编写的软件的质量,帮助团队中缺乏经验的成员提升自身技能,并且有助于确定哪些情况可以使用自动化。自动化工具和测试可以支持人工代码审查。
常见反模式:
-
在部署前不执行代码审查。
-
让同一个人编写和审查代码。
-
不使用自动化来协助或编排代码审查。
-
在审查代码之前没有对构建者进行应用程序安全方面的培训。
建立此最佳实践的好处:
-
提高代码质量。
-
通过重复利用通用方法提高代码开发的一致性。
-
减少在渗透测试和后续阶段发现的问题。
-
改进团队内部的知识传授。
在未建立这种最佳实践的情况下暴露的风险等级:中
实施指导
在整个代码管理流程中应实施审查步骤。具体细节取决于分支、拉取请求和合并请求所用的方法。您可以使用 AWS CodeCommit 或第三方解决方案,例如 GitHub、GitLab 或 Bitbucket。无论使用哪种方法,务必要确认在将代码部署到生产环境中之前,您的流程需要进行代码审查。使用 Amazon CodeGuru Reviewer 等工具可以更轻松地编排代码审查过程。
实施步骤
-
在代码管理流程中实施人工审查步骤,并在继续之前执行此审查。
-
考虑使用 Amazon CodeGuru Reviewer
来管理和协助代码审查工作。 -
实施审批流程,要求在代码需要完成代码审查后方可进入下一阶段。
-
验证是否存在这样一个流程:识别在人工代码审查期间发现并可以自动检测到的问题。
-
根据您的代码开发实践集成人工代码审查步骤。
资源
相关最佳实践:
相关文档:
相关视频:
相关示例: