Chiffrement au repos - Amazon Athena

Chiffrement au repos

Vous pouvez exécuter des requêtes dans Amazon Athena sur des données chiffrées dans Simple Storage Service (Amazon S3) dans la même région et dans un nombre limité de régions. Vous pouvez également chiffrer les résultats de la requête dans Simple Storage Service (Amazon S3) et les données dans le catalogue de données AWS Glue.

Vous pouvez chiffrer les ressources suivantes dans Athena :

Note

Lorsque vous lisez une table chiffrée à l’aide d’Athena, ce service n’utilise pas l’option de chiffrement des résultats des requêtes, mais les options de chiffrement spécifiées pour les données de la table. Si des méthodes ou des clés de chiffrement distinctes sont configurées pour les résultats des requêtes et les données des tables, Athena lit les données des tables sans utiliser l’option de chiffrement et la clé utilisées pour chiffrer ou déchiffrer les résultats des requêtes.

Toutefois, si vous utilisez Athena pour insérer des données dans une table contenant des données chiffrées, les données insérées sont chiffrées à l’aide de la configuration de chiffrement spécifiée pour les résultats des requêtes. Par exemple, si vous spécifiez le chiffrement CSE_KMS pour les résultats des requêtes, Athena chiffre les données de table insérées avec CSE_KMS en utilisant l’ID de clé AWS KMS qui a servi au chiffrement des résultats des requêtes.

Options de chiffrement Simple Storage Service (Amazon S3) prises en charge

Athena prend en charge les options de chiffrement suivantes pour les jeux de données et les résultats des requêtes dans Simple Storage Service (Amazon S3).

Type de chiffrement Description Prise en charge entre régions
SSE-S3 Chiffrement côté serveur (SSE) avec une clé gérée par Simple Storage Service (Amazon S3). Oui
SSE-KMS (recommandé) Chiffrement côté serveur (SSE) avec une clé AWS Key Management Service gérée par le client. Oui
CSE-KMS

Chiffrement côté client (CSE) avec une clé gérée par le client AWS KMS. Dans Athena, cette option exige que vous utilisiez une instruction CREATE TABLE avec une clause TBLPROPERTIES qui spécifie 'has_encrypted_data'='true'. Pour de plus amples informations, consultez Création de tables basées sur des jeux de données chiffrés dans Amazon S3.

Non

Pour plus d'informations sur le chiffrement AWS KMS avec Simple Storage Service (Amazon S3), consultez la rubrique Présentation de AWS Key Management Service et Comment Amazon Simple Storage Service (Amazon S3) utilise le service AWS KMS dans le Guide du développeur AWS Key Management Service. Pour de plus amples informations sur l'utilisation de SSE-KMS ou CSE-KMS avec Athena, consultez la rubrique Lancement : Amazon Athena prend désormais en charge l'interrogation des données chiffrées à partir du Blog Big Data AWS.

Recommandations relatives au chiffrement

Lorsque vous chiffrez et déchiffrez des données de table et des résultats de requêtes à l’aide de clés KMS gérées par le client, il est préférable d’utiliser le chiffrement SSE-KMS plutôt que les méthodes SSE-S3 ou CSE-KMS. SSE-KMS, qui permet de combiner contrôle, simplicité et performances, est recommandé lorsque vous utilisez des clés KMS gérées pour le chiffrement des données.

Avantages de SSE-KMS par rapport à SSE-S3

  • SSE-KMS vous permet de spécifier et de gérer vos propres clés, ce qui assure un meilleur contrôle. Vous pouvez définir des stratégies de clé, superviser les cycles de vie des clés et surveiller l’utilisation des clés.

Avantages de SSE-KMS par rapport à CSE-KMS

  • SSE-KMS permet de se passer d’une infrastructure supplémentaire pour chiffrer et déchiffrer les données, contrairement à CSE-KMS qui nécessite la maintenance continue d’un client de chiffrement S3.

  • CSE-KMS peut rencontrer des problèmes de compatibilité entre les clients de chiffrement S3 nouveaux et plus anciens en raison de l’évolution des algorithmes de chiffrement. Ce type de problème ne se pose pas avec SSE-KMS.

  • SSE-KMS effectue moins d’appels d’API au service KMS pour récupérer les clés pendant les processus de chiffrement et de déchiffrement, ce qui se traduit par des performances supérieures à celles de CSE-KMS.

Options non prises en charge

Les options de chiffrement suivantes ne sont pas prises en charge :

  • SSE avec les clés fournies par le client (SSE-C).

  • Chiffrement côté client à l'aide d'une clé gérée côté client.

  • Clés asymétriques.

Pour comparer les options de chiffrement Simple Storage Service (Amazon S3), consultez la section Protection des données à l'aide d'un chiffrement dans le Guide de l'utilisateur Amazon Simple Storage Service.

Outils de chiffrement côté client

Pour le chiffrement côté client, deux outils sont disponibles :

Ces outils ne sont pas compatibles, et les données chiffrées à l’aide de l’un des outils ne peuvent pas être déchiffrées avec l’autre. Athena ne prend en charge directement que le client de chiffrement Simple Storage Service (Amazon S3). Si vous utilisez le kit SDK pour chiffrer vos données, vous pouvez exécuter des requêtes depuis Athena, mais les données sont renvoyées sous forme de texte chiffré.

Si vous souhaitez utiliser Athena pour interroger des données qui ont été chiffrées à l'aide du kit SDK de chiffrement AWS, vous devez télécharger et déchiffrer vos données, puis les chiffrer à nouveau à l'aide du client de chiffrement Simple Storage Service (Amazon S3).

Autorisations pour les données chiffrées dans Simple Storage Service (Amazon S3)

Selon le type de chiffrement utilisé dans Amazon S3, vous devrez peut-être ajouter des autorisations, également appelées actions « Autoriser », aux politiques utilisées dans Athena :

  • SSE-S3 : si vous utilisez SSE-S3 pour le chiffrement, les utilisateurs d'Athena n'ont besoin d'aucune autorisation supplémentaire dans leurs politiques. Il suffit de disposer des autorisations Simple Storage Service (Amazon S3) appropriées pour l'emplacement Simple Storage Service (Amazon S3) approprié et pour les actions Athena. Pour plus d'informations sur les politiques qui accordent les autorisations Athena et Amazon S3 appropriées, consultez AWSPolitiques gérées par pour Amazon Athena et Contrôle de l’accès à Amazon S3 depuis Athena.

  • AWS KMS : si vous utilisez le service AWS KMS pour le chiffrement, les utilisateurs Athena doivent être autorisés à effectuer des actions AWS KMS spécifiques en plus des autorisations Athena et Simple Storage Service (Amazon S3). Vous pouvez autoriser ces actions en modifiant la stratégie de clé applicable aux clés gérées par le client utilisées pour chiffrer les données dans Amazon S3. Pour ajouter des utilisateurs clés aux politiques de clés AWS KMS appropriées, vous pouvez utiliser la console AWS KMS à l'adresse https://console.aws.amazon.com/kms. Pour plus d’informations sur l’ajout d’un utilisateur à une stratégie de clé AWS KMS, consultez Allows key users to use the customer managed key dans le Guide de développement d’AWS Key Management Service.

    Note

    Les administrateurs de politiques de clés avancées peuvent adapter les politiques de clés. kms:Decrypt est l'action minimale autorisée pour qu'un utilisateur d'Athena puisse travailler avec un jeu de données chiffrées. Pour utiliser des résultats de requête chiffrés, les actions minimales autorisées sont kms:GenerateDataKey et kms:Decrypt.

    Lorsque vous utilisez Athena pour interroger des jeux de données stockés dans Amazon S3 qui contiennent un grand nombre d’objets chiffrés avec AWS KMS, AWS KMS peut limiter les résultats des requêtes. Ceci est plus probable lorsqu'il y a un grand nombre de petits objets. Athena collecte les requêtes de nouvelles tentatives, mais une erreur de limitation peut encore se produire. Si vous travaillez avec un grand nombre d'objets chiffrés et que vous rencontrez ce problème, une option consiste à activer les clés de compartiment Simple Storage Service (Amazon S3) pour réduire le nombre d'appels vers KMS. Pour plus d'informations, consultez la rubrique Réduction des coûts de SSE-KMS grâce aux clés de compartiment Simple Storage Service (Amazon S3) dans le Guide de l'utilisateur d'Amazon Simple Storage Service. Une autre option consiste à augmenter vos quotas de service pour AWS KMS. Pour de plus amples informations, veuillez consulter Quotas dans le Guide du développeur AWS Key Management Service.

Pour obtenir des informations de dépannage sur les autorisations lors de l'utilisation de Simple Storage Service (Amazon S3) avec Athena, voir la section Autorisations de la rubrique Résolution des problèmes dans Athena.

Autorisations sur les métadonnées chiffrées du catalogue de données AWS Glue

Si vous chiffrez les métadonnées dans le AWS Glue Data Catalog, vous devez ajouter des actions "kms:GenerateDataKey", "kms:Decrypt" et "kms:Encrypt" aux politiques utilisées pour accéder à Athena. Pour plus d’informations, consultez Configuration de l’accès à des métadonnées chiffrées dans le AWS Glue Data Catalog depuis Athena.