正解: 選択肢1(セキュアなコード: 脅威モデリング)と選択肢2(セキュアな運用: アプリケーションアクセス制御)。CAF の DevSecOps コントロール対応に沿った組み合わせです。
解説CAF/DevSecOps のライフサイクルでは、各ステージに適したコントロールが定義されています。
セキュアなコード(Secure code)はコードの設計・記述段階であり、設計上の脅威を体系的に洗い出す
脅威モデリングが最も代表的なコントロールです。設計欠陥を早期に発見しセキュアバイデザインを実現します。
セキュアな運用(Secure operations)は本番稼働中のセキュリティであり、誰が何にアクセスできるかを制御する
アプリケーションアクセス制御(認証・認可)が中核コントロールです。
各選択肢の検討- 選択肢1(正解): 脅威モデリングは設計・コーディング段階の活動で「セキュアなコード」に対応します。
- 選択肢2(正解): アプリケーションアクセス制御は本番稼働中の不正アクセス防止であり「セキュアな運用」に対応します。
- 選択肢3: アプリケーションアクセス制御は運用ステージのコントロールであり「セキュアなコード」への割当ては不適切です。
- 選択肢4: 脅威モデリングは設計段階の活動であり「セキュアな運用」への割当ては不適切です。
- 選択肢5: セキュアなパイプラインはコード/ビルド/テスト/デプロイにまたがる横断概念で、単一の「セキュアなコード」ステージのコントロールとして最適ではありません。
- 選択肢6: サプライチェーン/依存関係管理は主にコード段階の関心事であり「セキュアな運用」への割当ては不適切です。
参考: Microsoft LearnCloud Adoption Framework: DevSecOps コントロール