

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Mengenkripsi log
<a name="jobs-log-encryption"></a>

## Mengenkripsi log EMR Serverless dengan penyimpanan terkelola
<a name="jobs-log-encryption-managed-storage"></a>

Untuk mengenkripsi log di penyimpanan terkelola dengan kunci KMS Anda sendiri, gunakan `managedPersistenceMonitoringConfiguration` konfigurasi saat Anda mengirimkan pekerjaan yang dijalankan.

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

## Mengenkripsi log Tanpa Server EMR dengan bucket Amazon S3
<a name="jobs-log-encryption-s3-buckets"></a>

Untuk mengenkripsi log di bucket Amazon S3 Anda dengan kunci KMS Anda sendiri, gunakan `s3MonitoringConfiguration` konfigurasi saat Anda mengirimkan pekerjaan yang dijalankan.

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

## Mengenkripsi log EMR Serverless dengan Amazon CloudWatch
<a name="jobs-log-encryption-cw"></a>

Untuk mengenkripsi log di Amazon CloudWatch dengan kunci KMS Anda sendiri, gunakan `cloudWatchLoggingConfiguration` konfigurasi saat Anda mengirimkan pekerjaan yang dijalankan.

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

## Izin yang diperlukan untuk enkripsi log
<a name="jobs-log-encryption-permissions"></a>

**Topics**
+ [Izin pengguna yang diperlukan](#jobs-log-encryption-permissions-user)
+ [Izin kunci enkripsi untuk Amazon S3 dan penyimpanan terkelola](#jobs-log-encryption-permissions-s3)
+ [Izin kunci enkripsi untuk Amazon CloudWatch](#jobs-log-encryption-permissions-cw)

### Izin pengguna yang diperlukan
<a name="jobs-log-encryption-permissions-user"></a>

Pengguna yang mengirimkan pekerjaan atau melihat log atau UI aplikasi harus memiliki izin untuk menggunakan kunci. Anda dapat menentukan izin di kebijakan kunci KMS atau kebijakan IAM untuk pengguna, grup, atau peran. Jika pengguna yang mengirimkan pekerjaan tidak memiliki izin kunci KMS, EMR Serverless menolak pengiriman job run.

**Contoh kebijakan kunci **

Kebijakan utama berikut memberikan izin untuk `kms:GenerateDataKey` dan`kms:Decrypt`:

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

**Contoh kebijakan IAM**

Kebijakan IAM berikut memberikan izin untuk `kms:GenerateDataKey` dan: `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"
    }
  ]
}
```

------

Untuk meluncurkan Spark atau Tez UI, berikan izin pengguna, grup, atau peran Anda untuk mengakses `emr-serverless:GetDashboardForJobRun` API sebagai berikut:

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

****  

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

------

### Izin kunci enkripsi untuk Amazon S3 dan penyimpanan terkelola
<a name="jobs-log-encryption-permissions-s3"></a>

Saat Anda mengenkripsi log dengan kunci enkripsi Anda sendiri baik di penyimpanan terkelola atau di bucket S3 Anda, konfigurasikan izin kunci KMS sebagai berikut.

`emr-serverless.amazonaws.com`Kepala sekolah harus memiliki izin berikut dalam kebijakan untuk kunci 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}}"
       }
     }
 }
```

Sebagai praktik terbaik keamanan, sebaiknya tambahkan kunci `aws:SourceArn` kondisi ke kebijakan kunci KMS. Kunci kondisi global IAM `aws:SourceArn` membantu memastikan bahwa EMR Serverless menggunakan kunci KMS hanya untuk ARN aplikasi. 

Peran runtime pekerjaan harus memiliki izin berikut dalam kebijakan 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"
    }
  ]
}
```

------

### Izin kunci enkripsi untuk Amazon CloudWatch
<a name="jobs-log-encryption-permissions-cw"></a>

Untuk mengaitkan kunci KMS ARN ke grup log Anda, gunakan kebijakan IAM berikut untuk peran runtime pekerjaan.

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

****  

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

------

Konfigurasikan kebijakan kunci KMS untuk memberikan izin KMS ke Amazon: CloudWatch

------
#### [ 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"
    }
  ]
}
```

------