翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
EMR WAL サービスのカスタマー KMS キーを使用した保管時の暗号化
EMR 先行書き込みログ (WAL) は、顧客の KMS キーencryption-at-restをサポートします。Amazon EMR WAL との統合方法の概要は次のとおりです AWS KMS。
EMR 先行書き込みログ (WAL) はCreateWAL
、デフォルトで TrimWAL
を介して ReplayEdits
、、、、AppendEdit
ArchiveWALCheckPoint
CompleteWALFlush
DeleteWAL
GetCurrentWALTime
、、 オペレーション AWS 中に とやり取りします。リストされた以前のオペレーションが呼び出されると、EMR WAL は EMR_EC2_DefaultRole
KMS キーGenerateDataKey
に対して Decrypt
および を実行します。
考慮事項
EMR WAL に AWS KMS ベースの暗号化を使用する場合は、次の点を考慮してください。
-
EMR WAL の作成後に暗号化設定を変更することはできません。
-
独自の KMS キーで KMS 暗号化を使用する場合、キーは Amazon EMR クラスターと同じリージョンに存在する必要があります。
-
ユーザーは必要なすべての IAM アクセス許可を維持する責任があり、WAL の有効期間中は必要なアクセス許可を取り消しないことをお勧めします。そうしないと、関連する暗号化キーが存在しないため、EMR WAL を削除できないなどの予期しない障害シナリオが発生します。
-
AWS KMS キーの使用にはコストがかかります。詳細については、AWS Key Management Service 料金表
を参照してください。
必要な IAM 許可
カスタマー KMS キーを使用して保管中の EMR WAL を暗号化するには、EMR WAL クライアントロール と EMR WAL サービスプリンシパル に適切なアクセス許可を設定する必要がありますemrwal.amazonaws.com
。
EMR WAL クライアントロールのアクセス許可
以下は、EMR WAL クライアントロールに必要な IAM ポリシーです。
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey*", ], "Resource": "*" } }
EMR クラスターの EMR WAL クライアントはEMR_EC2_DefaultRole
、デフォルトで を使用します。EMR クラスターのインスタンスプロファイルに別のロールを使用する場合は、各ロールに適切なアクセス許可があることを確認してください。
ロールポリシーの管理の詳細については、「IAM ID アクセス許可の追加と削除」を参照してください。
KMS キーポリシーのアクセス許可
KMS ポリシーで EMR WAL クライアントロールDecrypt
と EMR WAL サービスとGenerateDataKey*
アクセス許可を付与する必要があります。キーポリシー管理の詳細については、KMS キーポリシーを参照してください。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::
accountID
:role/EMR_EC2_DefaultRole
" ], "Service": [ "emrwal.amazonaws.com" ] }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey*" ], "Resource": [ "*" ] } ] }
デフォルトのロールを変更すると、スニペットで指定されたロールが変更される可能性があります。
との Amazon EMR WAL インタラクションのモニタリング AWS KMS
Amazon EMR WAL 暗号化コンテキスト
暗号化コンテキストは、任意の非シークレットデータを含むキーと値のペアのセットです。データを暗号化するリクエストに暗号化コンテキストを含めると、 は暗号化コンテキストを暗号化されたデータに AWS KMS 暗号化バインドします。データを復号するには、同じ暗号化コンテキストに渡す必要があります。
GenerateDataKey および Decrypt リクエストでは AWS KMS、Amazon EMR WAL は、EMR WAL 名を識別する 1 つの名前と値のペアを持つ暗号化コンテキストを使用します。
"encryptionContext": { "aws:emrwal:walname": "111222333444555-testworkspace-emrwalclustertest-emrwaltestwalname" }
暗号化コンテキストを使用して、 AWS CloudTrail や Amazon CloudWatch Logs などの監査レコードとログでこれらの暗号化オペレーションを識別し、ポリシーと許可で認可の条件として識別できます。