[アップデート]AWS外部のキーストアでAWS KMSの暗号化キーが管理出来るようになりました! #reinvent
こんにちは、AWS事業本部@福岡オフィスのべこみん(@beco_minn)です。
AWS Key Management Service(KMS)にアップデートが来ました。
今回のアップデートにより、ユーザーがAWSの外部で管理/運用するキーストアをAWS KMSでカスタムキーストアとして選択出来るようになりました。
※記事執筆時点(2022/11/30)でマネジメントコンソール上に変化は無いため、特に検証してみた系の内容はありません。
ざっくりまとめ
- AWS KMSでExternal Key Store(XKS)が利用可能になった
- つまり、AWSの外部で暗号化キーを管理出来るようになった
- ANS KMS内でのXKSの扱いはカスタムキーストア
- KMSとは、AWSの外部でユーザーが管理/運用するキーマネージャーによってサポートされるカスタムキーストアのこと
- ユーザーがキーストアを管理/運用することになるため、コストやリスクは増加する
- 暗号化キーに関する責任のバランスはユーザー寄りになる
アップデート内容
AWS KMSでExternal Key Store(XKS)が使えるようになりました!
つまり、AWSの外部でKMSキー(暗号化キー)を管理出来るようになった、ということです。
もちろん外部のキーストアはユーザーが管理/運用することになるため、リスクやコストはAWSマネージドなキーストアに比べて増大します。
XKSのAWS KMS内での扱いは「カスタムキーストア」です。これまではAWS CloudHSMを利用するパターンしかありませんでしたが、これからはカスタムキーストアとしてXKSという選択肢も生まれたということですね。
外部キーストア内のKMSキーを使用した暗号化/復号操作は暗号化キーマテリアルを使用して外部のキーマネージャーによって実行されるのですが、この機能のことを Hold Your Own Key(HYOK)
と呼ぶらしいです。
この暗号化/複合操作の際にAWSが外部のキーマネージャーと直接接続することはなく、AWS KMSは以下のいずれかの接続方法で外部のキーストアプロキシと接続します。詳しくは下記公式ドキュメントをご参照ください。
- パブリックエンドポイント接続
- VPCエンドポイントサービス接続
記事執筆時点で、XKSは下記リージョンを除くAWS KMSをサポートしている全てのリージョンで利用可能とのことです。
- アジアパシフィック(ハイデラバード)
- 中国(北京)
- 中国(寧夏)
- 欧州(スペイン)
- 欧州(チューリッヒ)
- 中東(アラブ首長国連邦)
- AWS GovCloud(米国-東)
- AWS GovCloud(米国-西)
この機能の公式ドキュメントは下記です。記事執筆時点では英語版のみです。
また、AWS公式からは以下のようなブログも出ています。こちらも併せてご参照いただくことで、XKSへの理解がより一層深まると思います。
何が嬉しいのか?
AWS KMSがデフォルトで使用するAWSマネージドなキーストアは FIPS 140-2 で検証された暗号モジュール で保護されているため、ほとんどのユーザーにとってセキュリティ面では要件を満たしていて、もちろんマネージドなので運用/管理が楽です。
また、外部でキーストアを運用/管理することになるので上述の通り、リスクやコストが増大します。
しかし、下記公式ドキュメントでは、組織や案件で以下のような要望/要件がある場合には外部キーストアは望まれるだろう、とされています。
- オンプレミスのキーマネージャー、またはAWSの外部で管理するキーマネージャーで暗号化キーを使用することが必要である。
- 暗号化キーがAWS外の自分の管理下にのみ保持されていることを証明する必要がある。
- 独立した権限を持つ暗号化キーを使用して暗号化および復号する必要がある。
- キーマテリアルは二次的な独立した監査経路に従わなければならない。
引用元: External key stores - AWS Key Management Service
まとめ
組織や案件の要望/要件次第では暗号化キーを外部で所持する必要がある(あった)はずです。
そのような場合、今回のXKSが利用出来ますね。ただし、それ以外の場合では今まで通りAWSマネージドなキーストアを使う方がコスト的にも運用管理的にも良いでしょう。
本記事がどなたかのお役に立てれば幸いです。
以上、べこみんでした。