

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Créez une configuration de sécurité à l'aide de la console Amazon EMR ou du AWS CLI
<a name="emr-create-security-configuration"></a>

Cette rubrique décrit les procédures générales permettant de créer une configuration de sécurité avec la console Amazon EMR et le AWS CLI, suivie d'une référence pour les paramètres relatifs au chiffrement, à l'authentification et aux rôles IAM pour EMRFS. Pour plus d'informations sur ces fonctions, consultez les rubriques suivantes :
+ [Chiffrez les données au repos et en transit avec Amazon EMR](emr-data-encryption.md)
+ [Utilisation de Kerberos pour l'authentification avec Amazon EMR](emr-kerberos.md)
+ [Configuration de rôles IAM pour les demandes EMRFS à Amazon S3](emr-emrfs-iam-roles.md)

**Pour créer une configuration de sécurité à l'aide de la console**

1. [Ouvrez la console Amazon EMR à l'adresse /emr. https://console.aws.amazon.com](https://console.aws.amazon.com/emr/)

1. Dans le volet de navigation, choisissez **Security Configurations (Configurations de sécurité)**, puis **Create security configuration (Créer une configuration de sécurité)**. 

1. Dans **Name (Nom)**, saisissez un nom pour la configuration de sécurité.

1. Choisissez les options pour **Chiffrement** et **Authentification** comme décrit dans les sections ci-dessous, puis cliquez sur **Créer**.

**Pour créer une configuration de sécurité à l'aide du AWS CLI**
+ Utilisez la commande `create-security-configuration`, comme illustré dans l’exemple suivant.
  + Pour*SecConfigName*, spécifiez le nom de la configuration de sécurité. Il s'agit du nom que vous spécifiez lors de la création d'un cluster qui utilise cette configuration de sécurité.
  + Pour `SecConfigDef`, spécifiez une structure JSON en ligne ou le chemin d'accès à un fichier JSON local, comme `file://MySecConfig.json`. Les paramètres JSON définissent les options pour le **Chiffrement**, les **Rôles IAM pour l'accès EMRFS à Amazon S3** et l'**Authentification**, comme décrit dans les sections suivantes.

  ```
  aws emr create-security-configuration --name "SecConfigName" --security-configuration SecConfigDef
  ```

## Configuration du chiffrement des données
<a name="emr-security-configuration-encryption"></a>

Avant de configurer le chiffrement dans une configuration de sécurité, créez les clés et certificats utilisés pour le chiffrement. Pour plus d’informations, consultez [Fourniture de clés pour chiffrer les données au repos](emr-encryption-enable.md#emr-encryption-create-keys) et [Fournir des certificats de chiffrement des données en transit avec le chiffrement Amazon EMR](emr-encryption-enable.md#emr-encryption-certificates).

Lorsque vous créez une configuration de sécurité, vous spécifiez deux jeux d'options de chiffrement : le chiffrement des données au repos et le chiffrement des données en transit. Les options pour un chiffrement des données au repos incluent à la fois Amazon S3 avec EMRFS et le chiffrement de disque local. Les options de chiffrement en transit activent les fonctions de chiffrement open source pour certaines applications qui prennent en charge le protocole TLS (Transport Layer Security). Les options de chiffrement des données au repos et en transit peuvent être activées ensemble ou séparément. Pour de plus amples informations, veuillez consulter [Chiffrez les données au repos et en transit avec Amazon EMR](emr-data-encryption.md).

**Note**  
Lorsque vous les utilisez AWS KMS, des frais s'appliquent pour le stockage et l'utilisation des clés de chiffrement. Pour plus d’informations, consultez [Tarification d’AWS KMS](https://aws.amazon.com/kms/pricing/).

### Spécification d'options de chiffrement à l'aide de la console
<a name="emr-security-configuration-encryption-console"></a>

Choisissez les options sous **Encryption (Chiffrement)** en fonction des indications suivantes.
+ Choisissez les options sous **At rest encryption (Chiffrement au repos)** pour chiffrer les données stockées dans le système de fichiers. 

  Vous pouvez choisir de chiffrer les données dans Amazon S3, les disques locaux ou les deux. 
+ Sous **Chiffrement des données S3**, pour **Mode de chiffrement**, choisissez une valeur qui détermine comment Amazon EMR chiffre les données Amazon S3 avec EMRFS. 

  L'étape suivante varie selon le mode de chiffrement que vous avez choisi :
  + **SSE-S3**

    Spécifie le [chiffrement côté serveur avec des clés de chiffrement gérées par Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingServerSideEncryption.html). Aucune autre action n'est requise de votre part, car Amazon S3 gère les clés pour vous.
  + **SSE-KMS** ou **CSE-KMS**

    Spécifie le [chiffrement côté serveur avec des clés AWS KMS gérées (SSE-KMS) ou le [chiffrement côté client](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingClientSideEncryption.html) avec des clés gérées (CSE-KMS)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html). AWS KMS Pour **AWS KMS key**, sélectionnez une clé. Cette clé doit être dans la même région que votre cluster EMR. Pour voir les exigences relatives aux clés, consultez [Utilisation à AWS KMS keys des fins de chiffrement](emr-encryption-enable.md#emr-awskms-keys).
  + **CSE-Custom**

    Spécifie le [chiffrement côté client via une clé racine personnalisée côté client (CSE-custom)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingClientSideEncryption.html#client-side-encryption-client-side-master-key-intro). Pour **Objet S3**, saisissez l'emplacement dans Amazon S3 ou l'ARN Amazon S3 du fichier JAR de votre fournisseur de clés personnalisé. Ensuite, pour la **classe du fournisseur de clés**, entrez le nom complet de la classe déclarée dans votre application qui implémente l'EncryptionMaterialsProvider interface.
+ Sous **Local disk encryption (Chiffrement de disque local)**, choisissez une valeur pour **Key provider type (Type de fournisseur de clé)**.
  + **AWS KMS key**

    Sélectionnez cette option pour spécifier une AWS KMS key. Pour **AWS KMS key**, sélectionnez une clé. Cette clé doit être dans la même région que votre cluster EMR. Pour plus d'informations sur les exigences relatives aux clés, consultez [Utilisation à AWS KMS keys des fins de chiffrement](emr-encryption-enable.md#emr-awskms-keys).

    **Chiffrement EBS**

    Lorsque vous AWS KMS le spécifiez comme fournisseur de clés, vous pouvez activer le chiffrement EBS pour chiffrer le périphérique racine EBS et les volumes de stockage. Pour activer cette option, vous devez accorder à la fonction du service Amazon EMR `EMR_DefaultRole` les autorisations nécessaires pour utiliser la AWS KMS key que vous spécifiez. Pour plus d'informations sur les exigences relatives aux clés, consultez [Activation du chiffrement EBS en fournissant des autorisations supplémentaires pour les clés KMS](emr-encryption-enable.md#emr-awskms-ebs-encryption).
  + **Personnalisé**

    Sélectionnez cette option pour spécifier un fournisseur de clés personnalisé. Pour **Objet S3**, saisissez l'emplacement dans Amazon S3 ou l'ARN Amazon S3 du fichier JAR de votre fournisseur de clés personnalisé. Pour **la classe du fournisseur de clés**, entrez le nom complet de la classe déclarée dans votre application qui implémente l' EncryptionMaterialsProvider interface. Le nom de classe que vous indiquez ici doit être différent du nom de classe fourni pour CSE-Custom.
+ Choisissez **In-transit encryption (Chiffrement en transit)** pour activer les fonctionnalités de chiffrement TLS open source pour les données en transit. Dans **Certificate provider type (Type de fournisseur de certificat)**, sélectionnez un type de fournisseur de certificat conformément aux consignes suivantes : 
  + **PEM**

    Sélectionnez cette option pour utiliser les fichiers PEM que vous fournissez au sein d'un fichier zip. Deux objets sont obligatoires dans le fichier zip : privateKey.pem et certificateChain.pem. Un troisième fichier, trustedCertificates.pem, est facultatif. Consultez [Fournir des certificats de chiffrement des données en transit avec le chiffrement Amazon EMR](emr-encryption-enable.md#emr-encryption-certificates) pour plus de détails. Pour **Objet S3**, spécifiez l'emplacement dans Amazon S3 ou l'ARN Amazon S3 du champ du fichier zip. 
  + **Personnalisé**

    Sélectionnez cette option pour spécifier un fournisseur de certificats personnalisés, puis pour **Objet S3**, saisissez l'emplacement dans Amazon S3 ou l'ARN Amazon S3 du fichier JAR de votre fournisseur de clés personnalisé. Pour la **classe du fournisseur clé**, entrez le nom complet de la classe déclarée dans votre application qui implémente l'interface du TLSArtifacts fournisseur. 

### Spécification des options de chiffrement à l'aide du AWS CLI
<a name="emr-security-configuration-encryption-cli"></a>

Les sections suivantes utilisent des exemples de scénarios pour illustrer le code JSON **--security-configuration** bien formé pour différentes configurations et différents fournisseurs de clés, suivis d'une référence pour les paramètres JSON et les valeurs à utiliser.

#### Exemple d'options de chiffrement des données en transit
<a name="emr-encryption-intransit-cli"></a>

L'exemple suivant illustre le scénario suivant :
+ Le chiffrement des données en transit est activé et le chiffrement des données au repos est désactivé.
+ Un fichier zip contenant les certificats dans Amazon S3 est utilisé en tant que fournisseur de clés (voir [Fournir des certificats de chiffrement des données en transit avec le chiffrement Amazon EMR](emr-encryption-enable.md#emr-encryption-certificates) pour les exigences relatives aux certificats).

```
aws emr create-security-configuration --name "MySecConfig" --security-configuration '{
	"EncryptionConfiguration": {
		"EnableInTransitEncryption": true,
		"EnableAtRestEncryption": false,
		"InTransitEncryptionConfiguration": {
			"TLSCertificateConfiguration": {
				"CertificateProviderType": "PEM",
				"S3Object": "s3://MyConfigStore/artifacts/MyCerts.zip"
			}
		}
	}
}'
```

L'exemple suivant illustre le scénario suivant :
+ Le chiffrement des données en transit est activé et le chiffrement des données au repos est désactivé.
+ Un fournisseur de clés personnalisé est utilisé (voir [Fournir des certificats de chiffrement des données en transit avec le chiffrement Amazon EMR](emr-encryption-enable.md#emr-encryption-certificates) pour les exigences relatives aux certificats).

```
aws emr create-security-configuration --name "MySecConfig" --security-configuration '{
	"EncryptionConfiguration": {
		"EnableInTransitEncryption": true,
		"EnableAtRestEncryption": false,
		"InTransitEncryptionConfiguration": {
			"TLSCertificateConfiguration": {
				"CertificateProviderType": "Custom",
				"S3Object": "s3://MyConfig/artifacts/MyCerts.jar",
				"CertificateProviderClass": "com.mycompany.MyCertProvider"
			}
		}
 	}
}'
```

#### Exemple d'options de chiffrement des données au repos
<a name="emr-encryption-atrest-cli"></a>

L'exemple suivant illustre le scénario suivant :
+ Le chiffrement des données en transit est désactivé et le chiffrement des données au repos est activé.
+ SSE-S3 est utilisé pour le chiffrement Amazon S3.
+ Le chiffrement du disque local est utilisé AWS KMS comme fournisseur de clés.

```
aws emr create-security-configuration --name "MySecConfig" --security-configuration '{
	"EncryptionConfiguration": {
		"EnableInTransitEncryption": false,
		"EnableAtRestEncryption": true,
		"AtRestEncryptionConfiguration": {
			"S3EncryptionConfiguration": {
				"EncryptionMode": "SSE-S3"
			},
			"LocalDiskEncryptionConfiguration": {
				"EncryptionKeyProviderType": "AwsKms",
				"AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"
			}
		}
 	}
}'
```

L'exemple suivant illustre le scénario suivant :
+ Le chiffrement des données en transit est activé et fait référence à un fichier zip contenant des certificats PEM dans Amazon S3, à l'aide de l'ARN.
+ SSE-KMS est utilisé pour le chiffrement Amazon S3.
+ Le chiffrement du disque local est utilisé AWS KMS comme fournisseur de clés.

```
aws emr create-security-configuration --name "MySecConfig" --security-configuration '{
	"EncryptionConfiguration": {
		"EnableInTransitEncryption": true,
		"EnableAtRestEncryption": true,
		"InTransitEncryptionConfiguration": {
			"TLSCertificateConfiguration": {
				"CertificateProviderType": "PEM",
				"S3Object": "arn:aws:s3:::MyConfigStore/artifacts/MyCerts.zip"
			}
		},
		"AtRestEncryptionConfiguration": {
			"S3EncryptionConfiguration": {
				"EncryptionMode": "SSE-KMS",
				"AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"
			},
			"LocalDiskEncryptionConfiguration": {
				"EncryptionKeyProviderType": "AwsKms",
				"AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"
			}
		}
	}
}'
```

L'exemple suivant illustre le scénario suivant :
+ Le chiffrement des données en transit est activé et fait référence à un fichier zip contenant des certificats PEM dans Amazon S3.
+ CSE-KMS est utilisé pour le chiffrement Amazon S3.
+ Le chiffrement de disque local utilise un fournisseur de clés personnalisé référencé par son ARN.

```
aws emr create-security-configuration --name "MySecConfig" --security-configuration '{
	"EncryptionConfiguration": {
		"EnableInTransitEncryption": true,
		"EnableAtRestEncryption": true,
		"InTransitEncryptionConfiguration": {
			"TLSCertificateConfiguration": {
				"CertificateProviderType": "PEM",
				"S3Object": "s3://MyConfigStore/artifacts/MyCerts.zip"
			}
		},
		"AtRestEncryptionConfiguration": {
			"S3EncryptionConfiguration": {
				"EncryptionMode": "CSE-KMS",
				"AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"
			},
			"LocalDiskEncryptionConfiguration": {
				"EncryptionKeyProviderType": "Custom",
				"S3Object": "arn:aws:s3:::artifacts/MyKeyProvider.jar",
				"EncryptionKeyProviderClass": "com.mycompany.MyKeyProvider"
			}
		}
	}
}'
```

L'exemple suivant illustre le scénario suivant :
+ Le chiffrement des données en transit est activé avec un fournisseur de clés personnalisé.
+ CSE-Custom est utilisé pour les données Amazon S3.
+ Le chiffrement de disque local utilise un fournisseur de clés personnalisé.

```
aws emr create-security-configuration --name "MySecConfig" --security-configuration '{
	"EncryptionConfiguration": {
		"EnableInTransitEncryption": "true",
		"EnableAtRestEncryption": "true",
		"InTransitEncryptionConfiguration": {
			"TLSCertificateConfiguration": {
				"CertificateProviderType": "Custom",
				"S3Object": "s3://MyConfig/artifacts/MyCerts.jar", 
				"CertificateProviderClass": "com.mycompany.MyCertProvider"
			}
		},
		"AtRestEncryptionConfiguration": {
			"S3EncryptionConfiguration": {
				"EncryptionMode": "CSE-Custom",
				"S3Object": "s3://MyConfig/artifacts/MyCerts.jar", 
				"EncryptionKeyProviderClass": "com.mycompany.MyKeyProvider"
				},
			"LocalDiskEncryptionConfiguration": {
				"EncryptionKeyProviderType": "Custom",
				"S3Object": "s3://MyConfig/artifacts/MyCerts.jar",
				"EncryptionKeyProviderClass": "com.mycompany.MyKeyProvider"
			}
		}
	}
}'
```

L'exemple suivant illustre le scénario suivant :
+ Le chiffrement des données en transit est désactivé et le chiffrement des données au repos est activé.
+ Le chiffrement Amazon S3 est activé avec SSE-KMS.
+ Plusieurs AWS KMS clés sont utilisées, une par compartiment S3, et des exceptions de chiffrement sont appliquées à ces compartiments S3 individuels.
+ Le chiffrement de disque local est désactivé.

```
aws emr create-security-configuration --name "MySecConfig" --security-configuration '{
  	"EncryptionConfiguration": {
   		"AtRestEncryptionConfiguration": {
      	     	"S3EncryptionConfiguration": {
        			"EncryptionMode": "SSE-KMS",
        			"AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012",
        			"Overrides": [
         				 {
           				 "BucketName": "amzn-s3-demo-bucket1",
            				"EncryptionMode": "SSE-S3"
          				},
          				{
            				"BucketName": "amzn-s3-demo-bucket2",
           				 "EncryptionMode": "CSE-KMS",
            				"AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"
         				 },
         				 {
           				 "BucketName": "amzn-s3-demo-bucket3",
          				  "EncryptionMode": "SSE-KMS",
           				 "AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"
          				}
        					]
      							}
   						 	},
   		"EnableInTransitEncryption": false,
    		"EnableAtRestEncryption": true
  }
}'
```

L'exemple suivant illustre le scénario suivant :
+ Le chiffrement des données en transit est désactivé et le chiffrement des données au repos est activé.
+ Le chiffrement Amazon S3 est activé avec SSE-S3 et le chiffrement de disque local est désactivé.

```
aws emr create-security-configuration --name "MyS3EncryptionConfig" --security-configuration '{
    "EncryptionConfiguration": {
        "EnableInTransitEncryption": false,
        "EnableAtRestEncryption": true,
        "AtRestEncryptionConfiguration": {
            "S3EncryptionConfiguration": {
                "EncryptionMode": "SSE-S3"
            }
        }
     }
}'
```

L'exemple suivant illustre le scénario suivant :
+ Le chiffrement des données en transit est désactivé et le chiffrement des données au repos est activé.
+ Le chiffrement du disque local est activé en AWS KMS tant que fournisseur de clés et le chiffrement Amazon S3 est désactivé.

```
aws emr create-security-configuration --name "MyLocalDiskEncryptionConfig" --security-configuration '{
    "EncryptionConfiguration": {
        "EnableInTransitEncryption": false,
        "EnableAtRestEncryption": true,
        "AtRestEncryptionConfiguration": {
            "LocalDiskEncryptionConfiguration": {
                "EncryptionKeyProviderType": "AwsKms",
                "AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"
            }
        }
     }
}'
```

L'exemple suivant illustre le scénario suivant :
+ Le chiffrement des données en transit est désactivé et le chiffrement des données au repos est activé.
+ Le chiffrement du disque local est activé en AWS KMS tant que fournisseur de clés et le chiffrement Amazon S3 est désactivé.
+ Le chiffrement EBS est activé. 

```
aws emr create-security-configuration --name "MyLocalDiskEncryptionConfig" --security-configuration '{
    "EncryptionConfiguration": {
        "EnableInTransitEncryption": false,
        "EnableAtRestEncryption": true,
        "AtRestEncryptionConfiguration": {
            "LocalDiskEncryptionConfiguration": {
                "EnableEbsEncryption": true,
                "EncryptionKeyProviderType": "AwsKms",
                "AwsKmsKey": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"
            }
        }
     }
}'
```

L'exemple suivant illustre le scénario suivant :

SSE-EMR-WAL est utilisé pour le chiffrement EMR WAL

```
aws emr create-security-configuration --name "MySecConfig" \
    --security-configuration '{
        "EncryptionConfiguration": {
            "EMRWALEncryptionConfiguration":{ },
            "EnableInTransitEncryption":false, "EnableAtRestEncryption":false
        }
    }'
```

`EnableInTransitEncryption`et pourrait `EnableAtRestEncryption` toujours être vrai, si vous souhaitez activer le chiffrement associé.

L'exemple suivant illustre le scénario suivant :
+ SSE-KMS-WAL est utilisé pour le chiffrement EMR WAL
+ Le chiffrement côté serveur est utilisé AWS Key Management Service comme fournisseur de clés

```
aws emr create-security-configuration --name "MySecConfig" \
    --security-configuration '{
        "EncryptionConfiguration": {
            "EMRWALEncryptionConfiguration":{
                "AwsKmsKey":"arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012"
                },
            "EnableInTransitEncryption":false, "EnableAtRestEncryption":false
        }
    }'
```

`EnableInTransitEncryption`et pourrait `EnableAtRestEncryption` toujours être vrai, si vous souhaitez activer le chiffrement associé.

#### Référence JSON pour les paramètres de chiffrement
<a name="emr-encryption-cli-parameters"></a>

Le tableau suivant répertorie les paramètres JSON à définir pour le chiffrement et décrit les valeurs acceptables pour chacun d'eux.


| Paramètre | Description | 
| --- |--- |
| "EnableInTransitEncryption" : true \$1 false | Spécifiez true pour activer le chiffrement en transit et false pour le désactiver. S'il est omis, false est utilisé par défaut, et le chiffrement en transit est désactivé. | 
| "EnableAtRestEncryption": true \$1 false | Spécifiez true pour activer le chiffrement au repos et false pour le désactiver. S'il est omis, false est utilisé par défaut, et le chiffrement au repos est désactivé. | 
| **Paramètres de chiffrement en transit** | 
| --- |
| "InTransitEncryptionConfiguration" : | Spécifie une collection de valeurs utilisées pour configurer le chiffrement en transit quand EnableInTransitEncryption est true. | 
|  "CertificateProviderType": "PEM" \$1 "Custom" | Spécifie si les certificats PEM référencés avec un fichier zip ou un fournisseur de certificats Custom doivent être utilisés. S'il PEM est spécifié, S3Object il doit s'agir d'une référence à l'emplacement dans Amazon S3 d'un fichier zip contenant les certificats. Si Custom est spécifié, S3Object il doit s'agir d'une référence à l'emplacement d'un fichier JAR dans Amazon S3, suivie d'une CertificateProviderClass entrée. | 
|  "S3Object" : "ZipLocation" \$1 "JarLocation" | Fournit l'emplacement dans Amazon S3 d'un fichier zip lorsqu'il PEM est spécifié, ou d'un fichier JAR lorsque cela Custom est spécifié. Le format peut être un chemin d'accès (par exemple, s3://MyConfig/artifacts/CertFiles.zip) ou un ARN (par exemple, arn:aws:s3:::Code/MyCertProvider.jar). Si un fichier zip est spécifié, il doit comporter les fichiers nommés privateKey.pem et certificateChain.pem. Un fichier nommé trustedCertificates.pem est facultatif. | 
|  "CertificateProviderClass" : "MyClassID" | Obligatoire uniquement si cela Custom est spécifié pourCertificateProviderType. MyClassIDspécifie un nom de classe complet déclaré dans le fichier JAR, qui implémente l'interface TLSArtifacts Provider. Par exemple, com.mycompany.MyCertProvider. | 
| **Paramètres de chiffrement au repos** | 
| --- |
| "AtRestEncryptionConfiguration" :  | Spécifie un ensemble de valeurs pour le chiffrement au repos lorsqu'il EnableAtRestEncryption est activétrue, y compris le chiffrement Amazon S3 et le chiffrement du disque local. | 
| Paramètres de chiffrement Amazon S3 | 
| "S3EncryptionConfiguration" : | Spécifie un ensemble de valeurs utilisées pour le chiffrement Amazon S3 avec le système de fichiers Amazon EMR (EMRFS). | 
| "EncryptionMode": "SSE-S3" \$1 "SSE-KMS" \$1 "CSE-KMS" \$1 "CSE-Custom" | Spécifie le type de chiffrement Amazon S3 à utiliser. Si elle SSE-S3 est spécifiée, aucune autre valeur de chiffrement Amazon S3 n'est requise. Si l'un SSE-KMS ou l'autre CSE-KMS est spécifié, un AWS KMS key ARN doit être spécifié comme AwsKmsKey valeur. Si CSE-Custom est défini, les valeurs S3Object et EncryptionKeyProviderClass doivent être spécifiées. | 
| "AwsKmsKey" : "MyKeyARN" | Obligatoire uniquement quand SSE-KMS ou CSE-KMS est spécifié pour EncryptionMode. MyKeyARN doit être l'ARN complet d'une clé (par exemple, arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012). | 
|  "S3Object" : "JarLocation" | Obligatoire uniquement lorsque CSE-Custom cela est spécifié pourCertificateProviderType. JarLocationfournit l'emplacement d'un fichier JAR dans Amazon S3. Le format peut être un chemin d'accès (par exemple, s3://MyConfig/artifacts/MyKeyProvider.jar) ou un ARN (par exemple, arn:aws:s3:::Code/MyKeyProvider.jar). | 
| "EncryptionKeyProviderClass" : "MyS3KeyClassID" | Obligatoire uniquement lorsque CSE-Custom cela est spécifié pourEncryptionMode. MyS3KeyClassIDspécifie le nom complet d'une classe déclarée dans l'application qui implémente l' EncryptionMaterialsProviderinterface ; par exemple,com.mycompany.MyS3KeyProvider. | 
| Paramètres de chiffrement de disque local | 
| "LocalDiskEncryptionConfiguration" | Spécifie le fournisseur de clés et les valeurs correspondantes à utiliser pour le chiffrement de disque local. | 
| "EnableEbsEncryption": true \$1 false | Spécifiez true pour activer le chiffrement EBS. Le chiffrement EBS chiffre le volume du périphérique racine EBS et les volumes de stockage associés. Pour utiliser le chiffrement EBS, vous devez spécifier AwsKms comme votreEncryptionKeyProviderType. | 
| "EncryptionKeyProviderType": "AwsKms" \$1 "Custom" | Spécifie le fournisseur de clés. S'il AwsKms est spécifié, un ARN de clé KMS doit être spécifié comme AwsKmsKey valeur. Si Custom est défini, les valeurs S3Object et EncryptionKeyProviderClass doivent être spécifiées. | 
| "AwsKmsKey : "MyKeyARN" | Obligatoire uniquement lorsque AwsKms cela est spécifié pourType. MyKeyARNdoit être un ARN entièrement spécifié pour une clé (par exemple,arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-456789012123). | 
| "S3Object" : "JarLocation" | Obligatoire uniquement lorsque CSE-Custom cela est spécifié pourCertificateProviderType. JarLocationfournit l'emplacement d'un fichier JAR dans Amazon S3. Le format peut être un chemin d'accès (par exemple, s3://MyConfig/artifacts/MyKeyProvider.jar) ou un ARN (par exemple, arn:aws:s3:::Code/MyKeyProvider.jar). | 
|  `"EncryptionKeyProviderClass" : "MyLocalDiskKeyClassID"`  | Obligatoire uniquement lorsque Custom cela est spécifié pourType. MyLocalDiskKeyClassIDspécifie le nom complet d'une classe déclarée dans l'application qui implémente l' EncryptionMaterialsProviderinterface ; par exemple,com.mycompany.MyLocalDiskKeyProvider. | 
| **Paramètres de chiffrement EMR WAL** | 
| --- |
| "EMRWALEncryptionConfiguration"  | Spécifie la valeur du chiffrement EMR WAL. | 
| "AwsKmsKey"  | Spécifie l'Arn de l'identifiant de clé CMK. | 

## Configuration de l'authentification Kerberos
<a name="emr-security-configuration-kerberos"></a>

Une configuration de sécurité avec les paramètres Kerberos ne peut être utilisée que par un cluster créé avec des attributs Kerberos. Sinon, une erreur se produit. Pour de plus amples informations, veuillez consulter [Utilisation de Kerberos pour l'authentification avec Amazon EMR](emr-kerberos.md). Kerberos est uniquement disponible dans Amazon EMR version 5.10.0 et versions ultérieures.

### Spécification des paramètres Kerberos à l'aide de la console
<a name="emr-security-configuration-console-kerberos"></a>

Choisissez les options sous **Kerberos authentication (Authentification Kerberos)** en suivant les indications suivantes.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/emr/latest/ManagementGuide/emr-create-security-configuration.html)

### Spécification des paramètres Kerberos à l'aide du AWS CLI
<a name="emr-kerberos-cli-parameters"></a>

Le tableau suivant montre les paramètres JSON de référence pour les paramètres Kerberos dans une configuration de sécurité. Pour des exemples de configurations, consultez [Exemples de configuration](emr-kerberos-config-examples.md).

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/emr/latest/ManagementGuide/emr-create-security-configuration.html)

## Configuration de rôles IAM pour les demandes EMRFS à Amazon S3
<a name="emr-security-configuration-emrfs"></a>

Les rôles IAM pour EMRFS vous permettent de fournir différentes autorisations pour les données EMRFS dans Amazon S3. Vous créez des mappages qui spécifient un rôle IAM utilisé pour les autorisations lorsqu'une demande d'accès contient un identificateur que vous spécifiez. L'identificateur peut être un utilisateur ou un rôle Hadoop, ou bien un préfixe Amazon S3. 

Pour de plus amples informations, veuillez consulter [Configuration de rôles IAM pour les demandes EMRFS à Amazon S3](emr-emrfs-iam-roles.md).

### Spécification des rôles IAM pour EMRFS à l'aide du AWS CLI
<a name="w2aac30c17b9c15b7"></a>

Vous trouverez ci-dessous un exemple d'extrait JSON permettant de spécifier des rôles IAM personnalisés pour EMRFS dans une configuration de sécurité. Il montre les mappages de rôles pour les trois types d'identifiants différents, suivis d'une référence de paramètre. 

```
{
  "AuthorizationConfiguration": {
    "EmrFsConfiguration": {
      "RoleMappings": [{
        "Role": "arn:aws:iam::123456789101:role/allow_EMRFS_access_for_user1",
        "IdentifierType": "User",
        "Identifiers": [ "user1" ]
      },{
        "Role": "arn:aws:iam::123456789101:role/allow_EMRFS_access_to_demo_s3_buckets",
        "IdentifierType": "Prefix",
        "Identifiers": [ "s3://amzn-s3-demo-bucket1/","s3://amzn-s3-demo-bucket2/" ]
      },{
        "Role": "arn:aws:iam::123456789101:role/allow_EMRFS_access_for_AdminGroup",
        "IdentifierType": "Group",
        "Identifiers": [ "AdminGroup" ]
      }]
    }
  }
}
```


| Paramètre | Description | 
| --- | --- | 
|  `"AuthorizationConfiguration":`  |  Obligatoire.  | 
|   `"EmrFsConfiguration":`  |  Obligatoire. Contient des mappages de rôles.  | 
|    `"RoleMappings":`  |  Obligatoire. Contient une ou plusieurs définitions de mappage de rôles. Les mappages de rôles sont évalués dans l'ordre d'apparition du haut vers le bas. Si un mappage de rôle est considéré comme vrai pour un appel de données EMRFS dans Amazon S3, aucun autre mappage de rôle n'est évalué et EMRFS utilise le rôle IAM spécifié pour la demande. Les mappages de rôles sont constitués des paramètres obligatoires suivants : | 
|    `"Role":` | Spécifie l'identifiant ARN d'un rôle IAM au format `arn:aws:iam::account-id:role/role-name`. Il s'agit du rôle IAM assumé par Amazon EMR si la demande EMRFS envoyée à Amazon S3 correspond à l'une des `Identifiers` spécifiées. | 
|    `"IdentifierType":` | Les valeurs suivantes sont possibles : [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/emr/latest/ManagementGuide/emr-create-security-configuration.html)  | 
|     `"Identifiers":`  |  Spécifie un ou plusieurs identifiants du type d'identifiant approprié. Séparez les identifiants multiples par des virgules sans espace.  | 

## Configuration des demandes de service de métadonnées aux instances Amazon EC2
<a name="emr-security-configuration-imdsv2"></a>

Les métadonnées d'instance sont des données portant sur votre instance que vous pouvez utiliser pour configurer ou gérer l'instance en cours d'exécution. Vous pouvez accéder aux métadonnées d’instance à partir d’une instance en cours d’exécution en utilisant l’une des méthodes suivantes :
+ Service de métadonnées d'instance version 1 (IMDSv1) : méthode de demande/réponse
+ Service de métadonnées d'instance version 2 (IMDSv2) : méthode orientée session

Amazon EC2 prend en charge les deux, IMDSv1 et IMDSv2 Amazon EMR les prend en charge dans IMDSv2 Amazon EMR 5.23.1, 5.27.1, 5.32 ou version ultérieure, et 6.2 ou version ultérieure. Dans ces versions, les composants Amazon EMR sont utilisés IMDSv2 pour tous les appels IMDS. Pour les appels IMDS dans le code de votre application, vous pouvez utiliser les deux IMDSv1 ou configurer l'IMDS pour qu'il ne soit utilisé que IMDSv2 pour renforcer la sécurité. IMDSv2 Lorsque vous spécifiez que cela IMDSv2 doit être utilisé, cela IMDSv1 ne fonctionne plus.

Pour plus d'informations, consultez [Configurer le service de métadonnées d'instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html) dans le guide de l'*utilisateur Amazon EC2*.

**Note**  
Dans les versions antérieures d'Amazon EMR 5.x ou 6.x, la désactivation entraînait l'échec du démarrage du cluster IMDSv1 , car les composants Amazon EMR étaient utilisés pour tous les appels IMDS. IMDSv1 Lors de la désactivation IMDSv1, assurez-vous que tous les logiciels personnalisés utilisés IMDSv1 sont mis à jour vers IMDSv2.

### Spécifier la configuration du service de métadonnées d'instance à l'aide du AWS CLI
<a name="w2aac30c17b9c17c13"></a>

Vous trouverez ci-dessous un exemple d'extrait JSON pour spécifier le service de métadonnées d'instance (IMDS) d'Amazon EC2 dans une configuration de sécurité. L'utilisation d'une configuration de sécurité personnalisée est facultative.

```
{
  "InstanceMetadataServiceConfiguration" : {
      "MinimumInstanceMetadataServiceVersion": integer,
      "HttpPutResponseHopLimit": integer
   }
}
```


| Paramètre | Description | 
| --- | --- | 
|  `"InstanceMetadataServiceConfiguration":`  |  Si vous ne spécifiez pas l'IMDS dans une configuration de sécurité et que vous utilisez une version d'Amazon EMR qui l'exige IMDSv1, Amazon EMR IMDSv1 utilise par défaut la version minimale du service de métadonnées d'instance. Si vous souhaitez utiliser votre propre configuration, les deux paramètres suivants sont obligatoires.  | 
|   `"MinimumInstanceMetadataServiceVersion":`  |  Obligatoire. Spécifiez `1` ou `2`. La valeur `1` autorise IMDSv1 et IMDSv2. La valeur « `2` allows only » est la suivante IMDSv2.  | 
|   `"HttpPutResponseHopLimit":`  |  Obligatoire. Limite de saut de réponse HTTP PUT souhaitée pour les requêtes de métadonnées d'instance. Plus le nombre est élevé, plus les demandes de métadonnées d'instance peuvent être envoyées. Valeur par défaut : `1`. Spécifiez un nombre entier compris entre `1` et `64`. | 

### Spécification de la configuration du service de métadonnées d'instance à l'aide de la console
<a name="emr-security-configuration-imdsv2-console"></a>

Vous pouvez configurer l'utilisation d'IMDS pour un cluster lorsque vous le lancez depuis la console Amazon EMR.

**Pour configurer l'utilisation d'IMDS à l'aide de la console :**

1. Lorsque vous créez une nouvelle configuration de sécurité sur la page **Configurations de sécurité**, sélectionnez **Configurer le service de métadonnées d'instance EC2** sous le paramètre **Service de métadonnées d'instance EC2**. Cette configuration est prise en charge uniquement dans Amazon EMR 5.23.1, 5.27.1, 5.32 ou version ultérieure, et 6.2 ou version ultérieure.

1. Pour l'option **Version minimale du service de métadonnées d'instance**, sélectionnez l'une des options suivantes :
   + **Désactivez IMDSv1 et autorisez uniquement IMDSv2**, si vous souhaitez autoriser uniquement IMDSv2 sur ce cluster. Consultez [la section Transition vers l'utilisation du service de métadonnées d'instance version 2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html#instance-metadata-transition-to-version-2) dans le *guide de l'utilisateur Amazon EC2*.
   + **Autoriser les deux IMDSv1 et IMDSv2 sur le cluster**, si vous souhaitez autoriser IMDSv1 et orienter les sessions IMDSv2 sur ce cluster.

1. En IMDSv2 effet, vous pouvez également configurer le nombre de sauts réseau autorisés pour le jeton de métadonnées en définissant la **limite de sauts de réponse HTTP** sur un entier compris entre et`1`. `64`

Pour plus d'informations, consultez [Configurer le service de métadonnées d'instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html) dans le guide de l'*utilisateur Amazon EC2*.

Consultez [Configurer les détails de l'instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/launching-instance.html#configure_instance_details_step) et [Configurer le service de métadonnées de l'instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html) dans le guide de l'*utilisateur Amazon EC2*.