[新サービス] AWS Key Management Serviceを触ってみた #reinvent
ども、大瀧です。
開催中のAWSプライベートイベント、re:Inventで続々と新サービスが発表になっています(他のブログエントリーでチェックしましょう)!今回は、AWS Key Management Service(KMS)という新サービスに触ってみたのでレポートします。
KMS(Key Management Service)とは
KMSは、暗号鍵の管理を提供する高いセキュリティ性、可用性を持つサービスです。鍵自体の作成・管理はもちろん、AWSの以下のサービスの暗号化機能と連携し、簡単に設定できるようになっています。
鍵の作成と構成
KMSは、IAMのサブ機能としてIAMの管理画面からアクセスします。IAMの管理画面のメニューにある[Encryption Keys]でKMSの画面を表示します。初期状態ではWelcome画面になっているので、[Get Started Now]をクリックすると鍵のリスト画面に切り替わります。
[Create Key]をクリックし、鍵を作成します。
キー名と説明を入力し、[Next Step]をクリックします。
鍵の管理者ユーザーと利用するユーザーをそれぞれ選択します。今回は同一アカウントのユーザーを選んでいますが、異なるAWSアカウントも指定できるようです。
ここまでの構成を示す、IAMポリシーが表示されます。確認し、[Finish]をクリックすれば鍵が作成されます。
できました!
鍵の利用
それでは、作成した鍵を使ってみましょう。今回はS3のSSE(Server Side Encryption)機能の鍵に利用してみます。S3の管理画面を表示し、ファイルアップロード画面で詳細設定([Set Details])を表示します。[Use Server Side Encryption]のチェックをオンにし、[Use an AWS Key Management Service master key]で作成した鍵を指定し、アップロードします。
ファイルのプロパティを見ると、確かに今回の鍵で暗号化されていることが確認できました。
まとめ
KMSの鍵の作成方法とS3 SSEでの扱い方をご紹介しました。これ以外にも、EBS、Redshiftでも利用することができます。また、AWS CLIでもaws kms encryptコマンドおよびaws kms decryptコマンドでの暗号・復号もできそうなのですが、試した範囲ではエラーになってしまい、試すことができませんでした。AWS CLIでうまく使えれば、汎用的なデータ保護の手段としてよ用途が広がりそうですよね。