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.
Spécification du chiffrement Amazon S3 en utilisant les propriétés EMRFS
Important
À partir de la version 4.8.0 d'Amazon EMR, vous pouvez utiliser les configurations de sécurité pour appliquer les paramètres de chiffrement plus facilement et avec plus d'options. Nous vous recommandons d'utiliser les configurations de sécurité. Pour plus d'informations, consultez Configuration du chiffrement des données. Les instructions de console décrites dans cette section sont disponibles pour les versions antérieures à la version 4.8.0. Si vous utilisez le AWS CLI pour configurer le chiffrement Amazon S3 à la fois dans la configuration du cluster et dans une configuration de sécurité dans les versions suivantes, la configuration de sécurité remplace la configuration du cluster.
Lorsque vous créez un cluster, vous pouvez spécifier le chiffrement côté serveur (SSE) ou le chiffrement côté client (CSE) pour les données EMRFS dans Amazon S3 à l'aide de la console emrfs-site
ou à l'aide des propriétés de classification via le SDK ou EMR. AWS CLI Le chiffrement SSE et le chiffrement CSE pour Amazon S3 s'excluent mutuellement. Vous pouvez choisir l'un ou l'autre, mais pas les deux.
Pour AWS CLI obtenir des instructions, consultez la section correspondant à votre type de chiffrement ci-dessous.
Pour spécifier les options de chiffrement EMRFS à l'aide du AWS Management Console
Accédez à la nouvelle console Amazon EMR et sélectionnez Changer pour l'ancienne console depuis le menu latéral. Pour plus d'informations sur ce qu'implique le passage à l'ancienne console, consultez la rubrique Utilisation de l'ancienne console.
-
Choisissez Créer un cluster et Go to advanced options (Aller aux options avancées).
Choisissez une Release (Version) 4.7.2 ou antérieure.
Choisissez d'autres options pour Software and Steps (Logiciel et étapes) selon les besoins de votre application, puis cliquez sur Next (Suivant).
Choisissez les paramètres dans les volets Hardware (Matériel) et General Cluster Settings (Paramètres de cluster généraux) selon les besoins de votre application.
Dans le volet Security (Sécurité), sous Authentication and encryption (Authentification et chiffrement), sélectionnez l'option S3 Encryption (with EMRFS) (Chiffrement S3 (avec EMRFS)) à utiliser.
Note
S3 server-side encryption with KMS Key Management (Chiffrement côté serveur S3 avec gestion de clé KMS) (SSE-KMS) n'est pas disponible lorsque vous utilisez Amazon EMR version 4.4 ou antérieure.
Si vous choisissez une option qui utilise AWS Key Management, choisissez un AWS KMS Key ID. Pour de plus amples informations, veuillez consulter Utilisation AWS KMS keys pour le chiffrement EMRFS.
Si vous choisissez le S3 client-side encryption with custom materials provider (Chiffrement côté client S3 avec fournisseur de matériaux personnalisé), spécifiez le Class name (Nom de classe) et l'JAR location (emplacement du JAR). Pour de plus amples informations, veuillez consulter Chiffrement côté client sur Amazon S3.
Choisissez d'autres options selon les besoins de votre application, puis choisissez Create Cluster (Créer un cluster).
Utilisation AWS KMS keys pour le chiffrement EMRFS
La clé de AWS KMS chiffrement doit être créée dans la même région que votre instance de cluster Amazon EMR et les compartiments Amazon S3 utilisés avec EMRFS. Si la clé que vous spécifiez se trouve dans un compte différent de celui que vous utilisez pour configurer un cluster, vous devez spécifier la clé à l'aide de son ARN.
Le rôle du profil d' EC2 instance Amazon doit être autorisé à utiliser la clé KMS que vous spécifiez. Le rôle par défaut du profil d'instance dans Amazon EMR est EMR_EC2_DefaultRole
. Si vous utilisez un rôle différent pour le profil d'instance, ou si vous utilisez des rôles IAM pour les demandes EMRFS adressées à Amazon S3, assurez-vous que chaque rôle est ajouté en tant qu'utilisateur clé, le cas échéant. Cela donne au rôle des autorisations pour utiliser la clé KMS. Pour plus d'informations, consultez les sections Utilisation des stratégies de clé dans le Guide du développeur AWS Key Management Service et Configuration des rôles IAM pour les demandes EMRFS adressées à Amazon S3.
Vous pouvez utiliser le AWS Management Console pour ajouter votre profil d' EC2 instance ou votre profil d'instance à la liste des utilisateurs clés pour la clé KMS spécifiée, ou vous pouvez utiliser le AWS CLI ou un AWS SDK pour associer une politique de clé appropriée.
Notez qu'Amazon EMR prend uniquement en charge les clés KMS symétriques. Vous ne pouvez pas utiliser une clé KMS asymétrique pour chiffrer les données au repos dans un cluster Amazon EMR. Pour savoir si une clés KMS est symétrique ou asymétrique, consultez Identification de clés KMS symétriques et asymétriques.
La procédure ci-dessous décrit comment ajouter le profil d'instance Amazon EMR par défaut, EMR_EC2_DefaultRole
, en tant qu'utilisateur de clé à l'aide de la AWS Management Console. Elle suppose que vous avez déjà créé une clé KMS. Pour créer une nouvelle clé KMS, consultez Création de clés dans le Guide du développeur AWS Key Management Service .
Pour ajouter le profil d' EC2 instance d'Amazon EMR à la liste des utilisateurs de clés de chiffrement
-
Connectez-vous à la console AWS Key Management Service (AWS KMS) AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/kms.
-
Pour modifier le Région AWS, utilisez le sélecteur de région dans le coin supérieur droit de la page.
-
Sélectionnez l'alias de la clé KMS à modifier.
-
Sur la page de détails de la clé, sous Key Users (Utilisateurs de clés), choisissez Add (Ajouter).
-
Dans la boîte de dialogue Ajouter des utilisateurs clés sélectionnez le rôle approprié. Le nom du rôle par défaut est
EMR_EC2_DefaultRole
. -
Choisissez Ajouter.
Chiffrement côté serveur sur Amazon S3
Le chiffrement est configuré par défaut pour tous les compartiments Amazon S3, et tous les nouveaux objets chargés dans un compartiment S3 sont automatiquement chiffrés au repos. Amazon S3 chiffre les données au niveau de l'objet lorsqu'il écrit les données sur le disque et les déchiffre lors de l'accès. Pour plus d'informations sur SSE, consultez Protection des données à l'aide du chiffrement côté serveur dans le Guide de l'utilisateur Amazon Simple Storage Service.
Lorsque vous indiquez le chiffrement SSE sur Amazon EMR, vous pouvez choisir entre deux systèmes de gestion de clés différents :
-
SSE-S3 – Amazon S3 gère les clés pour vous.
-
SSE-KMS — Vous utilisez un AWS KMS key pour configurer des politiques adaptées à Amazon EMR. Pour plus d'informations sur les exigences clés relatives à Amazon EMR, consultez la section Utilisation à des AWS KMS keys fins de chiffrement.
Le chiffrement SSE avec des clés fournies par le client (SSE-C) n'est pas disponible pour une utilisation avec Amazon EMR.
Pour créer un cluster avec SSE-S3 activé à l'aide du AWS CLI
-
Saisissez la commande suivante :
aws emr create-cluster --release-label
emr-4.7.2 or earlier
\ --instance-count 3 --instance-type m5.xlarge --emrfs Encryption=ServerSide
Vous pouvez également activer SSE-S3 en définissant le fs.s3. enableServerSideLa propriété de chiffrement prend la valeur true dans les emrfs-site
propriétés. Voir l'exemple pour SSE-KMS ci-dessous et omettez la propriété pour l'ID de clé.
Pour créer un cluster avec SSE-KMS activé à l'aide du AWS CLI
Note
SSE-KMS est uniquement disponible dans Amazon EMR version 4.5.0 et versions ultérieures.
-
Tapez la AWS CLI commande suivante pour créer un cluster avec SSE-KMS, où se
keyID
trouve, par exemple AWS KMS key, un :a4567b8-9900-12ab-1234-123a45678901
aws emr create-cluster --release-label
emr-4.7.2 or earlier
--instance-count3
\ --instance-typem5.xlarge
--use-default-roles \ --emrfs Encryption=ServerSide,Args=[fs.s3.serverSideEncryption.kms.keyId=keyId
]--OR--
Tapez la AWS CLI commande suivante à l'aide de la
emrfs-site
classification et fournissez un fichier de configuration JSON dont le contenu est similairemyConfig.json
à celui de l'exemple ci-dessous :aws emr create-cluster --release-label
emr-4.7.2 or earlier
--instance-count 3 --instance-typem5.xlarge
--applications Name=Hadoop
--configurationsfile://myConfig.json
--use-default-rolesExemple de contenu de myConfig.json :
[ { "Classification":"emrfs-site", "Properties": { "fs.s3.enableServerSideEncryption": "true", "fs.s3.serverSideEncryption.kms.keyId":"
a4567b8-9900-12ab-1234-123a45678901
" } } ]
Propriétés de configuration pour SSE-S3 et SSE-KMS
Ces propriétés peuvent être configurées à l'aide de la classification de configuration emrfs-site
. SSE-KMS est uniquement disponible dans Amazon EMR version 4.5.0 et versions ultérieures.
Propriété | Valeur par défaut | Description |
---|---|---|
fs.s3.enableServerSideEncryption |
false |
Lorsque la valeur est |
fs.s3.serverSideEncryption.kms.keyId |
n/a |
Spécifie un ID de AWS KMS clé ou un ARN. Si une clé est spécifiée, SSE-KMS est utilisé. |