クラウド・セキュリティを学んでみよう!:アーキテクチャ編

2011/06/03

※本記事は、マカフィー株式会社 コーポレートサポート本部 本部長 諸角昌宏によるものです。

今やインターネットは世界中に普及しており、コンピューター環境はクラウドの時代に突入しています。その一方で、安全なクラウド環境の実現に向けては、まだまだ解決・整備しなければならない問題が存在しています。このような状況から、クラウドコンピューティングにおけるセキュリティの位置づけや、グローバルの動向について、「クラウドコンピューティングにおけるセキュリティ対策」にて渡って述べてきました。新シリーズでは、CSA(Cloud Security Alliance)が提供しているクラウド・セキュリティ・ガイダンスに基づいて、クラウド・セキュリティというものを具体的に掘り下げて考察してみたいと思います。今回はその第1回目として、「クラウド・アーキテクチャ」について、取り上げます。

CSAが提供しているガイダンスとしては、最新版としてすでにバージョン2.1が公開されていますが、まだ日本語版は出ていないため、まずはバージョン1.0に従って解説したいと思います。また、補足および参考資料として、CSAJC(Cloud Security Alliance Japan Charter)から提供されている「解説クラウド・セキュリティ・ガイダンス」を参照しました。解説クラウド・セキュリティ・ガイダンスは、以下よりダウンロードできます。
http://www.cloudsecurityalliance.jp/report/10kaisetsu.pdf

クラウド・セキュリティ・ガイダンス バージョン1.0は、全部で15のドメインから構成されています。この15のドメインは、以下の3つのカテゴリに分類されています。

  • クラウド・アーキテクチャ
  • クラウドのガバナンス
  • クラウドの運用

第1回目では、クラウド・アーキテクチャを扱っているドメイン1についてについて取り上げます。クラウド・セキュリティ・ガイダンスでは、このドメイン1に15ページほどを割いており、このアーキテクチャ・フレームワークを理解することが、セキュリティ対策の第一歩といえるでしょう。

ドメイン1: クラウドコンピューティングの構造のフレームワーク
クラウドコンピューティングにおけるセキュリティとはなにか、あるいは、既存のセキュリティ対策と比較してどのような違いがあるか、ということを理解するためには、まず、クラウドコンピューティングのアーキテクチャがどのようにセキュリティアーキテクチャに影響を及ぼすかを理解する必要があります。

一般的には、「アプリケーションと情報資源」を「インフラストラクチャとメカニズム」から分離することが、クラウドコンピューティングの定義とされていますが、この定義ではコンテキストがカバーされていません。つまり、クラウドコンピューティングがどのような特徴を持っているか、クラウド事業者がどのようにサービスを提供しているか、そのサービスはどのように利用されているかという点を明確にし、その上で、サービスがどのようにセキュリティ上保護されているかを理解する必要があります。

まずは、クラウドの特徴、クラウドサービス提供モデル、クラウドサービスの展開・利用モデルについて、見てみましょう。

・クラウドコンピューティングの特徴
クラウドコンピューティングには、以下の5つの特徴があります。

  • インフラストラクチャの仮想化
    ・各リソース(コンピューティング・ネットワーク・ストレージ)は、サービス提供の機能としてアプリケーションと情報リソースから抽象化されます。
  • リソースの民主化
    ・インフラの抽象化はインフラ、アプリケーション、または情報にかかわらずリソースの民主化によって導き出されます。
  • サービス指向アーキテクチャ
    ・インフラの管理ではなく、サービスの提供にフォーカスします。
  • 弾力性/ダイナミズム
    迅速な拡張機能、必要な容量をセルフサービスで利用できます。
  • 消費と割り当てのユーティリティモデル
    消費リソースの可視化:「食べ放題」でありながら「食べただけ」で計算されます。
    大きなコスト効果と規模を同時に、管理可能で予想可能なコストを提供します。

 クラウドサービス提供モデル
クラウドサービス提供モデルとしては、よく知られている以下の3つのモデルになります。

  • Software as a Service (SaaS)
    ・配布されるアプリケーションの設定だけを管理します
  • Platform as a Service (PaaS)
    ・基本的なリソース(インフラ、ネットワーク、サーバー、OS,ストレージ)は管理しません
    配布しているアプリケーションと、アプリケーションをホスティングしている環境の設定を管理します
  • Infrastructure as a Service (IaaS)
    ・OS、アプリケーションを含む任意のソフトウェアを管理します
    場合によってはネットワークコンポーネントも含みます(ファイアウォール、ロードバランサ)
  • その他、Storage as a ServiceやDatabase as a Serviceというようなモデルがありますが、これらは上記の3つのモデルに派生したものと考えています。


    “Security Guidance for Critical Areas of Focus in Cloud Computing”より引用

     クラウドサービスの展開・利用モデル
    クラウドサービスモデルの展開方法には以下の4つがあります:

    • プライベートクラウド
      シングルテナント(専用)の運用環境を提供
      組織あるいは指定されサービスプロバイダによって提供
      物理的なインフラ:組織のデータセンター、サービスプロバイダのデータセンター
      ・信頼される
    • パブリッククラウド
      シングルテナント(専用)、または、マルチテナント(共有)の運用環境を提供
      サービスプロバイダのデータセンター(off-Premise)
      信頼されない
    • マネージドクラウド
      On-Premiseですが、管理や所有はプロバイダ
    • ハイブリッドクラウド
      パブリックとプライベートのハイブリッド


    “Security Guidance for Critical Areas of Focus in Cloud Computing”より引用

    これらから、クラウドサービス提供の各モデルにおいて必要とされるセキュリティについて、以下が言えます。

    • IaaSは、アプリケーション的な機能をわずかしか提供していない一方で、大きな拡張性を提供しています。セキュリティ保護は、OS、アプリケーション、および利用者によって行われることになるため、利用者がセキュリティ機能の実装と管理を行わなければならない部分が非常に大きいといえるでしょう。
    • PaaSには、開発者が自分自身でアプリケーションを組み立てるという特徴があるため、その拡張性はSaaSとIaaSの中間に位置しています。セキュリティ保護に関しては、利用者は、作成したアプリケーションおよびそこから上のレイヤーの管理を行わなければなりません。
    • SaaSの拡張性はあまり大きくありませんが、セキュリティ保護に関しては事業者側が大きな責任を持って行うことになります。

    このように、クラウドがどのようにセキュリティ上保護されているかは、このクラウドサービス提供モデルとセキュリティの間のトレードオフを考慮しながら考えていく必要があります。

    以上を踏まえて、クラウド提供形態の選択方法について図で表現してみました。

    次回は、クラウドのガバナンスとして、エンタープライズリスクマネジメント、法律等について説明します。

    *本記事は、弊社「クラウド・セキュリティ・勉強会」メンバーである、藤井大翼、桐谷彰一、中山幹夫の協力により、執筆されました。