システム開発において、セキュリティ対策を要件定義や設計の段階から組み込む考え方(セキュリティ・バイ・デザイン)が重視される理由として、最も適切なものはどれか。
- ①後工程や運用開始後に脆弱性を修正する方が、手戻りの範囲や修正コストが大きくなりやすいため
- ②要件定義段階でセキュリティを検討すると、開発期間が必ず大幅に確実に短縮されるため
- ③設計段階でセキュリティを組み込むと、テスト工程を完全かつ全面的に省略できるようになるため
- ④要件定義段階での検討は工数の見積もりにのみ影響し、脆弱性の作り込みとは無関係であるため
答えと解説を見る
セキュリティ上の不備は、要件定義や設計の段階で作り込まれることが多いにもかかわらず、開発の後工程やシステムの運用開始後に発見されるほど、修正に伴う手戻りの範囲や改修コスト、リリース遅延のリスクが大きくなる傾向がある。そのため、要件定義・設計の段階からセキュリティ要件を組み込む「セキュリティ・バイ・デザイン」の考え方が重視されている。
他の選択肢が不適切な理由
要件定義段階でのセキュリティ検討が開発期間を必ず大幅に短縮するという因果関係は成り立たない。セキュリティを設計段階で組み込んだとしても、実装の誤りは生じうるためテスト工程を省略できるわけではない。要件定義段階の検討が工数見積もりにしか影響しないという主張は誤りであり、実際にはこの段階での検討不足こそが後工程での脆弱性の作り込みにつながりやすい。