事業者がサービスとして提供するパブリッククラウド上でのシステム開発。自社設備を利用したオンプレミス開発と同じようにセキュリティ設計を実施すると失敗する。「クラウド独特の制約に注意して設計する必要がある」(サイオステクノロジー クラウドインテグレーション部 プロフェッショナルサービスグループ エンジニア 松尾貴史氏)からだ。

 ポイントは大きく三つある(図14)。(1)機密性の高いデータをどこに保管するのか、(2)通信経路の安全性をどこまで求めるのか、(3)認証強化と利便性低下のバランスをどう取るか──である。米Amazon Web Servicesや米Microsoftなど、大手事業者のクラウドサービスを利用するケースを中心に見ていこう。

図14●クラウド開発におけるセキュリティ設計のチェックポイント
図14●クラウド開発におけるセキュリティ設計のチェックポイント

手元のデータは絞らないとダメ

 クラウドを利用する場合、機密性の高いデータをクラウドに置くことに、利用部門が抵抗を示すことは少なくない。そこでセキュリティ設計時には、重要なデータを自前のデータセンターに保管することも検討する必要が出てくる。その場合、処理が必要なときだけクラウドにデータを渡す仕組みを実装する。

 ただし、安易にデータを何でも手元に保管すると失敗する。クラウドでは「外部とのデータ転送でコストがかさむことが多い」(宝印刷 取締役 常務執行役員 青木孝次氏)からだ。性能面でも、データ転送に時間が掛かる分だけ不利になる。手元で管理するデータは極力減らすようにしたい。

 例えばMicrosoftの「Windows Azure」では、データ転送に掛かるコストは受信の場合が1Gバイト当たり9.8円で、送信が14.7円である。一方のデータ保管コストは、1Gバイト当たり月額14.7円である。同じサイズのデータを1カ月保管し続けるよりも、自営のデータセンターと1回やり取りする方がコストが高くなる。 Amazon Web Servicesのストレージサービス「Amazon S3」や米Googleの「Google App Engine」でも同様である。

 宝印刷は、クラウドサービスを使って有価証券報告書の作成支援ASPサービスを構築した際、データ保管場所を工夫した(図15)。開示前の決算情報は機密性が高いと判断して自社のデータセンターに保管。アプリケーションの設定データなどは機密性が低いためクラウド側に保管する。これでコストと性能劣化を抑えた。このほか、クラウド上で処理する一時データの安全性に配慮して、ストレージサービス「Blob」に保管する際にデータを暗号化するようにした。

図15●機密性の高さでデータを切り分ける<br>宝印刷は、有価証券報告書の作成支援ASPサービスをクラウドに載せるに当たって、機密性の高いユーザーデータは自社で保管、アプリケーションの設定データなどはクラウドサービスに保管した
図15●機密性の高さでデータを切り分ける
宝印刷は、有価証券報告書の作成支援ASPサービスをクラウドに載せるに当たって、機密性の高いユーザーデータは自社で保管、アプリケーションの設定データなどはクラウドサービスに保管した
[画像のクリックで拡大表示]