

パブリッククラウドとは?
パブリッククラウドとは、企業や個人など不特定多数のユーザに対して、サーバ、ストレージ、データベース、ソフトウェアなど、インターネットの「向こう側」にある、クラウド事業者のコンピュータで行うサービスのことです。クラウドコンピューティングとは、インターネットやネットワークを図で表すときに「雲の絵」を描くことから、名前の由来と言われています。インターネットやネットワークは、構成されているシステムの構造がわからなくても、接続することでサービスを利用できます。クラウドも同様に、インターネットの「向こう側」がどうなっているのかを知らなくても、サービスを利用することが出来るため、クラウド環境は雲の絵として表現します。企業がクラウドを利用する場合、オンプレミス環境(自社内に構築したシステム)で処理するのではなく、クラウド事業者のデータセンター内のシステムで処理することになります。IT資産を「保有」するのではなく、サービスとして「利用」するモデルがクラウドサービスであるため、利用者(ユーザ)はインターネットにアクセスをした後、Webブラウザやクラウドサービス専用ソフトウェアを通じて利用します。
パブリッククラウドサービスのメリット
パブリッククラウドのメリットはオンプレミス環境(自社でシステムを構築する環境)と比較をすると理解ができます。
経済性
オンプレミス環境(自社内でシステムを構築する環境)の場合は、利用のピーク時を想定して、使いたい機能の分だけハードウェアやソフトウェアを購入する必要があります。一方でクラウドの場合は、ハードウェアやソフトウェアを所有せず、使いたい機能を使いたい期間だけサービスとして利用できます。さらに、部署や事業所などがバラバラに管理していたソフトウェアやデータをクラウドで一元管理すれば、ソフトウェアの更新作業やデータの保守作業を効率的に行うことができ、コストを抑えることができます。
柔軟性
オンプレミス環境の場合は、サーバ構築やシステム拡張には高度な技術と莫大な費用が必要です。一方でクラウドの場合は、コンピューティングリソースを必要なときに必要な分だけ拡張し、あまり必要のないときには縮小するなど、柔軟な利用が簡単に行なえます。
可用性
オンプレミス環境の場合は、サーバ障害対策のためには二重化(冗長化)やバックアップなどを措置が必要になります。一方でクラウドの場合は、災害に強いデータセンターの中で、一部のハードウェア障害が起きてもサービスが継続して利用できる構成をとっていますので、オンプレミス環境でシステム構築するよりも低価格に可用性の高い環境を利用できます。またクラウド事業者の多くは、可用性の契約としてSLA(Service Level Agreement、サービスレベル契約)を開示しています。
構築スピードの速さ
オンプレミス環境の場合は、設計後にハードウェア、ソフトウェアを調達し配置するまでに時間がかかります。クラウドの場合は、クラウド事業者が用意しているハードウェア、ソフトウェア利用して、すぐにシステムが構築できます。
パブリッククラウドとオンプレミス環境の比較
パブリッククラウド、プライベートクラウド、コミュニティクラウド、 ハイブリッドクラウド、オンプレミスの比較表
種類 | 概要 | メリット | デメリット |
---|---|---|---|
パブリッククラウド | インターネット経由で不特定多数にサービスを提供するクラウド環境 |
|
|
プライベートクラウド | 自社ネットワーク内に、従業員向けに構築するクラウド環境 |
|
|
コミュニティクラウド | 特定の企業間で共同運用されるクラウド環境 |
|
|
ハイブリッドクラウド | データセンターやオンプレミス環境とパブリッククラウドを接続するネットワークを利用して両方の環境を利用するクラウド環境 |
|
|
オンプレミス | 企業の拠点内に存在するサーバルームやデータセンターに保管されているシステムを専用線で利用するシステム環境 |
|
|
パブリッククラウドとプライベートクラウドの違い
クラウドの利用モデルは「パブリッククラウド」「プライベートクラウド」「コミュニティクラウド」「ハイブリッドクラウド」に分類されます。パブリッククラウドは、クラウド事業者がシステムを構築し、インターネット網などのネットワークを介して不特定多数の企業や個人にサービスを提供する形態です。クラウドシステムは企業や個人のファイアウォールの外側に構築されますので、企業ユーザは自社でIT資産を保有する必要はなく、コンピューティングリソースを短期間・低コストで用意でき、運用管理の負担が少ないといったメリットがあります。対するプライベートクラウドは、クラウドサービスのユーザ側または事業者側のデータセンターに、クラウド関連技術を活用した自社専用の環境を構築して、コンピューティングリソースを柔軟に利用できる形態です。仮想化や自動化といったクラウド関連技術の活用により、システムのパフォーマンスとコストが最適化され、企業の事業や業務に合わせて柔軟にカスタマイズ出来ることが特徴です。
コミュニティクラウド
コミュニティクラウドとは、共有の目的を持った特定企業間でクラウドのシステムを形成し、データセンターで共同運用する形態です。パブリッククラウドとプライベートクラウドの中間的な形態です。
ハイブリッドクラウド
ハイブリッドクラウドとは、パブリッククラウドとプライベートクラウド、コミュニティクラウドなど各クラウドやオンプレミス環境システムを連携させて活用する、システムやサービスです。
パブリッククラウドの問題点(注意点・デメリット)
パブリッククラウドの問題点は主に3つに分類されます。1つ目はコンピューティングリソースを共有するため、負荷がかかり障害の原因になる点です。共有していることは、他の企業ユーザが多くのコンピューティングリソースを利用すると、クラウド環境全体に負荷がかかり、パブリッククラウド環境で障害が発生した場合は、自社もシステム障害に巻き込まれてしまう点です。予期せぬ障害に巻き込まれてしまった場合は、24時間365日止められないシステムを構築し運用しているのであれば、パブリッククラウド環境に全ての情報資産を預けておくことは大きなリスクがあります。2つ目はシステム構成の柔軟性が制限されることです。共有しているパブリッククラウドでは制約があり、自社用のシステムを構成しにくいデメリットがあります。パブリッククラウド環境にシステム構成ができなく断念する例はこの原因が多いです。3つ目はセキュリティ対策で不十分であることです。不特定多数のユーザがインターネット経由でアクセスが出来るパブリッククラウドは、サイバー攻撃の標的になる可能性が高まります。重要な情報資産をパブリッククラウドに保管していると、サイバー犯罪の標的になり、企業の情報資産を窃取されてしまうなど情報漏えい事故の大きなリスクになります。
パブリッククラウドのユースケース
特に「パブリッククラウドの利用」では、VPC(Virtual Private Cloud)の構成でホスティング型プライベートクラウドを構成し、仮想的にプライベートクラウド環境を構成して、自社専用のシステムを構成しています。
パブリッククラウドに関する課題・目的
パブリッククラウドを構築し運用するにあたり、主な目的や課題を当社の関連するサービスに当てはめて解説しています。特に「パブリッククラウドの運用をおまかせしたい」場合は、AWSやAzureを始めとしたパブリッククラウド環境のシステム構築から、継続的にシステム安定稼働を目的とした運用監視サービスの提供までワンストップで提供します。
パブリッククラウドの拡張性とコスト
パブリッククラウドの拡張性は「オートスケール」と呼ばれるもので、自動的にコンピューティングリソースを多く利用する際に、拡張する仕組みを利用できることが特徴です。拡張された際のコストは比例して、多くのリソースを利用した際に金額が加算される仕組みになります。
パブリッククラウドの運用、保守、管理
パブリッククラウドの運用は上流工程の構築から考えることで、システム運用管理全体を視野にいれることができ、保守、運用を考えたシステムを構成することができます。パブリッククラウドもオンプレミス環境と同様に、システムを24時間365日安定稼働するように様々な業務を実行する必要があります。具体的なシステム運用管理業務に分類される、システム運用、保守、管理の業務の説明は次のページを御覧ください。
パブリッククラウドのセキュリティ対策
根本的なパブリッククラウドのセキュリティ対策は、プライベートクラウドの導入、オンプレミス環境との連携によるハイブリットクラウドの利用など、クラウドサービスを導入する初期段階のシステム構築の段階で意識をする必要があります。機密性の高い情報資産を保管する場所は、情報漏えい事故のリスクを考えてプライベートクラウドやオンプレミス環境に保管します。大勢の不特定多数のユーザ向けサービスは、インターネット経由で利用できるパブリッククラウド環境でアプリケーションを構成するなど、拡張性を意識して利用する傾向にあります。このように一般的にはシステム環境を切り分ける考え方で最適解を導き出しますが、ここからはパブリッククラウド環境のみで構成されているシステムのセキュリティ対策に対して考察していきます。
パブリッククラウド(AWS、Azure)環境
近年、脆弱性診断サービスのご相談を頂くお客様の80〜90%が、AWSかAzure環境上にアプリケーションを構築しており、クラウドファーストへの取組み方が浸透しているのが感じます。また、そのアーキテクチャもOnPとは明らかに異なり、AWS Well-Architected Frameworkが利用されており診断する側から見ても理解し易くなっています。以降、オンプレミス環境とクラウド(AWS・Azure)とを比較して、どのようなリスクが生じるのか、またどのようなセキュリティ対策が必要か紹介します。
オンプレミス(OnP)と比較して、クラウド(AWS/Azure)には、 どのようなテクニカルリスクがあるのか?
アプリケーションをOnPで稼働させる場合と、クラウドで稼働される場合で、メリットとリスクが大きく変化してきたことが多くのベンダーや専門家から発信されています。その中でも一番目を引いたのが"Cloud Economics"という言葉です。クラウドを使用するメリットには、単なるコンピューティングコストだけに留まらない経済性がある事がこの2-3年で理解されていますし、この経済性の領域が拡大し続けています。
クラウドの経済性
リスクについても、OnPよりもクラウドが安全であるという意見もありますが、どちらが安全かという議論には意味はなく、リスクは双方にそれぞれ存在し、そのリスクを正しく認識・評価し、予防/検知/防御というリスク対策の原則に沿った対応することが重要です。リスクの認識は、OnPもクラウドもリスクを生じさせるソース(源)に違いはないです。脆弱性はソフトウェアからもたらさせます。では、ソフトウェアの脆弱性は何からもたらさせるのか?
- ソフトウェアコンポーネント
- ソフトウェアコンポーネントの設定情報(config)
では、クラウドサービスの脆弱性は?
次のように考えることが出来ます。
- クラウドサービスを構成するソフトウェアコンポーネント
- クラウドサービスを構成するソフトウェアコンポーネントの設定情報(config)
このような構造から、クラウドでは共有責任モデル(※ AWSサイトに移動します)と言う考え方が登場し、責任区分を明確に示しています。この事からもクラウド環境でもっとも気にかける必要があるのは、設定情報だと言うことが分かるかと思います。また、責任区分が明確になるために開発者自身のセキュリティ意識がますます重要になります。
クラウド(AWS/Azure)におけるセキュリティ対策
今回は、クラウド(AWS/Azure)におけるセキュリティ対策についてAWSを前提に考察します。パブリッククラウド(AWS)からは、非常に多くのドキュメントや情報が共有されており、主要なものを読み、チーム内で共学習されることをお勧めします。我々のようなナレッジワーカーは、どのようなナレッジを有するかで、個々のマインドセットが変わってきます。共通のものがあれば、共有の気づきにも発展でき、チームで成果を出すのに有効です。特に共学習にておきたいドキュメントとツールを以下に記載します。
ツール | 説明 |
---|---|
Security Pillar - AWS Well-Architected Framework | AWS Well-Architected Frameworkで、デザイン、デリバリー、メンテナンスに関するベストプラクティスがまとめられています。 |
AWSセキュリティのベストプラクティス | AWSクラウド内のデータと資産を保護できるようにISMS(Information Security Management System)の定義に沿って、一連のセキュリティポリシーとプロセスを作成するのに役立つセキュリティのベストプラクティスについて説明されています。 |
AWS Trusted Advisor | AWSで利用しているアカウント情報に基づき、利用しているシステムのチェックを実施します。AWSビジネスサポート、AWSエンタープライズサポートに契約をしている場合は、コスト最適化、セキュリティ、耐障害性、パフォーマンス、サービスの範囲など全てのチェックと推奨事項にアクセスをし確認することが可能です。 |
AWS Well Architected Tool | 最新の AWS アーキテクチャのベストプラクティスと比較することができ、レビュー後に実装されているシステムを設計する際に最適解を導き出すことが出来ます。 |
クラウドの世界では、色々なものを標準化し再利用する取組みが行われており、一にも二にも標準化が推奨されています。その効果は、あらゆる面で生産性に影響を及ぼしています。その標準化の代表となるのは、AWSセキュリティのベストプラクティスです。開発者が注意すべきAWS固有のリスクを記載してあり、遵守すべき事項です。
AWSセキュリティのベストプラクティスの一例
- AWSアカウント/IAMユーザー/グループ/ロールの管理
- EC2インスタンスのOSレベルのアクセスの管理
- アプリケーションの管理と AWS パブリッククラウドサービスへの管理アクセス
- S3/EBS/RDS/Glacier/DynamoDB/EMRでの保管時のデータの保護
- アプリケーションの管理とAWSクラウドサービスへの管理アクセス
- オペレーティングシステムとアプリケーションのセキュリティによる保護
- セキュリティのテスト
- セキュリティモニタリング、アラート、監査証跡、インシデント対応の 管理
AWSのベストプラクティスでも"セキュリティのテスト"の必要性を以下の3つのポイントで指摘しています。
項目 | 特徴 | 評価方法 |
---|---|---|
外部脆弱性評価 |
|
外部プラットフォーム診断による評価 |
外部侵入テスト |
|
外部ペネトレーションテストによる評価 |
アプリケーションと プラットフォームの内部グレー /ホワイトボックスレビュー |
システムに関する知識を部分的または十分に持っているテスターが、配備されているコントロールの効率性を検証したり、アプリケーションとプラットフォームに既知の脆弱性があるかどうかを評価 | デザインレビューによる評価 |
AWSセキュリティのベストプラクティスには記載はありませんが、STG/開発環境も十分注意が必要です。クラウド環境は開発者に取って便利なツールですが、ちょっとした不注意でSTG/開発環境からの情報漏えいや不正アクセスが起こり得ます。本番環境と同等の注意が必要です。AWSセキュリティにはベストプラクティス以外にもPCIDSSやHIPPA,ISO,CISなどの設定情報のガイドラインがサードパーティーより提供されています。ガイドラインを利用することも有効で、標準化策の一つです。
ペネトレーションテスト
攻撃者の観点で擬似的にシステムに不正侵入を試み、悪用できるか確認をするテストを実行します。ペネトレーションテストは様々なシナリオに応じて、システムの弱点を把握し、万が一の不正侵入のリスクを予め回避できるよう対策を講じることができます。
脆弱性診断
脆弱性診断は、ツール診断とエンジニア手動診断により脆弱性を洗い出し対策を講じる事で、WebサイトやWebアプリケーション、システムプラットフォームに対して実行される標的型攻撃から、情報漏えい事故などのリスクを未然に回避することが可能です。
パブリッククラウドの運用とセキュリティの関連性
パブリッククラウド環境は事業者のデータセンターで保管されているサーバやネットワーク機器などで構成されるシステムです。サーバやネットワーク機器は互いにコンピュータネットワークにおけるネットワークアーキテクチャに基づいてシステム内で通信を仕合います。OSI参照モデル、TCP/IPはネットワークアーキテクチャモデルであるため、通信を確立するための規則として利用されます。しかしコンピュータ通信はクラウドサービスでも同様の処理が行われており、各層(レイヤー)に対応したサービスを展開している名称に分けられます。それがクラウドコンピューティングの処理に基づいて「SaaS」「PaaS」「IaaS」に分類されることを意味します。
OSI参照モデルとTCP/IPとクラウドセキュリティの関連図
アイティーエムでは「SaaS」「PaaS」「IaaS」のクラウドサービスに対応した「セキュリティ運用サービス」を提供しています。クラウドサービスの各層に対応したセキュリティ対策サービスを図を見ることで理解が出来ます。「SaaS」セキュリティは、「WEBアプリケーション層脆弱性管理サービス」と「OSS脆弱性管理サービス」でアプリロジックのプログラムの脆弱性とライブラリやフレームワークなどのOSS(オープンソースソフトウェア)の脆弱性を管理しソフトウェアの継続的な脆弱性対策が可能です。「PaaS」セキュリティでは「システムプラットフォーム層脆弱性管理サービス」と「内部ホスト脆弱性管理サービス」でミドルウェアとOSの継続的な脆弱性対策が可能です。「IaaS」セキュリティでは「クラウドセキュリティ設定診断サービス」で土台となるネットワーク、サーバなどのシステム設定を確認することにより脆弱性対策が可能です。
セキュリティ運用サービス
セキュリティ運用サービスは、お客様と予め設定したスケジュールに沿って、当社が定期的な脆弱性診断を実施し、その結果をご報告いたします。また、お客様側でのシステムの構成変更等があった際には、ご要望に応じて都度診断も承ります。診断結果レポートに基づく対策支援や運用代行も当社エンジニアが対応いたしますので、安心・安全なシステム運用が効率的に実施可能です。また、他のセキュリティサービスと組み合わせ、年間を通してセキュリティコンサルやアセスメントも承ります。