AWS CLF(Cloud Practitioner)対策
責任共有モデル
このレッスンを終えると、ある障害や設定ミスについて「責任を負うのは AWS か利用者か」をその場で線引きできるようになります。CLF-C02 で最も出題される考え方です。
自分でサーバーを1台建てるなら
自宅やオフィスにサーバーを1台置いて Web サイトを動かす場面を思い浮かべてください。あなたがやることは山ほどあります。機械を買ってラックに載せる、電源と回線を引く、部屋に鍵をかける、OS を入れる、パッチを当てる、ファイアウォールの穴を絞る、アプリを載せる、データをバックアップする。壊れたディスクを差し替えるのもあなたです。つまり全部があなたの責任でした。
AWS を使うと、この一覧の上半分を AWS が引き取ります。データセンターの建物、警備、電源、空調、物理サーバー、ストレージ装置、AWS のリージョンをつなぐネットワーク、そして仮想化基盤。これらを AWS が運用します。残った下半分、つまりあなたがクラウドの中に置いたものは、引き続きあなたの責任です。この分担を責任共有モデルと呼びます。
2つの言い方を覚える
試験ではこの2つの言い回しがそのまま出ます。
- AWS は セキュリティ・オブ・ザ・クラウド(クラウド「の」セキュリティ)を担う
- 利用者は セキュリティ・イン・ザ・クラウド(クラウド「の中」のセキュリティ)を担う
具体的に並べると次のとおりです。
| 項目 | 責任を負うのは |
|---|---|
| データセンターの物理的な入退室管理 | AWS |
| ハードウェアの故障交換、廃棄ディスクの破砕 | AWS |
| 仮想化基盤(ハイパーバイザー)とマネージドサービスの基盤 | AWS |
| EC2 に載せた OS のパッチ適用 | 利用者 |
| セキュリティグループの通信許可の設定 | 利用者 |
| IAM のユーザー管理とアクセス権限の設計 | 利用者 |
| S3 バケットを公開にするか非公開にするか | 利用者 |
| データそのものと、その暗号化の判断 | 利用者 |
覚え方はひとつだけです。データはどんな場合でも利用者の責任。AWS は預かった箱を守りますが、箱に何を入れて誰に見せるかを決めるのはあなたです。
サービスの種類で線が動く
ここが差がつくところです。責任の線は固定ではなく、使うサービスの抽象度によって上下します。
- IaaS(Amazon Elastic Compute Cloud、通称 EC2 など)では線が低い位置にあります。OS から上はまるごと利用者が見ます。ゲスト OS の更新、ミドルウェアの設定、アプリの脆弱性すべてです。
- PaaS(Amazon Relational Database Service、通称 RDS や AWS Lambda など)では線が上がります。OS のパッチ当てや DB エンジンのマイナーバージョン更新は AWS 側の仕事になり、利用者はデータ、アクセス権限、接続元の絞り込みに集中します。
- SaaS(Amazon Chime のような完成品サービス)では線がさらに上がり、利用者に残るのはほぼアカウント管理とデータの取り扱いだけになります。
ただし、どの層でも利用者から離れないものが3つあります。データ、アクセス管理(IAM)、クライアント側の設定です。
試験ではこう出る
出題者は言葉を置き換えて聞いてきます。
- 「ゲスト OS へのパッチ適用は誰の責任か」→ EC2 の話なら利用者。RDS の話なら AWS。同じ「パッチ」でもサービス名で答えが反転します
- 「物理サーバーの廃棄」「施設の入退室」「ハードウェアの保守」→ 全部 AWS
- 「S3 のデータが誰でも見られる状態になっていた」→ バケットの公開設定は利用者。AWS の障害ではありません
- 「データの暗号化をするかどうか」→ 利用者。ただし暗号化を実行する仕組み(AWS Key Management Service)を提供するのは AWS
- 「AWS のグローバルインフラストラクチャ」という語が出たら AWS 側を指す合図です
まとめ
- AWS はクラウド「の」セキュリティ、利用者はクラウド「の中」のセキュリティを負う
- 物理・基盤・仮想化は AWS、OS より上とデータと権限は利用者
- 線の位置は IaaS より PaaS、PaaS より SaaS のほうが上にある
- どの層でもデータとアクセス管理は利用者から離れない
- 迷ったら「サービス名は何か」を先に確かめる。答えはサービスの抽象度で決まる
復習ミニクイズ
ある企業が Amazon RDS でデータベースを運用しています。データベースエンジンのパッチ適用について、責任共有モデル上の責任を負うのは誰ですか。