

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

# ログの暗号化
<a name="jobs-log-encryption"></a>

## マネージドストレージによる EMR Serverless ログの暗号化
<a name="jobs-log-encryption-managed-storage"></a>

独自の KMS キーを使用してマネージドストレージのログを暗号化するには、ジョブ実行を送信するときに `managedPersistenceMonitoringConfiguration` 設定を使用します。

```
{
    "monitoringConfiguration": {
        "managedPersistenceMonitoringConfiguration" : {
            "encryptionKeyArn": "key-arn"
        }
    }
}
```

## Amazon S3 バケットを使用した EMR Serverless ログの暗号化
<a name="jobs-log-encryption-s3-buckets"></a>

独自の KMS キーを使用して Amazon S3 バケットのログを暗号化するには、ジョブ実行を送信するときに `s3MonitoringConfiguration` 設定を使用します。

```
{
    "monitoringConfiguration": {
        "s3MonitoringConfiguration": {
            "logUri": "s3://amzn-s3-demo-logging-bucket/logs/",
            "encryptionKeyArn": "key-arn"
        }
    }
}
```

## Amazon CloudWatch による EMR Serverless ログの暗号化
<a name="jobs-log-encryption-cw"></a>

独自の KMS キーを使用して Amazon CloudWatch のログを暗号化するには、ジョブ実行を送信するときに `cloudWatchLoggingConfiguration` 設定を使用します。

```
{
    "monitoringConfiguration": {
        "cloudWatchLoggingConfiguration": {
            "enabled": true,
            "encryptionKeyArn": "key-arn"
         }
     }
}
```

## ログ暗号化に必要なアクセス許可
<a name="jobs-log-encryption-permissions"></a>

**Topics**
+ [

### 必要なユーザーアクセス許可
](#jobs-log-encryption-permissions-user)
+ [

### Amazon S3 とマネージドストレージの暗号化キーのアクセス許可
](#jobs-log-encryption-permissions-s3)
+ [

### Amazon CloudWatch の暗号化キーアクセス許可
](#jobs-log-encryption-permissions-cw)

### 必要なユーザーアクセス許可
<a name="jobs-log-encryption-permissions-user"></a>

ジョブを送信する、またはログやアプリケーション UI を表示するユーザーは、キーを使用するためのアクセス許可を付与されている必要があります。ユーザー、グループ、またはロールの KMS キーポリシーまたは IAM ポリシーでアクセス許可を指定できます。ジョブを送信するユーザーに KMS キーのアクセス許可が付与されていない場合、EMR Serverless はジョブ実行の送信を拒否します。

**キーポリシーの例**

次のキーポリシーによって、`kms:GenerateDataKey` と `kms:Decrypt` にアクセス許可が付与されます。

```
{
    "Effect": "Allow",
    "Principal":{
       "AWS": "arn:aws:iam::111122223333:user/user-name"
     },
     "Action": [
       "kms:GenerateDataKey",       
       "kms:Decrypt"
      ],
     "Resource": "*"
 }
```

**IAM ポリシーの例**

次の IAM ポリシーによって、`kms:GenerateDataKey` と `kms:Decrypt` にアクセス許可が付与されます。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "kms:GenerateDataKey",
        "kms:Decrypt"
      ],
      "Resource": [
        "arn:aws:kms:*:123456789012:key/12345678-1234-1234-1234-123456789012"
      ],
      "Sid": "AllowKMSGeneratedatakey"
    }
  ]
}
```

------

Spark UI または Tez UI を起動するには、次のように `emr-serverless:GetDashboardForJobRun` API にアクセスするためのアクセス許可をユーザー、グループ、またはロールに付与します。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "emr-serverless:GetDashboardForJobRun"
      ],
      "Resource": [
        "*"
      ],
      "Sid": "AllowEMRSERVERLESSGetdashboardforjobrun"
    }
  ]
}
```

------

### Amazon S3 とマネージドストレージの暗号化キーのアクセス許可
<a name="jobs-log-encryption-permissions-s3"></a>

マネージドストレージまたは S3 バケットで独自の暗号化キーを使用してログを暗号化する場合は、次のように KMS キーのアクセス許可を設定します。

`emr-serverless.amazonaws.com` プリンシパルには、KMS キーのポリシーで次のアクセス許可が設定されている必要があります。

```
{
    "Effect": "Allow",
    "Principal":{
       "Service": "emr-serverless.amazonaws.com" 
     },
     "Action": [
       "kms:Decrypt",
       "kms:GenerateDataKey"
      ],
     "Resource": "*"
     "Condition": {
       "StringLike": {
         "aws:SourceArn": "arn:aws:emr-serverless:region:aws-account-id:/applications/application-id"
       }
     }
 }
```

セキュリティのベストプラクティスとして、KMS キーポリシーに `aws:SourceArn` 条件キーを追加することを提案します。IAM グローバル条件キー `aws:SourceArn` によって、EMR Serverless がアプリケーション ARN にのみ KMS キーを使用するように設定できます。

ジョブのランタイムロールには、IAM ポリシーで次のアクセス許可が付与されている必要があります。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "kms:GenerateDataKey",
        "kms:Decrypt"
      ],
      "Resource": [
        "arn:aws:kms:*:123456789012:key/12345678-1234-1234-1234-123456789012"
      ],
      "Sid": "AllowKMSGeneratedatakey"
    }
  ]
}
```

------

### Amazon CloudWatch の暗号化キーアクセス許可
<a name="jobs-log-encryption-permissions-cw"></a>

KMS キー ARN をロググループに関連付けるには、ジョブランタイムロールに次の IAM ポリシーを使用します。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "logs:AssociateKmsKey"
      ],
      "Resource": [
        "arn:aws:logs:*:123456789012:log-group:my-log-group-name:*"
      ],
      "Sid": "AllowLOGSAssociatekmskey"
    }
  ]
}
```

------

Amazon CloudWatch に KMS アクセス許可を付与するように KMS キーポリシーを設定します。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Id": "key-default-1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "kms:Decrypt",
        "kms:GenerateDataKey"
      ],
      "Resource": [
        "*"
      ],
      "Condition": {
        "ArnLike": {
          "kms:EncryptionContext:aws:logs:arn": "arn:aws:logs:*:123456789012:*"
        }
      },
      "Sid": "AllowKMSDecrypt"
    }
  ]
}
```

------