責任共有モデル:IaaS、PaaS、SaaS
3つの主要なサービスモデル全体で、どのセキュリティ制御をクラウドプロバイダーが担い、どれを顧客が担うのかを正確に整理します。
「責任共有モデル:IaaS、PaaS、SaaS」はCoddyKit上の無料Cloud & IT Cert Prepレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCloud & IT Cert Prep学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cloud & IT Cert Prepコースには全4レッスンが含まれています。
クラウドサービスモデルの概要
クラウドサービスは主に3つのモデルで提供され、それぞれ抽象化のレベルが異なります。Infrastructure as a Service(IaaS)は、コンピューティング、ストレージ、ネットワークをそのまま提供します。Platform as a Service(PaaS)は、OS、ミドルウェア、ランタイム環境を追加します。Software as a Service(SaaS)は、インターネット経由で完全に機能するアプリケーションを提供します。これらのモデルを理解することは重要です。モデルによってセキュリティ上の責任が大きく異なるためです。
# Cloud service model examples
# IaaS: AWS EC2, Azure VMs, Google Compute Engine
# You manage: OS, runtime, applications, data
# Provider manages: hypervisor, physical hardware, datacenter
# PaaS: AWS Elastic Beanstalk, Azure App Service, Heroku
# You manage: applications, data, configurations
# Provider manages: OS patches, runtime, scaling
# SaaS: Microsoft 365, Salesforce, Google Workspace
# You manage: user access, data content, configuration
# Provider manages: everything else責任共有モデル
責任共有モデルは、どのセキュリティタスクがクラウドプロバイダーの義務で、どのタスクが顧客に属するかを定義します。このモデルは、「プロバイダーはクラウドのセキュリティ(物理データセンター、ハイパーバイザー、ネットワークインフラ)に責任を持ち、顧客はクラウド内のセキュリティ(データ、アクセス管理、アプリケーションセキュリティ、設定)に責任を持つ」と要約できます。この境界を誤解することは、クラウドセキュリティインシデントの主な原因の1つです。
IaaSの責任
IaaSでは、顧客が最も大きなセキュリティ責任を負います。クラウドプロバイダーは、物理インフラ、ハイパーバイザー、ネットワークファブリックを保護します。顧客は、OSのインストール、パッチ適用、ハードニング、ランタイムとミドルウェアの設定、アプリケーションセキュリティ、ネットワークセキュリティグループのルール、IAMポリシーとユーザー管理、保存時および転送中のデータ暗号化、コンプライアンス設定を担当します。IaaSは最大限の制御を提供しますが、最大限のセキュリティ対策が必要です。
# IaaS security checklist (customer responsibilities)
# AWS EC2 example:
# [ ] Patch OS and installed packages regularly
# [ ] Harden security group rules (least-privilege inbound/outbound)
# [ ] Enable CloudTrail for API logging
# [ ] Encrypt EBS volumes with KMS
# [ ] Rotate IAM access keys regularly
# [ ] Enable VPC Flow Logs for network monitoringPaaSの責任
PaaSでは、プロバイダーがOSとランタイムの管理を引き受けます。顧客は、OSへのパッチ適用やミドルウェアの管理を行う必要がなくなり、それらはプロバイダーが処理します。ただし、顧客はアプリケーションコードのセキュリティ(SQLi、XSSなどがないこと)、データの分類と暗号化、IDおよびアクセス管理、アプリケーション設定(環境変数、シークレット管理)、APIセキュリティを引き続き担当します。PaaSでは一部の負担をプロバイダーに移し、顧客はアプリケーションロジックに集中できます。
SaaSの責任
SaaSでは、プロバイダーがほぼすべてを管理します。顧客が主に担うセキュリティ責任は、アクセス管理(アカウントを持つ人の管理、MFAの適用、権限の確認)、データガバナンス(アップロードするデータと保持期間の管理)、設定セキュリティ(プライバシー設定、共有権限、サードパーティ統合)、そして許容される利用に関するコンプライアンスです。多くのSaaS侵害は、プロバイダーの障害ではなく、共有設定の誤りやサードパーティアプリへの過剰な権限付与に起因します。
混乱ゾーン:共有される管理策
一部の管理策は、プロバイダーと顧客の双方で共有されます。たとえば暗号化です。クラウドプロバイダーは暗号化サービス(KMS、デフォルト暗号化)を提供しますが、顧客はそれを有効にし、鍵管理を設定し、適切なアルゴリズムを選択する必要があります。同様に、ID管理ではプロバイダーがIAMツールを提供しますが、顧客は最小権限のポリシーを設定し、MFAを適用する必要があります。共有される管理策をプロバイダーが処理すると想定して設定しないことは、よくある危険な間違いです。
実際の障害事例:設定ミス
共有責任モデルが破綻する最大の原因は、プロバイダーの障害ではなく、ほとんどの場合顧客による設定ミスです。典型例として、一般公開されたままのS3バケット(2019年のCapital One侵害では1億件のレコードが流出)、権限昇格を許す過度に広範なIAMロール、機密性の高いポートでインバウンドの0.0.0.0/0ルールを設定したセキュリティグループ、クラウドにデプロイしたデータベースで変更されていないデフォルト認証情報などがあります。プロバイダーの基盤インフラは安全でしたが、顧客の設定は安全ではありませんでした。
# S3 public access — dangerous misconfiguration
aws s3api get-bucket-acl --bucket my-sensitive-bucket
# Check for 'AllUsers' grants — means world-readable!
# Fix: block all public access
aws s3api put-public-access-block \
--bucket my-sensitive-bucket \
--public-access-block-configuration \
'BlockPublicAcls=true,IgnorePublicAcls=true,BlockPublicPolicy=true,RestrictPublicBuckets=true'クラウドにおける可視性とログ記録
共有モデルにおける重要な課題の1つが可視性です。オンプレミス環境では、セキュリティチームがすべてのログを管理します。クラウドでは、プロバイダーのインフラストラクチャログにアクセスできない場合があります。顧客は、クラウドネイティブなログ記録サービスを有効にする必要があります。AWS CloudTrail、Azure Monitor、GCP Cloud Audit Logsは、API呼び出しや設定変更を記録します。これらのサービスを有効にしなければ、組織にはクラウド環境で誰が何を行ったかを示す監査証跡がなくなり、コンプライアンスとフォレンジック調査に大きな空白が生じます。
# Enable CloudTrail for all regions (AWS)
aws cloudtrail create-trail \
--name org-trail \
--s3-bucket-name my-cloudtrail-bucket \
--is-multi-region-trail \
--include-global-service-events
aws cloudtrail start-logging --name org-trail第三者の責任:MSPとCSP
組織がManaged Service Provider(MSP)を利用してクラウド環境を運用する場合、責任は三者間で分担されます。顧客は、契約(SLAとDPA)でセキュリティ上の義務が明確に定義されていることを確認する必要があります。SaaS経由で利用する第三者のクラウドアプリには、さらに複雑な問題があります。過度に広範な権限を持つアプリにOAuth同意を与えると、そのアプリがデータにアクセスできるようになります。第三者のOAuth同意を確認し、定期的に監査することは、SaaSのセキュリティ衛生管理の一環です。
共有モデルにおけるコンプライアンス
ワークロードをクラウドに移行しても、コンプライアンス要件がなくなるわけではありません。HIPAAでは、PHIを扱うクラウドプロバイダーとのBusiness Associate Agreement(BAA)が必要です。AWS、Azure、GCPはいずれもBAAを提供しています。PCI-DSSでは、クラウド環境を評価対象範囲に含める必要があります。プロバイダーが提供する共有責任マトリックスには、どのPCI管理策が満たされているかが記載されています。組織は、監査に合格するためにプロバイダーが対応する範囲と、自ら実装する必要がある範囲を理解しなければなりません。
契約上および法的な考慮事項
共有責任モデルには法的な効力があります。クラウドプロバイダーのTerms of ServiceとService Level Agreements (SLAs)には、可用性の保証と免責事項が定められています。GDPRに基づくData Processing Agreements (DPAs)では、データ処理者の義務が定義されます。プロバイダー側の障害が原因で侵害が発生した場合、顧客はSLAに基づく救済措置を求める根拠を持ちます。顧客の設定ミスが原因の場合、プロバイダーは責任を負いません。契約を理解することは、技術的な管理策を理解することと同じくらい重要です。
クイックチェック
このレッスンで扱ったCompTIA Security+ (SY0-701)の概念について、理解度を確認しましょう。
レッスンのまとめ
このレッスンでは、共有責任モデルによって、IaaS、PaaS、SaaS全体におけるプロバイダーと顧客のセキュリティ上の義務が定義されること、IaaSでは顧客が最も多くのセキュリティ責任を負い、SaaSでは最も少ないが、アクセス管理とデータガバナンスについては常に顧客が責任を負うこと、そしてクラウド侵害の主な原因は、プロバイダーの障害ではなく顧客の設定ミスであることを学びました。次は、クラウドストレージのセキュリティとデータ漏えいのリスクについて学びます。
よくある質問
「責任共有モデル:IaaS、PaaS、SaaS」レッスンは無料ですか?
はい。「責任共有モデル:IaaS、PaaS、SaaS」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cloud & IT Cert Prepコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cloud & IT Cert Prepコースには全4レッスンが含まれています。
「責任共有モデル:IaaS、PaaS、SaaS」で何を学びますか?
3つの主要なサービスモデル全体で、どのセキュリティ制御をクラウドプロバイダーが担い、どれを顧客が担うのかを正確に整理します。 ブラウザで直接実行するハンズオンコードでCloud & IT Cert Prepを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Cloud & IT Cert Prepを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのCloud & IT Cert Prepは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。
「責任共有モデル:IaaS、PaaS、SaaS」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このCloud & IT Cert Prepレッスンでコードを書いて実行できますか?
はい。すべてのCloud & IT Cert Prepレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- 責任共有モデル:IaaS、PaaS、SaaS
- クラウドストレージのセキュリティとデータ漏えいリスク
- クラウドID:IAMロールとサービスアカウント
- クラウドセキュリティポスチャ管理(CSPM)