Amazon EMR
Guide de gestion

Options de chiffrement

Avec la version 4.8.0 d'Amazon EMR, vous pouvez utiliser une configuration de sécurité pour spécifier les paramètres de chiffrement des données au repos, des données en transit ou des deux. Chaque configuration de sécurité créée est stockée dans Amazon EMR plutôt que dans la configuration du cluster. Dès lors, vous pouvez facilement réutiliser une configuration pour spécifier les paramètres de chiffrement de données chaque fois qu'un cluster est créé. Pour plus d'informations, consultez Création d'une configuration de sécurité.

Le schéma suivant illustre les différentes options de chiffrement des données disponibles avec les configurations de sécurité. Lorsque vous activez le chiffrement des données au repos, vous spécifiez les options de chiffrement des données EMRFS dans Amazon S3 et le chiffrement de disque local. Vous pouvez choisir d'activer le chiffrement au repos seulement, uniquement le chiffrement en transit ou les deux.

Les options de chiffrement suivantes sont également disponibles et ne sont pas configurées à l'aide d'une configuration de sécurité :

  • L'utilisation d'une configuration de sécurité ne chiffre pas le volume du périphérique racine EBS sur les instances de cluster. Avec la version 5.7.0 d'Amazon EMR, vous pouvez obtenir le même résultat en spécifiant une AMI personnalisée avec un volume de périphérique racine EBS chiffré. Pour en savoir plus, consultez Utilisation d'une image AMI personnalisée dans le manuel Amazon EMR Guide de gestion.

  • Si vous utilisez une version de Amazon EMR qui ne prend pas en charge les configurations de sécurité, vous pouvez configurer le chiffrement pour les données EMRFS dans Amazon S3 manuellement. Pour plus d'informations, consultez Spécification du chiffrement Amazon S3 en utilisant les propriétés EMRFS.

  • Le cas échéant, à partir de Amazon EMR version 4.1.0 et versions ultérieures, vous pouvez choisir de configurer un chiffrement transparent dans HDFS. Pour plus d'informations, consultez Chiffrement transparent dans HDFS sur Amazon EMR dans le Amazon EMR Guide de version.

Le chiffrement des données nécessite des clés et des certificats. Une configuration de sécurité vous donne la possibilité de choisir parmi plusieurs options, y compris les clés gérées par AWS Key Management Service, les clés gérées par Amazon S3 et les clés et les certificats provenant de fournisseurs personnalisés que vous fournissez. Lorsque vous utilisez AWS KMS comme fournisseur de clés, des frais vous sont facturés pour le stockage et l'utilisation des clés de chiffrement. Pour plus d'informations, consultez la page Tarification AWS KMS.

Avant de spécifier les options de chiffrement, choisissez les systèmes de gestion de clés et de certificats que vous voulez utiliser et commencez par créer les clés et les certificats ou les fournisseurs personnalisés que vous définissez dans le cadre des paramètres de chiffrement.

Chiffrement au repos pour les données EMRFS dans Amazon S3

Le chiffrement Amazon S3 fonctionne avec les objets du système de fichiers EMR (EMRFS) lus et écris sur Amazon S3. Vous spécifiez le chiffrement côté serveur Amazon S3 (SSE) ou le chiffrement côté client (CSE) lorsque vous activez le chiffrement au repos. Le chiffrement SSE et le chiffrement CSE pour Amazon S3 avec EMRFS s'excluent mutuellement. Vous pouvez choisir l'un ou l'autre, mais pas les deux. Que le chiffrement Amazon S3 soit activé ou non, le protocole TLS (Transport Layer Security) chiffre les objets EMRFS en transit entre les nœuds de cluster Amazon EMR et Amazon S3. Pour plus d'informations sur le chiffrement Amazon S3, consultez Protection des données à l'aide d'un chiffrement dans le Amazon Simple Storage Service Developer Guide.

Chiffrement Amazon S3 côté serveur

Lorsque vous configurez le chiffrement Amazon S3 côté serveur, Amazon S3 chiffre les données au niveau de l'objet lors de l'écriture des données sur le disque et les déchiffre lorsque quelqu'un y accède. Pour plus d'informations sur le chiffrement SSE, consultez Protection des données à l'aide d'un chiffrement côté serveur dans le Amazon Simple Storage Service Developer Guide.

Vous pouvez choisir entre deux systèmes de gestion des clés différents quand vous spécifiez SSE dans Amazon EMR :

  • SSE-S3 : Amazon S3 gère les clés pour vous.

  • SSE-KMS : vous utilisez une clé principale du client (CMK) AWS KMS configurée avec des stratégies adaptées à Amazon EMR. Pour plus d'informations sur les exigences relatives aux clés pour Amazon EMR, consultez Utilisation des clés principales client (CMK) AWS KMS pour le chiffrement. Lorsque vous utilisez AWS KMS, des frais s'appliquent pour le stockage et l'utilisation des clés de chiffrement. Pour plus d'informations, consultez la page Tarification AWS KMS.

Le chiffrement SSE avec des clés fournies par le client (SSE-C) n'est pas disponible avec Amazon EMR.

Chiffrement Amazon S3 côté client

Avec le chiffrement Amazon S3 côté client, le chiffrement et le déchiffrement Amazon S3 se produisent dans le client EMRFS, sur votre cluster. Les objets sont chiffrés avant d'être chargés dans Amazon S3 et déchiffrés après leur téléchargement. Le fournisseur que vous spécifiez fournit la clé de chiffrement que le client utilise. Le client peut utiliser les clés fournies par AWS KMS (CSE-KMS) ou une classe Java personnalisée qui fournit la clé principale côté client (CSE-C). Les détails de chiffrement sont légèrement différents entre CSE-KMS et CSE-C, selon le fournisseur spécifié et les métadonnées de l'objet déchiffré ou chiffré. Pour plus d'informations sur ces différences, consultez Protection des données via le chiffrement côté client dans le Amazon Simple Storage Service Developer Guide.

Note

Le chiffrement Amazon S3 CSE garantit uniquement le chiffrement des données EMRFS échangées avec Amazon S3. Les données des volumes d'instance du cluster ne sont pas toutes chiffrées. En outre, comme Hue n'utilise pas EMRFS, les objets écrits sur Amazon S3 à l'aide de l'explorateur de fichiers S3 Hue ne sont pas chiffrés.

Chiffrement au repos pour les disques locaux

Le chiffrement de disque local au sein d'une configuration de sécurité s'applique au stockage d'instance et aux volumes de stockage EBS dans un cluster. Il ne s'applique pas aux volumes du périphérique racine EBS. En commençant avec Amazon EMR version 5.7.0, vous pouvez spécifier une AMI personnalisée pour chiffrer les volumes du périphérique racine EBS des instances EC2. C'est un paramètre séparé des configurations de sécurité. Pour en savoir plus, consultez Utilisation d'une image AMI personnalisée dans le manuel Amazon EMR Guide de gestion.

Deux mécanismes cohabitent pour chiffrer les volumes de stockage lorsque vous activez le chiffrement des données au repos :

  • Chiffrement HDFS Open source : HDFS échange les données entre les instances de cluster pendant le traitement distribué. Il lit et écrit également les données dans les volumes de stockage d'instance et les volumes EBS attachés aux instances. Les options de chiffrement open source Hadoop suivantes sont activées lorsque vous mettez en œuvre le chiffrement de disque local :

    Note

    Vous pouvez activer un chiffrement Apache Hadoop supplémentaire en mettant en ouvre le chiffrement en transit (voir Chiffrement des données en transit). Ces paramètres de chiffrement n'activent pas le chiffrement transparent HDFS, que vous pouvez configurer manuellement. Pour plus d'informations, consultez Chiffrement transparent dans HDFS sur Amazon EMR dans le Amazon EMR Guide de version.

  • LUKS. En plus du chiffrement HDFS, les volumes de stockage d'instance Amazon EC2 et les volumes Amazon EBS des instances de cluster attachés sont chiffrés via LUKS. Pour en savoir plus sur le chiffrement LUKS, consultez la spécification de LUKS sur le disque. Le chiffrement au repos ne chiffre pas le volume du périphérique racine EBS (volume de démarrage). Pour chiffrer le volume du périphérique racine EBS, utilisez Amazon EMR version 5.7.0 ou ultérieure, et spécifiez une AMI personnalisée. Pour en savoir plus, consultez Customisation d'une AMI dans le manuel Amazon EMR Guide de gestion.

    Pour le fournisseur de clés, vous pouvez utiliser une clé CMK AWS KMS configurée avec les stratégies adaptées à Amazon EMR ou une classe Java personnalisée qui fournit les objets de chiffrement. Lorsque vous utilisez AWS KMS, des frais s'appliquent pour le stockage et l'utilisation des clés de chiffrement. Pour plus d'informations, consultez la page Tarification AWS KMS.

Chiffrement des données en transit

Plusieurs mécanismes de chiffrement sont activés avec le chiffrement en transit. Il s'agit de fonctionnalités open source et spécifiques à l'application, qui peuvent varier selon la version Amazon EMR. Les fonctionnalités suivantes de chiffrement propres à l'application peuvent être activées à l'aide de configurations de sécurité :

  • Hadoop (pour plus d'informations, consultez Hadoop en mode sécurisé dans la documentation Apache Hadoop) :

  • HBase:

  • Presto:

    • Les communications internes entre les nœuds Presto utilisent SSL/TLS (Amazon EMR version 5.6.0 et ultérieures uniquement).

  • Tez:

  • Spark (pour plus d'informations, consultez Paramètres de sécurité Spark) :

    • La communication RPC interne entre les composants Spark, par exemple, le service de transfert de blocs et le service shuffle externe, est chiffrée à l'aide de l'algorithme AES-256 dans Amazon EMR versions 5.9.0 et ultérieures. Dans les versions antérieures, cette communication est chiffrée avec SASL et DIGEST-MD5 (algorithme de chiffrement).

    • Les communications HTTP avec les interfaces utilisateur comme le serveur d'historique Spark et les serveurs de fichiers HTTPS sont chiffrées à l'aide de la configuration SSL de Spark. Pour plus d'informations, consultez Configuration SSL dans la documentation Spark.

Vous spécifiez les objets de chiffrement utilisés pour le chiffrement en transit de l'une des deux façons suivantes : en fournissant un fichier compressé contenant les certificats que vous chargez dans Amazon S3 ou en renvoyant vers une classe Java personnalisée qui fournit les objets de chiffrement. Pour plus d'informations, consultez Mise à disposition des certificats de chiffrement des données en transit avec le chiffrement Amazon EMR.