InfraAcademy

InfraAcademy Blog

OSのパッチは誰が当てる?AWSの責任共有モデルを、EC2・RDS・S3の3つで比べてCLF-C02の練習問題8問で確認する

著者: ryu | #aws #セキュリティ #資格
講座一覧を見る

Linux・ネットワーク・AWSなど、学びたい分野の講座を探せます

この記事を共有

こんにちは、インフラエンジニアのryuです。

この記事は、AWS認定クラウドプラクティショナー(CLF-C02)の勉強をしていて、責任共有モデルの問題で「AWSの責任」と「利用者の責任」の境目が分からなくなる人に向けて書いています。

責任共有モデルは、言葉だけなら「インフラはAWS、中身は利用者」と覚えれば大きく外れません。それでも問題で迷うのは、使うサービスによって境目の位置が変わるからです。

例えば、OSのパッチを当てるのは、EC2なら利用者ですが、RDSならAWSです。ここを「OSは利用者」と一律に覚えていると、RDSの問題で間違えます。

そこでこの記事では、責任共有モデルの基本を確認したあと、EC2・RDS・S3の3つのサービスで境目を比べ、最後にオリジナルの練習問題を8問解いてもらいます。

CLF-C02全体の勉強の進め方は、CLF-C02の勉強方法の記事にまとめています。

責任共有モデルは試験のどこで出る?

まずは試験の範囲を確認しておきます。CLF-C02の試験ガイドでは、出題が4つの分野に分かれていて、配点は次のとおりです。

分野 配点
クラウドのコンセプト 24%
セキュリティとコンプライアンス 30%
クラウドテクノロジーとサービス 34%
請求、料金、およびサポート 12%

責任共有モデルは、「セキュリティとコンプライアンス」の分野の最初の項目です。この分野は試験全体の30%あり、4つの中で2番目に大きい分野です。

責任共有モデルの問題は、1つのサービスの名前と、1つの作業(パッチ、暗号化、アクセス権の設定など)を組み合わせて出てきます。なので、サービスごとに境目を整理しておくと、そのまま点につながります。

責任共有モデルとは?

責任共有モデルは、AWSを使うときのセキュリティと運用の責任を、AWSと利用者で分けて持つという考え方です。AWSの公式ページの説明を要約すると、次のとおりです。

AWSは「クラウドのセキュリティ(Security of the Cloud)」に責任を持つ。これは、AWSのサービスを動かしているハードウェア、ソフトウェア、ネットワーク、施設などのインフラを守ることである。利用者は「クラウドにおけるセキュリティ(Security in the Cloud)」に責任を持ち、その範囲は利用者が選んだAWSのサービスによって決まる。

ポイントは、of(クラウドそのもの)と in(クラウドの中に置いたもの)の違いです。日本語の資料では「クラウドのセキュリティ」と「クラウドにおけるセキュリティ」と訳されていて、1文字違いなので読み間違えに注意してください。

それぞれの責任に入る主なものを表にまとめました。

AWSの責任(クラウドのセキュリティ) 利用者の責任(クラウドにおけるセキュリティ)
データセンターの建物と物理的な入退室の管理 保存するデータと、その暗号化を使うかどうか
サーバー・ストレージ・ネットワーク機器などのハードウェア IAMのユーザー・権限・MFAの設定
仮想化のためのソフトウェア(ハイパーバイザー) EC2のゲストOSと、その上のアプリケーション
リージョン・アベイラビリティーゾーン・エッジロケーション セキュリティグループなどのファイアウォールの設定

右の列は、どのサービスを使っても利用者に残るものと、サービスによって変わるものが混ざっています。次の章で、その違いを3つのサービスで確認します。

EC2・RDS・S3で境目はどう変わる?

責任共有モデルで一番大事なのは、AWSが管理してくれる範囲が広いサービスほど、利用者の責任の範囲は狭くなるという点です。

EC2・RDS・S3の3つを並べると、この違いがよく分かります。

作業 EC2 RDS S3
物理的なサーバーとデータセンターの管理 AWS AWS AWS
OSのパッチ適用 利用者 AWS AWS
データベースソフトウェアの更新 利用者(自分で入れた場合) AWS(時間の指定は利用者) 該当なし
ネットワークのアクセス制御 利用者(セキュリティグループ) 利用者(セキュリティグループ) 利用者(バケットポリシーなど)
データの暗号化を使うかどうか 利用者 利用者 利用者
IAMの権限の設定 利用者 利用者 利用者

表の下の3行は、どのサービスでも利用者の責任です。変わるのは、上から2行目と3行目のOSとソフトウェアのところだけです。

EC2は、OSから上がすべて利用者の責任

EC2は、クラウド上でサーバー(仮想マシン)を借りるサービスです。AWSは物理的なサーバーと仮想化の仕組みまでを管理し、その上のOSは利用者が管理します。

AWSの公式ページでも、EC2を使う利用者は、ゲストOSの管理(更新とセキュリティパッチを含む)、自分で入れたアプリケーション、そしてAWSが用意するセキュリティグループの設定に責任を持つと書かれています。

つまり、EC2にLinuxを入れて使っているなら、dnf update などでパッケージを更新するのは利用者の仕事です。EC2がどんなサービスかを先に確認したい人は、EC2とS3の違いの記事を読んでおくと、この章が入りやすくなります。

RDSは、OSとデータベースの更新をAWSが行う

RDSは、データベースをAWSに管理してもらうサービスです。RDSでは、利用者はOSにログインしません。

RDSのユーザーガイドでは、メンテナンスウィンドウの間に、ハードウェア、OS、データベースエンジンのマイナーバージョンの更新をRDSが適用すると説明されています。利用者は、メンテナンスウィンドウの時間帯を選んだり、適用のタイミングを決めたりできます。

一方で、データベースの中のデータ、データベースのユーザーとパスワード、セキュリティグループで接続元を絞る設定は、RDSでも利用者の責任です。RDSとDynamoDBの使い分けは、RDSとDynamoDBの違いの記事で整理しています。

S3は、データとアクセス権の管理が利用者の責任

S3は、データ(オブジェクト)を保存するサービスです。AWSの公式ドキュメントでは、S3やDynamoDBのようなサービスについて、AWSがインフラ・OS・プラットフォームを運用し、利用者はエンドポイントにアクセスしてデータを保存・取得すると説明されています。

その上で、利用者は、データの管理(暗号化の選択を含む)、データの分類、IAMを使った適切な権限の設定に責任を持ちます。

S3でよく問題になるのは、バケットを誤って公開してしまうケースです。これはAWSの不具合ではなく、利用者がアクセス権の設定を誤ったことによるものなので、責任は利用者にあります。

3つの管理の種類とは?

責任共有モデルには、もう1つ覚えておきたい分け方があります。AWSの公式ページでは、ITの管理(コントロール)を次の3つに分けています。

種類 意味 例
継承される管理(Inherited Controls) AWSが行っている管理を、利用者がそのまま引き継ぐもの 物理的な管理、環境的な管理(データセンターの電源・空調など)
共有される管理(Shared Controls) 同じ種類の管理を、AWSと利用者がそれぞれの範囲で行うもの パッチ管理、構成管理、意識向上とトレーニング
利用者固有の管理(Customer Specific) 利用者だけが責任を持つもの サービスと通信の保護、ゾーンのセキュリティ(データを特定の環境の中で扱う設計など)

迷いやすいのは、共有される管理です。これは「AWSと利用者が一緒に1つの作業をする」という意味ではありません。

例えばパッチ管理なら、AWSはインフラのパッチを当て、利用者はゲストOSとアプリケーションのパッチを当てます。トレーニングなら、AWSは自社の従業員を、利用者は自社の従業員をそれぞれ教育します。同じ名前の管理を、それぞれが自分の範囲で行うということです。

責任共有モデルの練習問題8問

ここからはオリジナルの練習問題です。正解と解説は、それぞれの問題のすぐ下の引用ブロックにまとめています。先に自分で答えを決めてから読んでください。

問題1:データセンターの管理

AWSのデータセンターへの物理的な入退室の管理は、誰の責任ですか。

  • A. 利用者
  • B. AWS
  • C. AWSと利用者の両方
  • D. 利用者が契約したサードパーティーの監査会社

正解:B データセンターの建物や入退室の管理は、クラウドそのものを守る「クラウドのセキュリティ」に入るので、AWSの責任です。利用者はデータセンターに入れないので、管理することもできません。

問題2:EC2のOSのパッチ

EC2インスタンスで動かしているLinuxに、セキュリティパッチを適用するのは誰の責任ですか。

  • A. AWS
  • B. 利用者
  • C. AWSが自動で適用するので、誰の責任でもない
  • D. Linuxの開発元

正解:B EC2では、ゲストOSの管理(更新とセキュリティパッチを含む)は利用者の責任です。AWSが管理するのは、物理的なサーバーと仮想化の仕組みまでです。

問題3:RDSのOSのパッチ

RDSで動かしているデータベースの、基盤となるOSにパッチを適用するのは誰の責任ですか。

  • A. AWS
  • B. 利用者
  • C. データベースの管理者が、OSにログインして適用する
  • D. RDSではOSにパッチを適用しない

正解:A RDSでは、メンテナンスウィンドウの間に、OSやデータベースエンジンのマイナーバージョンの更新をAWSが適用します。利用者はOSにログインしないので、C のような作業はありません。適用の時間帯を選ぶのは利用者です。

問題4:S3のアクセス権

S3のバケットが誤ってインターネットに公開され、データが第三者に見られてしまいました。アクセス権の設定について責任を持つのは誰ですか。

  • A. AWS
  • B. 利用者
  • C. AWSと利用者が半分ずつ
  • D. データを見た第三者

正解:B S3では、データの管理と、IAMやバケットポリシーによるアクセス権の設定は利用者の責任です。AWSは、利用者が設定したとおりにアクセスを許可したり拒否したりする仕組みを提供しています。

問題5:利用者に残る作業

RDSを使うときでも、利用者の責任として残るものはどれですか。

  • A. データベースサーバーのハードウェアの交換
  • B. 基盤となるOSへのパッチ適用
  • C. セキュリティグループで、データベースに接続できる送信元を絞る設定
  • D. データセンターの電源設備の管理

正解:C RDSでも、ネットワークのアクセス制御は利用者が設定します。A と D は物理的なインフラなのでAWSの責任です。B は問題3のとおりAWSが行います。

問題6:共有される管理

AWSの責任共有モデルで、共有される管理(Shared Controls)の例はどれですか。

  • A. 物理的な管理と環境的な管理
  • B. パッチ管理
  • C. サービスと通信の保護
  • D. データセンターの入退室の管理

正解:B パッチ管理は、AWSがインフラのパッチを、利用者がゲストOSとアプリケーションのパッチを、それぞれの範囲で行う共有される管理です。A と D は継承される管理、C は利用者固有の管理です。

問題7:IAMユーザーのMFA

社員が使うIAMユーザーに、多要素認証(MFA)を設定するのは誰の責任ですか。

  • A. AWS
  • B. 利用者
  • C. MFAは自動で有効になるので、誰の責任でもない
  • D. 社員が使うスマートフォンのメーカー

正解:B IAMのユーザー・権限・MFAの設定は、どのサービスを使うときでも利用者の責任です。AWSはMFAの仕組みを提供しますが、どのユーザーに設定するかは利用者が決めます。

問題8:利用者の範囲が狭いサービス

次のうち、責任共有モデルで利用者が管理する範囲が最も狭いものはどれですか。

  • A. EC2にデータベースソフトウェアを自分でインストールして使う
  • B. RDSでデータベースを使う
  • C. EC2にWebサーバーを自分で構築して使う
  • D. EC2を使い、OSの更新を自動化するスクリプトを自分で作る

正解:B RDSでは、OSやデータベースエンジンの更新をAWSが行うので、EC2に自分でデータベースを入れる場合より利用者の範囲は狭くなります。A・C・D はいずれもEC2なので、ゲストOSから上は利用者の責任です。

責任共有モデルの問題で間違えたときの見直し方

8問のうち間違えた問題があれば、どこで迷ったのかを確認しておきましょう。次の表に当てはめると、見直す場所がはっきりします。

間違えた問題 見直すところ
問題1 「クラウドのセキュリティ」に入る物理的なインフラ
問題2・3・8 EC2とRDSでOSのパッチの担当が入れ替わること
問題4・5・7 データ・アクセス権・IAMは、どのサービスでも利用者に残ること
問題6 継承される管理・共有される管理・利用者固有の管理の3つの例

問題を見たら、まずサービスの名前を確認し、次にその作業がOSより下か上かを考えると、ほとんどの問題は答えが決まります。

今日やる練習とInfraAcademyで続ける方法

今日の練習として、次の3つをやってみてください。どれも紙とペンだけでできます。

  1. この記事のEC2・RDS・S3の表を見ないで書き出し、AWSと利用者の欄を埋めてみる
  2. Lambdaを使う場合、OSのパッチは誰が当てるかを、RDSと同じ考え方で予想してから、AWSの公式ページで確かめる
  3. 自分の会社や学校で「物理的な管理」「パッチ管理」「トレーニング」にあたるものを1つずつ書き出す

1つ目で迷ったところが、そのまま本番で間違えやすいところです。2つ目は、公式ページで答えを確認するところまでやると、表に無いサービスでも考え方を応用できるようになります。

IAMの権限の考え方に不安がある人は、IAMユーザーとIAMロールの違いの記事や、IAMユーザーにMFAを設定する記事も参考にしてください。セキュリティの考え方を広く知りたい人には、ゼロトラストの記事もおすすめです。

InfraAcademy のAWSの講座では、講座の中のシミュレーターでAWSの操作を練習できます。学ぶ順番はAWSのロードマップで確認できます。

問題演習を続けたい人は、トップページのInfraAcademy の資格模擬問題から「AWS認定 クラウドプラクティショナー模擬試験150問」を解けます。セキュリティとコンプライアンスの分野で間違えた問題があれば、この記事のEC2・RDS・S3の表に戻って、どこで取り違えたのかを確認してみてください。

まとめ

AWSの責任共有モデルの問題で、押さえておきたいところを振り返ります。

  • AWSは「クラウドのセキュリティ」、利用者は「クラウドにおけるセキュリティ」に責任を持つ
  • 利用者の範囲は、選んだサービスによって変わる
  • EC2ではゲストOSから上が利用者、RDSではOSとデータベースエンジンの更新をAWSが行う
  • データ・暗号化の選択・IAMの権限・アクセス制御の設定は、どのサービスでも利用者に残る
  • 管理は、継承される管理・共有される管理・利用者固有の管理の3つに分けられる
  • 共有される管理は、同じ種類の管理をAWSと利用者がそれぞれの範囲で行うという意味

責任共有モデルは、セキュリティとコンプライアンスの分野の土台になる考え方です。ここを整理しておくと、IAMや暗号化の問題も解きやすくなります。表を一度自分で書いてから、模擬問題で確かめてみてください。合格に向けて、一緒に進んでいきましょう。

参考

Next Action

記事で読んだ内容を、講座で実装してみましょう

InfraAcademyでは、ブラウザ上でLinuxやネットワークの実践環境を使いながら学習できます。無料で始められる講座から、学習の流れを試せます。

この記事を書いた人

ryu

株式会社InfraAcademy 代表 / エンジニア

大手メーカーでインフラエンジニアとして勤務した後、ベンチャー企業・スタートアップでフルスタックエンジニアを経験。その後、起業し学習サービス「InfraAcademy」を運営しています。
保有資格:ネットワークスペシャリストなど 運営会社:株式会社InfraAcademy

Related

関連記事

ブログ一覧へ

Roadmap

まずはこの4講座から

ログインすれば無料で始められる講座です。気になったテーマから手を動かして学べます。

講座一覧を見る