サーバ側の暗号化の使用

サーバ側の暗号化を使用して、保存中のオブジェクト データを保護することができます。StorageGRIDは、オブジェクトを書き込む際にデータを暗号化し、ユーザがオブジェクトにアクセスする際にデータを復号化します。

サーバ側の暗号化を使用する場合は、暗号化キーの管理方法に応じて2つのオプションのいずれかを選択できます(2つのオプションを同時に指定することはできません)。

SSEの使用

StorageGRIDで管理される一意のキーでオブジェクトを暗号化する場合は、次の要求ヘッダーを使用します。

x-amz-server-side-encryption

SSE要求ヘッダーは、次のオブジェクト処理でサポートされます。
  • PUT Object
  • PUT Object - Copy
  • Initiate Multipart Upload

SSE-Cの使用

ユーザが管理する一意のキーでオブジェクトを暗号化する場合は、次の3つの要求ヘッダーを使用します。
要求ヘッダー 説明
x-amz-server-side-encryption-customer-algorithm 暗号化アルゴリズムを指定します。ヘッダー値はAES256でなければなりません。
x-amz-server-side-encryption-customer-key オブジェクトの暗号化と復号化に使用される暗号化キーを指定します。キーの値は、Base64でエンコードされた256ビットであることが必要です。
x-amz-server-side-encryption-customer-key-MD5 RFC 1321に従って暗号化キーのMD5ダイジェストを指定します。これは、暗号化キーが問題なく送信されたことを確認するために使用されます。MD5ダイジェストの値は、Base64でエンコードされた128ビットであることが必要です。
SSE-C要求ヘッダーは、次のオブジェクト処理でサポートされます。
  • GET Object
  • HEAD Object
  • PUT Object
  • PUT Object - Copy
  • Initiate Multipart Upload
  • Upload Part
  • Upload Part - Copy

ユーザ指定のキーによるサーバ側の暗号化(SSE-C)を使用する場合の考慮事項

SSE-Cを使用する場合は、次の考慮事項に注意してください。
  • httpsを使用する必要があります。
    注意:SSE-Cを使用すると、http経由の要求がStorageGRIDですべて拒否されます。誤ってhttpを使用して送信したキーは漏洩する危険性があります。この場合は、キーを破棄し、必要に応じてローテーションします。
  • 応答内のETagは、オブジェクト データのMD5ではありません。
  • 暗号化キーとオブジェクトの対応関係を管理する必要があります。StorageGRIDは暗号化キーを保管しません。各オブジェクトに対して指定した暗号化キーを管理する責任はユーザにあります。
  • バケットのバージョン管理が有効になっている場合は、オブジェクトのバージョンごとに固有の暗号化キーが必要です。各オブジェクト バージョンで使用される暗号化キーを管理する責任はユーザにあります。
  • 暗号化キーはクライアント側で管理するため、キー ローテーションなどの追加の防護策もクライアント側で管理する必要があります。
    注意:指定した暗号化キーがどこかに格納されることはありません。暗号化キーを紛失すると、対応するオブジェクトが失われます。
  • バケットにCloudMirrorレプリケーションが設定されている場合は、SSE-Cオブジェクトを取り込むことができません。取り込み処理は失敗します。