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 utilisateur 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éduction de la charge opérationnelle liée à la protection des données sensibles
-
Développez des applications sensibles à la sécurité qui répondent aux exigences réglementaires et de conformité strictes en matière de chiffrement
-
Ajoutez une couche supplémentaire de protection des données en sécurisant toujours vos données dans un cluster crypté
-
Respectez 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 répondent aux exigences réglementaires et de conformité strictes en matière de chiffrement. 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 en savoir plus sur les types et les états de clés, consultez AWS Key Management Service les concepts du Guide du AWS Key Management Service développeur. 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 pour vous. 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 ou 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, voir Clés gérées par le client et Clés détenues par AWSdans le Guide du AWS Key Management Service développeur.
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 de chiffrement avancée 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 la valeur par défaut Clés détenues par AWS ou choisir d'utiliser la vôtre 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é etSuppression 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 peuvent être utilisées gratuitement et sont renouvelé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 ou 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, détenez et gérez les clés gérées par les clients 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 la section Clés gérées par le client dans le Guide du AWS Key Management Service développeur.
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 multirégional, le statut de cet homologue devient KMS_KEY_INACCESSIBLE
indisponible pour les opérations de lecture et d'écriture. Les autres pairs 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 la section Cluster idling.
Pour les clusters multirégionaux, 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 plan. 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 SQL Aurora sous un 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 clé KMS différente pour chaque cluster, même s'il participe à une configuration multirégionale.
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 utilisant l'UpdateCluster
opération. Le processus de changement de clé ne nécessite pas de temps d'arrêt 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 de clé KMS asymétrique pour chiffrer vos clusters Aurora DSQL.
Une clé gérée par le client offre les avantages suivants.
-
Vous créez et gérez la clé KMS, notamment en définissant les politiques clés 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 AWS KMS des quotas s'appliquent à ces clés.
Utilisation de 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 comme clé de chiffrement. 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 de données unique pour chaque structure sous-jacente d'un cluster, mais plusieurs éléments du cluster peuvent être protégés par la même clé de chiffrement de 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. Il stocke ensuite les clés chiffrées avec les données chiffrées afin qu'elles soient disponibles pour déchiffrer les données du 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 du 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 relatives à cette clé doivent autoriser Aurora DSQL à l'utiliser en votre nom.
Vous avez un contrôle total sur les politiques relatives à 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 politique clé ou une politique IAM.
Aurora DSQL nécessite 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 politique ne sont pas autorisés à utiliser Aurora DSQL, l'appel échoue, même s'il provient du service Aurora DSQL.
-
La clé de
kms:ViaService
condition autorise les autorisations uniquement lorsque la demande provient d'Aurora DSQL pour le compte des principaux mentionnés dans la déclaration de politique. Ces principals ne peuvent pas appeler ces opérations directement. -
Donne aux AWS KMS key administrateurs (utilisateurs pouvant assumer le
db-team
rô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 SQL Aurora
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. Il apparaît également en texte clair dans des journaux tels que ceux contenus dans 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 qu'Aurora DSQL est en train de chiffrer. La clé est aws:dsql:ClusterId
. La valeur est l'identifiant du cluster.
Surveillance de l'interaction SQL d'Aurora 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 à un cluster Aurora DSQL chiffré, Aurora DSQL doit déchiffrer la clé du cluster afin de pouvoir déchiffrer les clés situées en 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é par défaut Clé détenue par AWS. Procédez comme suit pour mettre à jour les clés de chiffrement d'un cluster existant à partir de la console Aurora DSQL ou du AWS CLI.
Note
Si vous choisissez de posséder et de gérer votre propre clé, assurez-vous de définir la politique de clé KMS de manière appropriée. Pour des exemples et de plus amples informations, consultezPolitique 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 du cluster au repos. Vous ne pouvez pas désactiver ce chiffrement ou 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 le cluster l'
encryptionStatus
estENABLED
et que vous voyezkmsKeyArn
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 en
IDLE
état. -
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
KMS
quand vous utilisez une clé gérée par le client etDEFAULT
quand vous utilisez un Clé détenue par AWS. -
API — L'API SQL Amazon Aurora est utilisée
CUSTOMER_MANAGED_KMS_KEY
pour les clés gérées par le client etAWS_OWNED_KMS_KEY
pour 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.