Amazon EMR ではバージョン 4.8.0 以降、S3 に格納するデータの暗号化に対応しました。
S3 のサーバーサイド暗号化については Amazon S3 がキーを管理する SSE-S3 またはユーザーがキーを作成、管理する SSE-KMS に対応しています。
Amazon の暗号化オプション EMR - Amazon EMR
Amazon EMRリリース 4.8.0 以降では、セキュリティ設定を使用して、保管中のデータ、転送中のデータ、またはその両方を暗号化する設定を指定できます。保管時のデータ暗号化を有効にすると、Amazon S3 EMRFSのデータ、ローカルディスクのデータ、またはその両方を暗号化できます。作成する各セキュリティ設定は...
EMR で S3 暗号化に対応するには「セキュリティ設定」を作成して EMR クラスター作成時に設定する必要があります。
セキュリティ設定を使用して Amazon EMRクラスターのセキュリティを設定する - Amazon EMR
Amazon EMR セキュリティ設定を作成して、クラスターEMRFS上の のデータ暗号化、Kerberos 認証、および Amazon S3 認証を設定します。
今回は「セキュリティ設定」を CloudFormation で作成します。
Amazon EMR セキュリティ設定を作成する CloudFormation テンプレート
SSE-S3 を使う Amazon EMR セキュリティ設定を作成する CloudFormation テンプレート
- EncryptionMode に SSE-S3 を指定します。
AWSTemplateFormatVersion: '2010-09-09'
Resources:
EMRSecurityConfiguration:
Type: AWS::EMR::SecurityConfiguration
Properties:
Name: emr-security-configuration-sse-s3
SecurityConfiguration: '{
"EncryptionConfiguration": {
"EnableInTransitEncryption": false,
"EnableAtRestEncryption": true,
"AtRestEncryptionConfiguration": {
"S3EncryptionConfiguration": {
"EncryptionMode": "SSE-S3"
}
}
}
}'
SSE-KMS を使う Amazon EMR セキュリティ設定を作成する CloudFormation テンプレート
- EncryptionMode に SSE-KMS を指定します。
- AwsKmsKey に KMS キーの ARN を指定します。
AWSTemplateFormatVersion: '2010-09-09'
Resources:
EMRSecurityConfiguration:
Type: AWS::EMR::SecurityConfiguration
Properties:
Name: emr-security-configuration-sse-kms
SecurityConfiguration: '{
"EncryptionConfiguration": {
"EnableInTransitEncryption": false,
"EnableAtRestEncryption": true,
"AtRestEncryptionConfiguration": {
"S3EncryptionConfiguration": {
"EncryptionMode": "SSE-KMS",
"AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"
}
}
}
}'