SEC11-BP04 手動のコードレビュー
作成するソフトウェアについて、手動のコードレビューを実施します。このプロセスは、コードを記述したユーザーが、コードの品質をチェックする唯一のユーザーでないことを検証する上で役立ちます。
期待される成果; 開発に手動のコードレビューステップを含めると、記述されるソフトウェアの品質が向上し、チームの経験の浅いメンバーのスキルが向上して、自動化を使用できる場所を特定する機会が提供されます。手動のコードレビューは、自動化ツールやテストによってサポートすることができます。
一般的なアンチパターン:
-
デプロイ前にコードレビューを実施していない。
-
コードの作成とレビューを同じ担当者が行っている。
-
コードレビューの支援と調整に自動化を使用していない。
-
コードレビューの前に、アプリケーションセキュリティについてビルダーをトレーニングしていない。
このベストプラクティスを活用するメリット:
-
コード品質の向上。
-
共通のアプローチの再利用によるコード開発の一貫性の向上。
-
ペンテストや後工程において検出される問題が低減する。
-
チーム内での知識の移転が改善される。
このベストプラクティスを活用しない場合のリスクレベル: 中
実装のガイダンス
全体的なコード管理フローの一環として、レビューステップを実装します。詳細は、分岐、プルリクエスト、マージで使用するアプローチによって異なります。それらのアプローチでは、AWS CodeCommit、または GitHub、GitLab、Bitbucket のようなサードパーティーソリューションを使用する場合があります。使用する手法にかかわらず、プロセスを本番環境にデプロイする前に、コードのレビューが必要であることを認識することが重要です。Amazon CodeGuru Reviewer などのツールを使用すると、コードレビュープロセスのオーケストレーションが容易になります。
実装手順
-
コード管理フローの一環として手動のレビューステップを実装し、次に進む前にこのレビューを実施します。
-
コードレビューの管理と支援には、Amazon CodeGuru Reviewer
の使用を検討してください。 -
コードを次のステージに進める前に、コードレビューの完了を必須とする承認フローを実装します。
-
手動のコードレビューで発見された問題を、自動的に検出できるプロセスがないかを確認します。
-
コード開発プラクティスに沿って、手動のコードレビューステップを統合します。
リソース
関連するベストプラクティス:
関連ドキュメント:
関連動画:
関連する例: