S3の暗号化。暗号/復号を実行するのはサーバーサイド?クライアントサイド?

クライアントサイド

・顧客が管理する複数リージョンのKMSキーを作成します。各リージョンにS3バケットを作成します。S3バケット間のレプリケーションを構成します。クライアント側の暗号化でKMSキーを使用するようにアプリケーションを構成します

この選択肢が正解の理由は以下の通りです。

まず、同一のデータを異なる2つのリージョンに保存するという要件から、AWS KMSのカスタマーマネージドキーをそれぞれのリージョンで作成することが必要です。理由は、KMSキーはその作成されたリージョン内でしか使用することができないからです。

また、この問題の条件では、同じKMSキーでデータが暗号化および復号化されなければならないため、クライアント側での暗号化が最適です。これは、クライアント側で暗号化を行ったデータは、どのリージョンでも同じキーを使って復号化する事が可能だからです。

さらに、2つのS3バケットのデータを同期するためには、S3バケット間のレプリケーションを構成すると、自動的で効率的な方法となります。これにより、あるリージョンでデータが変更されても、その変更が自動的に他のリージョンにも反映され、運用上のオーバーヘッドを少なくすることが可能です。

選択肢:各リージョンにS3バケットを作成します。Amazon S3マネージド暗号化キー(SSE-S3)を使用してサーバーサイド暗号化を使用するようにS3バケットを構成します。S3バケット間のレプリケーションを構成します

この選択肢が正しくない理由は以下の通りです。

要求では、AWS Key Management Service(AWS KMS)の顧客が管理するキーを使用して、すべてのデータを暗号化する必要があります。それに対してこの選択肢では、Amazon S3が管理する暗号化キー(SSE-S3)を使用しています。そのため、この選択肢は要求の条件を満たしていません。

コメント

タイトルとURLをコピーしました