この連載では、Webシステムの要件定義や基本設計に携わる情報システム部門や、システム開発を受託するシステムインテグレーターのプロジェクトマネジャー(PM)、システムエンジニア(SE)、インフラを担当するエンジニアが知っておきたい、Webアプリケーションとインフラのセキュリティ対策について解説します。

 Webアプリケーションのセキュリティ対策は、プログラム開発に従事するSEやプログラマだけでは完結しません。ネットワークやインフラのエンジニア、画面設計を担当するデザイナーも含め、プロジェクトに参画する全員が最低限の原理・原則を知らなければなりません。よく言われるように「システムのセキュリティレベルは鎖のようなものであって、一番弱い部分がそのシステムのセキュリティレベル」となるからです(図1)。

図1 システムのセキュリティレベルは一番弱い部分で決まる
図1 システムのセキュリティレベルは一番弱い部分で決まる
[画像のクリックで拡大表示]

 この連載を読んで、ぜひ安全なWebアプリケーションおよびインフラを構築するための参考にしてください。

セキュリティ対策の責任は開発会社にある?

 Webアプリケーションのセキュリティを考えるに当たっては、発注者側も受注者(開発会社)側も、双方のビジネス上のリスクを回避することだけを考えて、「責任のなすり合い」にならないようにしなければなりません。

 開発会社としては「要件定義の責任は発注者側にあるのだから、要件定義で求められていなければ、責任は負えない」と言いたいところですが、果たしてそうでしょうか?筆者が見聞きする範囲では、開発会社が重い責任を負うケースが多いと感じています。