前回述べたように、RFPの中にセキュリティ要件を盛り込むことで、セキュリティ対策を前提としたシステム提案が作成され、発注者と受注者の双方にとってメリットのあるシステム構築が可能になる。しかし、RFPという言葉自体にまだ親しみがない読者もいるだろう。RFPについては、以下を参照してほしい。
RFPに関しては各種の書籍が出版され、セミナーなどが開催されている。だが、発注者が提案依頼を明確にドキュメントとして作成しているケースは、公的機関や大手企業を除いては、まだ少ない状況だ。一般の民間企業において、RFPを作成する文化はそれほど浸透していない。
しかし、システム開発を外部に委託する場合に、RFPを作成し複数の業者から提案を集めたうえで、その内容を精査し比較検討することで、より効率的で効果的なシステム開発が可能になることは明らかである。今後、RFPの必要性の認識と活用が進むのは間違いない。
では、実際にRFPにどのようにセキュリティ要件を記載するのかについて説明していく。
まず、RFPの中でセキュリティ要件を記載する場所であるが、RFPを解説した資料として上記に紹介した、ITコーディネータ協会の「RFP・SLAドキュメント見本」で示されているRFPの構成は、次のようになっている。
このなかで、セキュリティは「5. 保証要件」の一部として取り扱われている。「発注者が求めるセキュリティの保証水準に対する提案を受注者に求める」という位置付けと考えれば、セキュリティをこの部分に含めても構わない。
しかし、本稿では、受注側にセキュリティ対策を含めた提案書の作成を依頼すべきであり、その内容によって、システム機能、開発コスト、開発期間、保守体制にも多大な影響を与えることから、セキュリティ要件の記載場所としては、「3. 提案していただきたい事項」の一部として記載することを推奨したい。
以下では、JNSAで作成した「Webシステムセキュリティ要求仕様(RFP)」(以下、セキュリティ要求仕様)(PDFファイル)に沿って、その趣旨や使い方を解説する。ぜひセキュリティ要求仕様を参照しながら読み進めていただきたい。
セキュリティ要求仕様の対象としては、イントラネットまたは、インターネットに公開し、利用されるWebアプリケーションシステムを想定している。この要求仕様では、Webアプリケーションに関するセキュリティ対策のうち、アプリケーションの設計とプログラミングで回避可能な既知の脆弱性について、一般的に盛り込むべきと考えられる事項を記載している。一方、ネットワークやホストレベルで実施すべきセキュリティ対策や、運用面あるいは人的なセキュリティ対策について包括的に記載してはいない。これらについては、RFPを記載する際に、システム全体に対する提案依頼に含める形で対応してほしい。
上記のように対象範囲をWebアプリケーションの開発のみに限定した場合でも、システムの目的や用途に応じて、必要となるセキュリティ対策は異なる。特に、開発コストがセキュリティ対策に大きな影響を与えることは明らかである。しかし、セキュリティ要求仕様の目的の1つは、最低限盛り込むべきセキュリティ対策を明らかにし、これを開発コストの算出根拠に利用してもらうことにある。このため、開発コストを除いた以下の3点を基にシステムの類型化を行った。そして、類型化したシステムのそれぞれについて、Webアプリケーションで取るべきセキュリティ対策を、「必須」「推奨」「任意」の3つのレベルで定義した。
システム類型化の基準
1.外部ネットワークへの公開の有無
インターネットなどの信頼できないネットワークに接続し公開するか否か
2.機密情報の取り扱いの有無
個人情報、特にプライバシー情報、カード番号などの決済情報、などを取り扱うか否か
3.対象とするシステム利用者の範囲
現実にはさまざまな分類が考えられるが、ここでは、以下の3タイプにシステムを類型化した。
・不特定多数タイプ | インターネットを使い、不特定多数を対象に広く宣伝することを目的とするWebシステム |
---|---|
・特定多数タイプ | 会員制サイトなどのように、個人を特定したうえでその個人を認証しサービスを提供することを目的とするWebシステム |
・特定限定タイプ | 人的に管理可能な人数、つまり、システム以外の人的な手段(目で見える範囲であるなど)において、そのユーザーの行動を把握できる範囲にのみ公開するWebシステム |
Copyright © ITmedia, Inc. All Rights Reserved.