AWS KMSとは?SAA頻出の暗号鍵管理を解説

AWS KMSとは?SAA頻出の暗号鍵管理を解説

AWS KMS の役割を考えるビジネスパーソン
「KMSって、結局なにを管理するサービス?」
「暗号化って自分でやらないとダメなの?」
「鍵はどこに保管されて、誰が触れるの?」

そんな疑問を抱える、AWS SAAの学習を始めたあなたへ。

結論から言えば、
AWS KMSとは、データを暗号化するための「鍵」を安全に作って・保管して・使わせるサービスです
と説明されるのが一般的です。

 

「KMS(Key Management Service)」とは、暗号化に使う鍵(キー)の作成・保管・利用の許可を、AWSがまとめて引き受けてくれるマネージドサービスのこととされています。

 

この記事では、KMSの基本、保管時(at rest)と転送時(in transit)の暗号化の違い、そして「誰が鍵を管理し、誰がデータを管理するのか」という役割分担を、SAAを学ぶあなた向けにやさしくまとめました。セキュアアーキテクチャ設計の理解に役立ちます。

 

1. AWS KMSとは

暗号鍵の管理をAWSに任せるイメージ

あなたが「KMS」という言葉に出会ったとき、まず押さえたいのは暗号化の鍵を安全に管理してくれるサービスという基本定義です。

 

KMSは「Key Management Service」の略とされ、データを暗号化(中身を読めない形に変換すること)するときに必要な「鍵」を、AWS上でまとめて扱えるサービスです。鍵そのものは、AWSが管理する堅牢な環境の中に保管されると言われています。

 

ここでイメージしてほしいのが、銀行の貸金庫です。大事なものは金庫の中にしまわれ、あなたは持ち出さずに、使う許可だけを得て利用します。KMSも、鍵の実体は安全な場所に置いたまま、「この鍵で暗号化してよい」という許可を通じて使う、と整理すると分かりやすいと言われています。

 

KMSの要点は、鍵そのものを利用者が持ち歩かず、AWSの安全な環境に預けたまま使う発想にあるとされています。これにより、鍵の紛失や漏えいのリスクをぐっと減らせます。

 

→ そもそも「暗号化」自体の基礎を押さえたい時は、暗号化とは で前提を掴めます。

 

2. 保管時の暗号化と転送時の暗号化

保管時と転送時の暗号化を区別するイメージ

あなたが「暗号化って、いつかけるの?」と思ったとしたら、その答えはデータの状態にあります。暗号化のタイミングは、大きく2つに分けて考えられています。

 

  • 保管時の暗号化(at rest): 保存されているデータを暗号化しておくこと
  • 転送時の暗号化(in transit): ネットワークを移動中のデータを暗号化すること

 

KMSが主に関わるのは、保管時の暗号化です。S3に置いたファイルやRDSのデータベースなどを、KMSの鍵で暗号化して保存する、という使い方が代表例とされています。

 

別の観点として、転送時の暗号化は主にTLSという仕組みで守られると言われています。保管時は「金庫にしまうときの鍵」、転送時は「運ぶ途中の封筒」をイメージすると、役割の違いを整理しやすいでしょう。まずは「KMSは主に保管時の暗号化で活躍する」と押さえれば十分です。

 

3. 誰が鍵を管理し、誰がデータを管理するか

鍵の管理者とデータの管理者の役割分担イメージ

あなたがKMSをもう一歩深く知るうえで大切なのが、役割の分担という考え方です。鍵の管理とデータの管理は、分けて整理されています。

 

観点 AWSが担う 利用者が担う
鍵の保管 堅牢な環境で安全に保管
鍵を使う許可 許可の仕組みを提供 誰に許可するかを設定
データの扱い どのデータを暗号化するか決める

 

鍵を「誰が使ってよいか」は、利用者が権限の仕組みで決めます。この権限の考え方は、AWS全体のアクセス管理とつながっています。

 

もう少し仕組みに踏み込むと、KMSの中心となる鍵そのものは取り出されず、実際の大きなデータの暗号化には、その鍵から生成した別の「データ用の鍵」を使う方式が取られることが多いとされています。中心の鍵は金庫から出さず、その場で作った使い捨ての鍵で中身を包む、というイメージです。こうすることで、肝心の鍵を外に出さないまま、たくさんのデータを暗号化できる、と整理すると分かりやすいでしょう。

 

KMSでは、鍵の保管はAWSに任せ、「誰がその鍵を使えるか」は利用者が決めるという分担が基本とされています。鍵を安全に預けつつ、利用の許可は自分の手元に残せるのが特徴です。

 

→ 「誰に何を許可するか」を決める仕組みは、AWS IAMとは で続きを押さえられます。

 

4. KMSはどんな場面で使うか

KMSが使われる代表的な場面のイメージ

あなたが「実際、どこで使うの?」と疑問に思ったとしたら、その答えはデータを安全に保存したい場面にあります。

 

KMSは単独で使うというより、他のAWSサービスと組み合わせて使われるのが一般的です。代表的な場面には、次のようなものがあるとされています。

 

  • S3に保存するファイルを暗号化する
  • RDSのデータベースを暗号化して保存する
  • アプリが扱う小さな秘密情報を暗号化する

 

SAAでは、「保管するデータを暗号化したい」という要件が出てきたら、KMSが選択肢になる、という形で問われやすいと言われています。多くのサービスでは、保存時の暗号化を有効にする設定でKMSの鍵を指定するだけで暗号化が働くため、アプリ側で複雑な処理を書かなくても済むのも利点とされています。問題文に「保管データを暗号化」「鍵を一元管理したい」といった言葉が出たら、KMSを思い浮かべると整理しやすいでしょう。

 

別の観点として、複数アカウントをまとめて統制する場面では、暗号化の方針を組織全体でそろえる発想も出てきます。組織単位の統制は AWS Organizationsとは でつかめます。

 

5. まとめ: 今日からできる、最初の一歩

今日からの一歩を示すイメージ

ここまで読んだあなたは、KMSの輪郭をしっかり押さえられたはずです。要点を3つに整理します。

 

  1. KMS = 暗号化の鍵を安全に作って・保管して・使わせるマネージドサービス
  2. 主に保管時(at rest)の暗号化で活躍し、転送時はTLSが担う
  3. 鍵の保管はAWS、使う許可の設定は利用者、という役割分担になっている

 

KMSは、AWS SAAのセキュアアーキテクチャ設計領域でよく問われるテーマの一つです。データ暗号化の要件が出たら鍵管理の発想を思い出せると、関連するセキュリティ用語も整理しやすくなります。

 

あなたが今日からできる、最初の一歩を3つ用意しました。

 

  1. 用語整理: 「保管時の暗号化」「転送時の暗号化」「鍵の管理」を1行メモにまとめる(3分)
  2. 関連記事: 暗号化の基礎に進み、KMSの前提を押さえる(5分)
  3. 力試し: セキュア設計の問題を1問解いて、理解度を確認する(2分)

 

たった10分で、KMSは輪郭のある概念に変わります。完璧に覚えてから動くより、まず関連記事を1本読んでみる。それが、あなたにとっていちばん速い学び方です。

 

次のステップ

KMSがどの領域で問われるかを含めた試験の全体像は、AWS SAAの試験範囲と勉強法をまとめたガイドで俯瞰できます。セキュア設計での位置づけが見えてきます。

 

理解度を確かめたいなら、AWS SAA セキュア設計の問題集で、KMSを含むセキュア設計の問題に挑戦してみるのが近道です。