サーバー側で暗号化された Simple Storage Service (Amazon S3) バケットの使用 - FSx for Lustre

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

サーバー側で暗号化された Simple Storage Service (Amazon S3) バケットの使用

FSx for Lustre は、Amazon S3 AWS Key Management Service S3 バケットをサポートします。 S3-managed AWS KMS keys

S3 バケットに書き込むときに Amazon FSx でデータを暗号化するには、S3 バケットのデフォルトの暗号化を SSE-S3 または SSE-KMS に設定する必要があります。詳細については、「Amazon S3 ユーザーガイド」の「デフォルトの暗号化の設定」を参照してください。S3 バケットにファイルを書き込む場合、Amazon FSx は S3 バケットのデフォルトの暗号化ポリシーに従います。

デフォルトでは、Amazon FSx は SSE-S3 を使用して暗号化された S3 バケットをサポートします。SSE-KMS 暗号化を使用して暗号化された S3 バケットに Amazon FSx ファイルシステムをリンクする場合は、Amazon FSx が KMS キーを使用して S3 バケット内のオブジェクトを暗号化および復号化できるようにするステートメントをカスタマー管理キーポリシーに追加する必要があります。

次のステートメントは、特定の Amazon FSx ファイルシステムで、特定の S3 バケットのオブジェクトを暗号化および復号化することを許可します。bucket_name

{ "Sid": "Allow access through S3 for the FSx SLR to use the KMS key on the objects in the given S3 bucket", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::aws_account_id:role/aws-service-role/s3.data-source.lustre.fsx.amazonaws.com/AWSServiceRoleForFSxS3Access_fsx_file_system_id" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:CallerAccount": "aws_account_id", "kms:ViaService": "s3.bucket-region.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::bucket_name/*" } } }
注記

CMK で KMS を使用して S3 バケットキーを有効にして S3 バケットを暗号化する場合は、次の例で示すとおり、EncryptionContext をオブジェクト ARN ではなくバケット ARN に設定します。

"StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::bucket_name" }

次のポリシーステートメントでは、アカウント内のすべての Amazon FSx ファイルシステムが特定の S3 バケットにリンクすることを許可します。

{ "Sid": "Allow access through S3 for the FSx SLR to use the KMS key on the objects in the given S3 bucket", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:CallerAccount": "aws_account_id", "kms:ViaService": "s3.bucket-region.amazonaws.com" }, "StringLike": { "aws:userid": "*:FSx", "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::bucket_name/*" } } }

別の AWS アカウント または共有 VPC からのサーバー側の暗号化された Amazon S3 バケットへのアクセス

FSx for Lustre ファイルシステムを暗号化した Simple Storage Service (Amazon S3) バケットを作成したら、AWSServiceRoleForFSxS3Access_fs-01234567890 リンクされた S3 バケットからデータを読み書きする前に S3 バケットを暗号化するために使用される KMS キーへのサービスリンクロール (SLR) アクセス。KMS キーに対するアクセス許可が既にある IAM ロールを使用できます。

注記

この IAM ロールは、KMS キー / S3 バケットが属するアカウントではなく、FSx for Lustre ファイルシステムが作成されたアカウント (S3 SLR と同じアカウント) に存在する必要があります。

IAM ロールを使用して次の AWS KMS API を呼び出し、S3 SLR が S3 オブジェクトへのアクセス許可を取得できるように S3 SLR の許可を作成します。SLR に関連付けられている ARN を見つけるには、ファイルシステム ID を検索文字列として使用して IAM ロールを検索します。

$ aws kms create-grant --region fs_account_region \ --key-id arn:aws:kms:s3_bucket_account_region:s3_bucket_account:key/key_id \ --grantee-principal arn:aws:iam::fs_account_id:role/aws-service-role/s3.data-source.lustre.fsx.amazonaws.com/AWSServiceRoleForFSxS3Access_file-system-id \ --operations "Decrypt" "Encrypt" "GenerateDataKey" "GenerateDataKeyWithoutPlaintext" "CreateGrant" "DescribeKey" "ReEncryptFrom" "ReEncryptTo"

サービスにリンクされたロールの詳細については、「Amazon FSx のサービスリンクロールの使用」を参照してください。