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.
Chiffrement des données pour Amazon Aurora DSQL
Amazon Aurora DSQL chiffre toutes les données au repos. Pour améliorer la sécurité, ce chiffrement utilise AWS Key Management Service (AWS KMS). Cette fonctionnalité réduit la lourdeur opérationnelle et la complexité induites par la protection des données sensibles. Le chiffrement au repos vous aide à :
-
Réduire la charge opérationnelle liée à la protection des données sensibles
-
Créer des applications sécurisées qui répondent aux exigences réglementaires et de conformité strictes en matière de chiffrement
-
Ajouter une couche supplémentaire de protection des données en sécurisant toujours vos données dans un cluster chiffré
-
Respecter les politiques organisationnelles, les réglementations sectorielles ou gouvernementales et les exigences de conformité
Avec Aurora DSQL, vous pouvez créer des applications sensibles en matière de sécurité qui sont conformes aux exigences réglementaires et de chiffrement strictes. Les sections suivantes expliquent comment configurer le chiffrement pour les bases de données Aurora DSQL nouvelles et existantes et comment gérer vos clés de chiffrement.
Rubriques
Types de clés KMS pour Aurora DSQL
Aurora DSQL s'intègre AWS KMS pour gérer les clés de chiffrement de vos clusters. Pour plus d’informations sur les types de clés et leurs états, consultez Concepts AWS Key Management Service dans le Guide du développeur AWS Key Management Service . Lorsque vous créez un nouveau cluster, vous pouvez choisir parmi les types de clés KMS suivants pour chiffrer votre cluster :
- Clé détenue par AWS
-
Type de chiffrement par défaut. Aurora DSQL détient la clé sans frais supplémentaires. Amazon Aurora DSQL déchiffre de manière transparente les données du cluster lorsque vous accédez à un cluster chiffré. Vous n’avez pas besoin de modifier votre code ni vos applications pour utiliser ou gérer des clusters chiffrés, et toutes les requêtes Aurora DSQL fonctionnent avec vos données chiffrées.
- Clé gérée par le client
-
Vous créez, détenez et gérez la clé de votre Compte AWS. Vous avez le contrôle total de la clé KMS. AWS KMS des frais s'appliquent.
Le chiffrement au repos à l'aide du Clé détenue par AWS est disponible sans frais supplémentaires. Toutefois, des AWS KMS frais s'appliquent pour les clés gérées par le client. Pour plus d’informations, consultez la page Tarification d’AWS KMS
Vous pouvez passer d’un type de clé à l’autre à tout moment. Pour plus d’informations sur les types de clés, consultez Clés gérées par le client et Clés détenues par AWS dans le Guide du développeur AWS Key Management Service .
Note
Le chiffrement au repos d'Aurora DSQL est disponible dans toutes les AWS régions où Aurora DSQL est disponible.
Chiffrement au repos dans Aurora DSQL
Amazon Aurora DSQL utilise la norme Advanced Encryption Standard à 256 bits (AES-256), pour chiffrer vos données au repos. Ce chiffrement permet de protéger vos données contre tout accès non autorisé au stockage sous-jacent. AWS KMS gère les clés de chiffrement de vos clusters. Vous pouvez utiliser les Clés détenues par AWS par défaut ou choisir d’utiliser vos propres AWS KMS Clés gérées par le client. Pour en savoir plus sur la spécification et la gestion des clés pour vos clusters Aurora DSQL, consultez Création d’un cluster Aurora DSQL chiffré et Suppression ou mise à jour d’une clé pour votre cluster Aurora DSQL.
Clés détenues par AWS
Aurora DSQL chiffre tous les clusters par défaut avec. Clés détenues par AWS Ces clés sont gratuites et peuvent être modifiées chaque année afin de protéger les ressources de votre compte. Vous n’avez pas besoin de consulter, de gérer, d’utiliser ni d’auditer ces clés. Aucune action n’est donc requise pour la protection des données. Pour plus d'informations à ce sujet Clés détenues par AWS, consultez Clés détenues par AWSle guide du AWS Key Management Service développeur.
Clés gérées par le client
Vous créez, possédez et gérez les clés gérées par le client dans votre Compte AWS. Vous avez le contrôle total de ces clés KMS, notamment de leurs politiques, de leur matériel de chiffrement, de leurs balises et de leurs alias. Pour plus d’informations sur la gestion des autorisations, consultez Clés gérées par le client dans le Guide du développeur AWS Key Management Service .
Lorsque vous spécifiez une clé gérée par le client pour le chiffrement au niveau du cluster, Aurora DSQL chiffre le cluster et toutes ses données régionales avec cette clé. Pour éviter les pertes de données et maintenir l’accès au cluster, Aurora DSQL a besoin d’accéder à votre clé de chiffrement. Si vous désactivez votre clé gérée par le client, planifiez sa suppression ou si vous avez une politique qui restreint l’accès à votre service, l’état de chiffrement de votre cluster passe à KMS_KEY_INACCESSIBLE. Lorsqu’Aurora DSQL ne peut pas accéder à la clé, les utilisateurs ne peuvent pas se connecter au cluster, l’état de chiffrement du cluster passe à KMS_KEY_INACCESSIBLE et le service perd l’accès aux données du cluster.
Pour les clusters multirégionaux, les clients peuvent configurer la clé de AWS KMS chiffrement de chaque région séparément, et chaque cluster régional utilise sa propre clé de chiffrement au niveau du cluster. Si Aurora DSQL ne peut pas accéder à la clé de chiffrement d’un homologue dans un cluster multi-régions, le statut de cet homologue devient KMS_KEY_INACCESSIBLE et il indisponible pour les opérations de lecture et d’écriture. Les autres homologues poursuivent leurs activités normales.
Note
Si Aurora DSQL ne peut pas accéder à votre clé gérée par le client, l’état de chiffrement de votre cluster passe à KMS_KEY_INACCESSIBLE. Une fois que vous aurez rétabli l’accès aux clés, le service détectera automatiquement la restauration dans les 15 minutes. Pour plus d’informations, consultez Inactivité des clusters.
Pour les clusters multi-régions, si l’accès à la clé est perdu pendant une période prolongée, le temps de restauration du cluster dépend de la quantité de données écrites alors que la clé était inaccessible.
Utilisation AWS KMS et clés de données avec Aurora DSQL
La fonctionnalité de chiffrement SQL au repos d'Aurora utilise une AWS KMS key et une hiérarchie de clés de données pour protéger les données de votre cluster.
Nous vous recommandons de planifier votre stratégie de chiffrement avant d’implémenter votre cluster dans Aurora DSQL. Si vous stockez des données sensibles ou confidentielles dans Aurora DSQL, pensez à inclure le chiffrement côté client dans votre stratégie. Vous pourrez ainsi chiffrer les données au plus près de leur origine et garantir leur protection tout au long de leur cycle de vie.
Rubriques
Utilisation AWS KMS key de s avec Aurora SQL
Le chiffrement au repos protège votre cluster Aurora DSQL sous une AWS KMS key. Par défaut, Aurora DSQL utilise une Clé détenue par AWS clé de chiffrement mutualisée créée et gérée dans un compte de service Aurora DSQL. Mais vous pouvez chiffrer vos clusters Aurora DSQL sous une clé gérée par le client dans votre Compte AWS. Vous pouvez sélectionner une autre clé KMS pour chaque cluster, même s’il participe à une configuration KMS multi-régions.
Vous sélectionnez la clé KMS pour un cluster lorsque vous créez ou mettez à jour le cluster. Vous pouvez modifier la clé KMS d’un cluster à tout moment, soit dans la console Aurora DSQL, soit en exécutant l’opération UpdateCluster. Le processus de commutation des clés ne provoque pas de durée d’indisponibilité ni de dégradation du service.
Important
Aurora DSQL ne prend en charge que les clés KMS symétriques. Vous ne pouvez pas utiliser une clé KMS asymétrique pour chiffrer vos clusters Aurora DSQL.
Une clé gérée par le client fournit les avantages suivants :
-
Vous créez et gérez la clé KMS, y compris en définissant les stratégies de clé et les politiques IAM pour contrôler l’accès à la clé KMS. Vous pouvez activer et désactiver la clé KMS, activer et désactiver la rotation automatique des clés et supprimer la clé KMS lorsqu’elle n’est plus utilisée.
-
Vous pouvez utiliser une clé gérée par le client avec un élément de clé importé ou dans un magasin de clés personnalisé que vous possédez et gérez.
-
Vous pouvez auditer le chiffrement et le déchiffrement de votre cluster Aurora DSQL en examinant les appels d'API Aurora DSQL dans les AWS KMS journaux. AWS CloudTrail
Cependant, il Clé détenue par AWS est gratuit et son utilisation n'est pas prise en compte dans les quotas de AWS KMS ressources ou de demandes. Les clés gérées par le client sont facturées pour chaque appel d’API et des quotas AWS KMS s’appliquent à ces clés KMS.
Utilisation des clés de cluster avec Aurora DSQL
Aurora DSQL utilise le code AWS KMS key pour générer et chiffrer une clé de données unique pour le cluster, connue sous le nom de clé de cluster.
La clé de cluster est utilisée en tant que clé de chiffrement de clé. Aurora DSQL utilise cette clé de cluster pour protéger les clés de chiffrement des données utilisées pour chiffrer les données du cluster. Aurora DSQL génère une clé de chiffrement des données unique pour chaque structure sous-jacente dans un cluster, mais plusieurs éléments de cluster peuvent être protégés par la même clé de chiffrement des données.
Pour déchiffrer la clé de cluster, Aurora DSQL envoie une demande AWS KMS lorsque vous accédez pour la première fois à un cluster chiffré. Pour que le cluster reste disponible, Aurora DSQL vérifie régulièrement l’accès déchiffré à la clé KMS, même lorsque vous n’accédez pas activement au cluster.
Aurora DSQL stocke et utilise la clé de cluster et les clés de chiffrement des données en dehors de AWS KMS. Il protège toutes les clés avec les clés de chiffrement Advanced Encryption Standard (AES) et 256 bits. Ensuite, il stocke les clés chiffrées avec les données chiffrées afin qu’elles soient disponibles pour déchiffrer les données de cluster à la demande.
Si vous modifiez la clé KMS de votre cluster, Aurora DSQL rechiffre la clé de cluster existante avec la nouvelle clé KMS.
Mise en cache des clés de cluster
Pour éviter d'appeler AWS KMS chaque opération Aurora DSQL, Aurora DSQL met en cache les clés de cluster en texte clair pour chaque appelant en mémoire. Si Aurora DSQL reçoit une demande pour la clé de cluster mise en cache après 15 minutes d'inactivité, il envoie une nouvelle demande AWS KMS pour déchiffrer la clé de cluster. Cet appel capturera toutes les modifications apportées aux politiques d'accès du AWS KMS key in AWS KMS ou AWS Identity and Access Management (IAM) après la dernière demande de déchiffrement de la clé de cluster.
Autoriser l'utilisation de votre SQL AWS KMS key pour Aurora
Si vous utilisez une clé gérée par le client dans votre compte pour protéger votre cluster Aurora DSQL, les politiques associées à cette clé doivent accorder à Aurora DSQL l’autorisation de l’utiliser en votre nom.
Vous avez un contrôle total des politiques sur une clé gérée par le client. Aurora DSQL n'a pas besoin d'autorisation supplémentaire pour utiliser la valeur par défaut Clé détenue par AWS afin de protéger les clusters Aurora DSQL de votre. Compte AWS
Politique de clé pour une clé gérée par le client
Lorsque vous sélectionnez une clé gérée par le client pour protéger un cluster Aurora DSQL, Aurora DSQL doit être autorisée à l'utiliser AWS KMS key au nom du principal qui effectue la sélection. Ce principal, qu'il s'agisse d'un utilisateur ou d'un rôle, doit disposer des AWS KMS key autorisations requises par Aurora DSQL. Vous pouvez fournir ces autorisations dans une stratégie de clé ou une politique IAM.
Aurora DSQL requiert au minimum les autorisations suivantes sur une clé gérée par le client :
-
kms:Encrypt -
kms:Decrypt -
kms:ReEncrypt*(pour kms: ReEncryptFrom et kms:ReEncryptTo) -
kms:GenerateDataKey -
kms:DescribeKey
Par exemple, l’exemple de politique de clé suivant fournit uniquement les autorisations requises. La politique a les effets suivants :
-
Autorise Aurora DSQL à utiliser le AWS KMS key dans des opérations cryptographiques, mais uniquement lorsqu'il agit pour le compte des principaux du compte autorisés à utiliser Aurora DSQL. Si les principaux spécifiés dans la déclaration de stratégie n’ont pas l’autorisation d’utiliser Aurora DSQL, l’appel échoue, même lorsqu’il provient du service Aurora DSQL.
-
La clé de condition
kms:ViaServicepermet l’accord d’autorisations uniquement lorsque la demande provient d’Aurora DSQL au nom des principaux répertoriés dans la déclaration de stratégie. Ces principals ne peuvent pas appeler ces opérations directement. -
Donne aux AWS KMS key administrateurs (utilisateurs pouvant assumer le
db-teamrôle) un accès en lecture seule au AWS KMS key
Avant d'utiliser un exemple de politique clé, remplacez les exemples de principes par des principes réels provenant de votre. Compte AWS
{ "Sid": "Enable dsql IAM User Permissions", "Effect": "Allow", "Principal": { "Service": "dsql.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:Encrypt", "kms:ReEncryptFrom", "kms:ReEncryptTo" ], "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:dsql:ClusterId": "w4abucpbwuxx", "aws:SourceArn": "arn:aws:dsql:us-east-2:111122223333:cluster/w4abucpbwuxx" } } }, { "Sid": "Enable dsql IAM User Describe Permissions", "Effect": "Allow", "Principal": { "Service": "dsql.amazonaws.com" }, "Action": "kms:DescribeKey", "Resource": "*", "Condition": { "StringLike": { "aws:SourceArn": "arn:aws:dsql:us-east-2:111122223333:cluster/w4abucpbwuxx" } } }
Contexte de chiffrement Aurora DSQL
Un contexte de chiffrement est un ensemble de paires clé-valeur qui contiennent des données non secrètes arbitraires. Lorsque vous incluez un contexte de chiffrement dans une demande de chiffrement de données, lie AWS KMS cryptographiquement le contexte de chiffrement aux données chiffrées. Pour déchiffrer les données, vous devez transmettre le même contexte de chiffrement.
Aurora DSQL utilise le même contexte de chiffrement dans toutes les opérations AWS KMS cryptographiques. Si vous utilisez une clé gérée par le client pour protéger votre cluster Aurora DSQL, vous pouvez utiliser le contexte de chiffrement pour identifier l'utilisation de cette clé AWS KMS key dans les enregistrements et les journaux d'audit. Elle apparaît également texte brut dans les journaux tels que ceux d’ AWS CloudTrail.
Le contexte de chiffrement peut également être utilisé comme condition d’autorisation dans les politiques.
Dans ses demandes adressées à AWS KMS, Aurora DSQL utilise un contexte de chiffrement avec une paire clé-valeur :
"encryptionContext": { "aws:dsql:ClusterId": "w4abucpbwuxx" },
La paire clé-valeur identifie le cluster chiffrée par Aurora DSQL. La clé est aws:dsql:ClusterId. La valeur est l’identifiant du cluster.
Surveillance de l’interaction d’Aurora DSQL avec AWS KMS
Si vous utilisez une clé gérée par le client pour protéger vos clusters Aurora DSQL, vous pouvez utiliser AWS CloudTrail les journaux pour suivre les demandes qu'Aurora DSQL envoie en votre AWS KMS nom.
Développez les sections suivantes pour découvrir comment Aurora DSQL utilise les AWS KMS opérations GenerateDataKey etDecrypt.
Lorsque vous activez le chiffrement au repos sur un cluster, Aurora DSQL crée une clé de cluster unique. Il envoie une GenerateDataKey demande AWS KMS qui spécifie AWS KMS key
le cluster.
L’événement qui enregistre l’opération GenerateDataKey est similaire à l’exemple d’événement suivant. L’utilisateur est le compte de service Aurora DSQL. Les paramètres incluent l'Amazon Resource Name (ARN) du AWS KMS key, un spécificateur de clé qui nécessite une clé de 256 bits, et le contexte de chiffrement qui identifie le cluster.
{ "eventVersion": "1.11", "userIdentity": { "type": "AWSService", "invokedBy": "dsql.amazonaws.com" }, "eventTime": "2025-05-16T18:41:24Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKey", "awsRegion": "us-east-1", "sourceIPAddress": "dsql.amazonaws.com", "userAgent": "dsql.amazonaws.com", "requestParameters": { "encryptionContext": { "aws:dsql:ClusterId": "w4abucpbwuxx" }, "keySpec": "AES_256", "keyId": "arn:aws:kms:us-east-1:982127530226:key/8b60dd9f-2ff8-4b1f-8a9c-bf570cbfdb5e" }, "responseElements": null, "requestID": "2da2dc32-d3f4-4d6c-8a41-aff27cd9a733", "eventID": "426df0a6-ba56-3244-9337-438411f826f4", "readOnly": true, "resources": [ { "accountId": "AWS Internal", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-east-1:982127530226:key/8b60dd9f-2ff8-4b1f-8a9c-bf570cbfdb5e" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "sharedEventID": "f88e0dd8-6057-4ce0-b77d-800448426d4e", "vpcEndpointId": "AWS Internal", "vpcEndpointAccountId": "vpce-1a2b3c4d5e6f1a2b3", "eventCategory": "Management" }
Lorsque vous accédez à une cluster Aurora DSQL chiffré, Aurora DSQL a besoin de déchiffrer la clé de cluster pour pouvoir déchiffrer les clés situées au-dessous dans la hiérarchie. Il déchiffre ensuite les données du cluster. Pour déchiffrer la clé du cluster, Aurora DSQL envoie une Decrypt demande AWS KMS indiquant le nom du AWS KMS key cluster.
L’événement qui enregistre l’opération Decrypt est similaire à l’exemple d’événement suivant. L'utilisateur est le principal utilisateur Compte AWS qui accède au cluster. Les paramètres incluent la clé de cluster chiffrée (sous forme de blob de texte chiffré) et le contexte de chiffrement identifiant le cluster. AWS KMS dérive l'identifiant du AWS KMS key
à partir du texte chiffré.
{ "eventVersion": "1.05", "userIdentity": { "type": "AWSService", "invokedBy": "dsql.amazonaws.com" }, "eventTime": "2018-02-14T16:42:39Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-east-1", "sourceIPAddress": "dsql.amazonaws.com", "userAgent": "dsql.amazonaws.com", "requestParameters": { "keyId": "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "encryptionContext": { "aws:dsql:ClusterId": "w4abucpbwuxx" }, "encryptionAlgorithm": "SYMMETRIC_DEFAULT" }, "responseElements": null, "requestID": "11cab293-11a6-11e8-8386-13160d3e5db5", "eventID": "b7d16574-e887-4b5b-a064-bf92f8ec9ad3", "readOnly": true, "resources": [ { "ARN": "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "accountId": "AWS Internal", "type": "AWS::KMS::Key" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "sharedEventID": "d99f2dc5-b576-45b6-aa1d-3a3822edbeeb", "vpcEndpointId": "AWS Internal", "vpcEndpointAccountId": "vpce-1a2b3c4d5e6f1a2b3", "eventCategory": "Management" }
Création d’un cluster Aurora DSQL chiffré
Tous les clusters Aurora DSQL sont chiffrés au repos. Par défaut, les clusters utilisent une Clé détenue par AWS clé gratuite, ou vous pouvez spécifier une AWS KMS clé personnalisée. Procédez comme suit pour créer votre cluster chiffré à partir du AWS Management Console ou du AWS CLI.
Suppression ou mise à jour d’une clé pour votre cluster Aurora DSQL
Vous pouvez utiliser le AWS Management Console ou AWS CLI pour mettre à jour ou supprimer les clés de chiffrement des clusters existants dans Amazon Aurora DSQL. Si vous supprimez une clé sans la remplacer, Aurora DSQL utilise la Clé détenue par AWS par défaut. Procédez comme suit pour mettre à jour les clés de chiffrement d’un cluster existant à partir de la console Aurora DSQL ou de l’ AWS CLI.
Note
Si vous choisissez de posséder et de gérer votre propre clé, assurez-vous que la stratégie de clé de KMS est correctement définie. Pour plus d’informations et d’exemples, consultez Politique de clé pour une clé gérée par le client.
Considérations relatives au chiffrement avec Aurora DSQL
-
Aurora DSQL chiffre toutes les données au repos du cluster. Vous ne pouvez pas désactiver ce chiffrement ni chiffrer uniquement certains éléments d’un cluster.
-
AWS Backup chiffre vos sauvegardes et tous les clusters restaurés à partir de ces sauvegardes. Vous pouvez chiffrer vos données de sauvegarde à AWS Backup l'aide de la clé AWS détenue ou d'une clé gérée par le client.
-
Les états de protection des données suivants sont activés pour Aurora DSQL :
-
Données au repos : Aurora DSQL chiffre toutes les données statiques sur les supports de stockage persistants
-
Données en transit : Aurora DSQL chiffre toutes les communications à l’aide du protocole TLS (Transport Layer Security) par défaut
-
-
Lorsque vous passez à une autre clé, nous vous recommandons de conserver la clé d'origine activée jusqu'à ce que la transition soit terminée. AWS a besoin de la clé d'origine pour déchiffrer les données avant de les chiffrer avec la nouvelle clé. Le processus est terminé lorsque l’état
encryptionStatusdu cluster estENABLEDet que vous voyezkmsKeyArnsur la nouvelle clé gérée par le client. -
Lorsque vous désactivez votre clé gérée par le client ou que vous révoquez l’accès à Aurora DSQL pour utiliser votre clé, votre cluster passe à l’état
IDLE. -
L'API SQL AWS Management Console et Amazon Aurora utilisent des termes différents pour désigner les types de chiffrement :
-
AWS Console — Dans la console, vous verrez
KMSquand vous utilisez une clé gérée par le client etDEFAULTquand vous utilisez un Clé détenue par AWS. -
API : l’API Amazon Aurora DSQL utilise
CUSTOMER_MANAGED_KMS_KEYpour les clés gérées par le client etAWS_OWNED_KMS_KEYpour les Clés détenues par AWS.
-
-
Si vous ne spécifiez pas de clé de chiffrement lors de la création du cluster, Aurora DSQL chiffre automatiquement vos données à l'aide du. Clé détenue par AWS
-
Vous pouvez à tout moment passer d'une Clé détenue par AWS clé gérée par le client à une clé gérée par le client. Effectuez cette modification à l'aide de AWS Management Console AWS CLI, ou de l'API SQL Amazon Aurora.