View a markdown version of this page

Chiffrement Amazon RDS resources - Amazon Relational Database Service

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 Amazon RDS resources

Amazon RDS peut chiffrer vos instances de base de données Amazon RDS. Les données chiffrées au repos incluent le stockage sous-jacent des instances de base de données, ses journaux, ses sauvegardes automatisées, ses répliques de lecture et ses instantanés.

Les instances de bases de données cryptées Amazon RDS utilisent la norme industrielle AES-256 algorithme de chiffrement pour chiffrer vos données sur le serveur qui héberge vos instances de base de données Amazon RDS.

Une fois vos données cryptées, Amazon RDS gère l'authentification de l'accès et le déchiffrement de vos données de manière transparente avec un impact minimal sur les performances. Vous n’avez pas besoin de modifier vos applications clientes de base de données pour utiliser le chiffrement.

Note

Pour les bases de données chiffrées et non chiffrées les instances, les données qui transitent entre la source et les répliques lues sont chiffrées, même lors de la réplication sur AWS Régions.

Présentation du chiffrement des ressources Amazon RDS

Les instances de base de données chiffrée Amazon RDS fournissent une couche supplémentaire de protection des données en sécurisant vos données contre tout accès non autorisé au stockage sous-jacent. Vous pouvez utiliser le chiffrement Amazon RDS for renforcer la protection des données de vos applications déployées dans le cloud et pour satisfaire aux exigences de conformité pour le chiffrement au repos. Pour une instance de base de données chiffrée Amazon RDS, l’ensemble des journaux, sauvegardes et instantanés sont chiffrés. Pour plus d’informations sur la disponibilité et les limites du chiffrement, consultez Disponibilité de Amazon RDS chiffrement et Limites de Amazon RDS base de données cryptée Instances.

Amazon RDS utilise un AWS Key Management Service clé pour chiffrer ces ressources. AWS KMS combine du matériel et des logiciels sécurisés et hautement disponibles pour fournir un système de gestion des clés adapté au cloud. Vous pouvez utiliser un Clé gérée par AWS, ou vous pouvez créer des clés gérées par le client.

Lorsque vous créez une instance de base de données chiffrée, vous pouvez choisir une clé gérée par le client ou la Clé gérée par AWS pour Amazon RDS pour chiffrer votre instance de base de données. Si vous ne spécifiez pas l'identifiant de clé pour une clé gérée par le client, Amazon RDS utilise le Clé gérée par AWS pour votre nouvelle instance de base de données. Amazon RDS crée un Clé gérée par AWS pour Amazon RDS pour votre AWS compte. Votre AWS le compte a un autre Clé gérée par AWS pour Amazon RDS pour chacun AWS Région.

Pour gérer les clés gérées par le client qui sont utilisées pour le chiffrement et le déchiffrement de vos ressources Amazon RDS, vous utilisez AWS Key Management Service (AWS KMS).

En utilisant AWS KMS, vous pouvez créer des clés gérées par le client et définir les politiques qui contrôlent l'utilisation de ces clés gérées par le client. AWS KMS appuis CloudTrail, afin que vous puissiez auditer l'utilisation des clés KMS pour vérifier que les clés gérées par le client sont utilisées correctement. Vous pouvez utiliser les clés gérées par vos clients avec Amazon Aurora et les services pris en charge AWS des services tels qu'Amazon S3, Amazon EBS et Amazon Redshift. Pour obtenir la liste des services intégrés à AWS KMS, voir AWS Intégration des services. Quelques considérations relatives à l’utilisation des clés KMS :

  • Une fois que vous avez créé une instance de base de données chiffrée, vous ne pouvez pas modifier la clé KMS utilisée par cette instance de base de données. Vous devez donc prendre soin de déterminer vos besoins en termes de clés KMS avant de créer votre instance de base de données chiffrée.

    Si vous devez modifier la clé de chiffrement de votre instance de base de données, créez un instantané manuel de votre instance et activez le chiffrement lors de la copie de l’instantané. Pour plus d’informations, consultez cet article re:Post Knowledge.

    Vous pouvez également utiliser un blue/green déploiement pour créer un environnement vert chiffré avec une clé KMS différente de celle de l'environnement bleu. Utilisez ce déploiement pour chiffrer une instance de base de données non chiffrée ou pour modifier la clé KMS d'une instance de base de données chiffrée. Pour plus d'informations sur blue/green déploiements, voir Limites et considérations relatives à Amazon RDS blue/green déploiements.

  • Si vous copiez un instantané chiffré, vous pouvez utiliser une clé KMS différente pour chiffrer l’instantané cible que celle utilisée pour chiffrer l’instantané source.

  • Vous pouvez chiffrer une réplique en lecture d'une instance de base de données chiffrée Amazon RDS avec la même clé KMS que l'instance de base de données source ou avec une clé KMS différente. La réplique lue peut se trouver dans le même AWS Région en tant que source ou dans une autre région. Pour utiliser une autre clé KMS, spécifiez-la à l'aide du KmsKeyId paramètre du CreateDBInstanceReadReplica fonctionnement de l'API, ou le --kms-key-id option du create-db-instance-read-replica AWS CLI commande. Si vous ne spécifiez pas de clé KMS, la réplique en lecture utilise la même clé KMS que l'instance de base de données source.

  • Les clés KMS sont spécifiques à AWS Région dans laquelle ils ont été créés. Pour une réplique lue dans un autre AWS Région, spécifiez une clé KMS dans la région de destination.

  • Vous ne pouvez pas partager un instantané chiffré à l'aide du Clé gérée par AWS de la AWS compte qui a partagé l'instantané.

  • Amazon RDS prend également en charge le chiffrement d’une instance de base de données Oracle ou SQL Server à l’aide du chiffrement TDE (Transparent Data Encryption). Le chiffrement TDE peut être utilisé avec le chiffrement RDS au repos, bien que l’utilisation simultanée de ces deux chiffrements puisse affecter quelque peu les performances de votre base de données. Vous devez gérer des clés différentes pour chaque méthode de chiffrement. Pour plus d’informations sur TDE, consultez Oracle Transparent Data Encryption ou Prise en charge de Transparent Data Encryption dans SQL Server.

Important

Amazon RDS perd l’accès à la clé KMS pour une instance de base de données lorsque vous désactivez la clé KMS. Si vous perdez l’accès à une clé KMS, l’instance de base de données cryptée passe à l’état inaccessible-encryption-credentials-recoverable 2 heures après la détection dans les instances où les sauvegardes sont activées. L’instance de base de données reste dans cet état pendant sept jours, pendant lesquels elle est arrêtée. Les appels d’API effectués vers l’instance de base de données pendant cette période risquent d’échouer. Pour restaurer l’instance de base de données, activez la clé KMS, puis redémarrez l’instance. Activez la clé KMS à partir du Console de gestion AWS, AWS CLI, ou API RDS. Redémarrez l'instance de base de données à l'aide du AWS CLI commande instance de base de données de démarrage ou Console de gestion AWS.

L’état inaccessible-encryption-credentials-recoverable s’applique uniquement aux instances de base de données qui peuvent être interrompues. Cet état récupérable ne s’applique pas aux instances qui ne peuvent pas s’arrêter, telles que les réplicas en lecture et les instances contenant des réplicas en lecture. Pour plus d’informations, consultez Limites liées à l'arrêt de votre instance de base de données.

Si l’instance de base de données n’est pas récupérée dans un délai de sept jours, elle passe à l’état inaccessible-encryption-credentials terminal. Dans cet état, l'instance de base de données n'est plus utilisable et vous ne pouvez la restaurer qu'à partir d'un instantané ou d'une sauvegarde de base de données.

Lors de la création d’une instance de base de données, Amazon RDS vérifie si le principal appelant dispose a accès à la clé KMS, puis génère une autorisation à partir de cette clé KMS, qu’il utilisera pendant toute la durée de vie de l’instance de base de données. La révocation de l’accès du principal appelant à la clé KMS n’affecte pas la base de données en cours d’exécution. Lorsque vous utilisez des clés KMS dans des scénarios entre comptes, tels que la copie d’un instantané sur un autre compte, la clé KMS doit être partagée avec l’autre compte. Si vous créez une instance de base de données à partir de l’instantané sans spécifier de clé KMS différente, la nouvelle instance utilise la clé KMS du compte source. Le fait de révoquer l’accès à la clé après la création de l’instance de base de données n’a aucun impact sur cette instance. Toutefois, la désactivation de la clé affecte toutes les instances de base de données chiffrées avec cette clé. Afin d’éviter cette situation, indiquez une clé différente au moment de la copie de l’instantané.

Les instances de base de données dont les sauvegardes sont désactivées restent disponibles jusqu’à ce que les volumes soient détachés de l’hôte lors de la modification d’une instance ou d’une restauration. RDS place les instances dans l’état inaccessible-encryption-credentials-recoverable ou inaccessible-encryption-credentials, selon le cas.

Une instance de base de données dans le inaccessible-encryption-credentials L'état ne peut pas être restauré sur place. Amazon RDS crée donc automatiquement un instantané final de la base de données lorsqu'une instance de base de données passe à cet état. Ceci est similaire à l'instantané final que vous pouvez demander lorsque vous supprimez une instance de base de données.

L'instantané capture les données écrites après votre dernière sauvegarde automatique. Cela inclut les écritures effectuées alors que la clé KMS était inaccessible. Vous pouvez utiliser le snapshot pour récupérer des données qui seraient autrement perdues. Amazon RDS le crée sous la forme d'un instantané de base de données manuel nommé rds-final:db-instance-identifier-resource-id, et il apparaît à côté de vos autres instantanés de base de données.

L'instantané final est conservé jusqu'à ce que vous le supprimiez, et il entraîne des frais de stockage de sauvegarde de la même manière qu'un instantané de base de données manuel. Comme les frais continuent jusqu'à ce que vous le supprimiez, supprimez le cliché dès que vous n'en avez plus besoin. Pour plus d'informations, consultez Tarification d'Amazon RDS.

Amazon RDS tente de créer un instantané final lorsqu'une instance de base de données passe au inaccessible-encryption-credentials indiquer dans l'une des situations suivantes :

  • La clé KMS devient inaccessible et l'instance de base de données ne peut pas être arrêtée. Elle passe donc directement au inaccessible-encryption-credentials état. Cette situation inclut les répliques en lecture et les instances de base de données contenant des répliques en lecture.

  • L'instance de base de données reste dans inaccessible-encryption-credentials-recoverable état pendant sept jours sans être guéri.

  • L'instance de base de données nécessite une opération qu'Amazon RDS ne peut pas effectuer car la clé KMS n'est pas accessible. Les exemples incluent le remplacement de l'hôte sous-jacent et la mise à l'échelle du stockage.

Amazon RDS crée l'instantané final uniquement lorsque toutes les conditions suivantes sont réunies pour l'instance de base de données :

  • Des volumes de données sont attachés à l'instance de base de données. Une instance de base de données sans stockage attaché, telle qu'une instance qui a échoué lors de la création ou qui est déjà en cours de suppression, n'a aucune donnée à capturer.

  • L'instance de base de données n'est pas membre d'un Multi-AZ Cluster de bases de données ou cluster de base de données Aurora. Ils utilisent des sauvegardes au niveau du cluster plutôt que des instantanés d'instance individuels.

  • Les données de l'instance de base de données sont complètes et ne changent pas. Amazon RDS ne crée pas de cliché final lorsqu'une instance de base de données se trouve dans l'un des états suivants :

    • En cours de création

    • En cours de restauration à partir d'un snapshot ou d'une sauvegarde de base de données

    • En cours de migration

    • Faire rejouer les journaux de transactions

    • Faire l'objet d'un correctif hors ligne dans le cadre d'une restauration

    • En cours de préparation ou de configuration en tant que réplique de lecture

Les sauvegardes automatisées n'ont pas besoin d'être activées. Amazon RDS crée également un instantané final pour les instances de base de données sur AWS Outposts, et pour les instances de base de données dans d'autres états de terminal tant que leur stockage est intact.

Pour effectuer une restauration à partir de l'instantané final, réactivez d'abord la clé KMS, car l'instantané est chiffré avec la même clé que l'instance de base de données source. Pour plus d’informations, consultez AWS KMS key gestion. Restaurez ensuite l'instantané comme vous le feriez pour n'importe quel autre instantané de base de données. Pour la liste complète des paramètres, voir restore-db-instance-from-db-snapshot dans le AWS CLI Référence de commande.

Exemple Restaurer une instance de base de données à partir de l'instantané de base de données final

Pour Linux, macOS ou Unix :

aws rds restore-db-instance-from-db-snapshot \ --db-instance-identifier mydb-restored \ --db-snapshot-identifier rds-final:mydb-db-abcdefghijklmnop

Pour Windows :

aws rds restore-db-instance-from-db-snapshot ^ --db-instance-identifier mydb-restored ^ --db-snapshot-identifier rds-final:mydb-db-abcdefghijklmnop

Bien que les sauvegardes automatisées ne soient pas nécessaires, activez-les pour les instances de bases de données chiffrées afin qu'une restauration instantanée soit disponible en plus de l'instantané final.

Pour plus d’informations sur les clés KMS, consultez AWS KMS keys dans le Guide du développeur AWS Key Management Service et AWS KMS key gestion.

Chiffrement d’une instance de base de données

Pour chiffrer une nouvelle instance de base de données, sélectionnez Enable encryption (Activer le chiffrement) dans la console Amazon RDS. Pour plus d’informations sur la création d’une instance de base de données, consultez Création d'une instance de base de données Amazon RDS.

Si vous utilisez créer une instance de base de données AWS CLI commande pour créer une instance de base de données chiffrée, définissez la --storage-encrypted paramètre. Si vous utilisez l’opération d’API CreateDBInstance, affectez au paramètre StorageEncrypted la valeur true.

Si vous utilisez AWS CLI create-db-instance commande pour créer une instance de base de données chiffrée avec une clé gérée par le client, définissez --kms-key-id paramètre de n'importe quel identifiant de clé pour la clé KMS. Si vous utilisez l’opération Amazon RDS de l’API CreateDBInstance, définissez le paramètre KmsKeyId sur n’importe quel identifiant de clé pour la clé KMS. Pour utiliser une clé gérée par le client dans un autre AWS compte, spécifiez l'ARN clé ou l'alias ARN.

Détermination si le chiffrement est activé pour une instance de base de données

Vous pouvez utiliser Console de gestion AWS, AWS CLI, ou l'API RDS pour déterminer si le chiffrement au repos est activé pour une instance de base de données.

Pour déterminer si le chiffrement au repos est activé pour une instance de base de données
  1. Connectez-vous au Console de gestion AWS et ouvrez la console Amazon RDS à l'adresse https://console.aws.amazon.com/rds/.

  2. Dans la panneau de navigation, choisissez Bases de données.

  3. Sélectionnez le nom de l’instance de base de données que vous souhaitez vérifier pour afficher ses détails.

  4. Cliquez sur l’onglet Configuration et cochez la case Encryption (Chiffrement) sous Storage (Stockage).

    Il indique Enabled (Activé) ou Not enabled (Non activé).

    Vérification du chiffrement au repos pour une instance de base de données.

Pour déterminer si le chiffrement au repos est activé pour une instance de base de données à l'aide du AWS CLI, appelez le instances de base de données décrites commande avec l'option suivante :

  • --db-instance-identifier : nom de l’instance de base de données.

L’exemple suivant utilise une requête pour renvoyer TRUE ou FALSE concernant le chiffrement au repos pour l’instance de base de données mydb.

Exemple
aws rds describe-db-instances --db-instance-identifier mydb --query "*[].{StorageEncrypted:StorageEncrypted}" --output text

Pour déterminer si le chiffrement au repos est activé pour une instance de base de données à l’aide de l’API Amazon RDS, appelez l’opération DescribeDBInstances avec le paramètre suivant :

  • DBInstanceIdentifier : nom de l’instance de base de données.

Disponibilité de Amazon RDS chiffrement

Le chiffrement Amazon RDS est actuellement disponible pour tous les moteurs de base de données et types de stockage.

Le chiffrement Amazon RDS est disponible pour la plupart des classes d’instance de base de données. Le tableau suivant répertorie les classes d’instance de base de données qui ne prennent pas en charge le chiffrement Amazon RDS :

Type d’instance Classe d’instance

Polyvalent (M1)

db.m1.small

db.m1.medium

db.m1.large

db.m1.xlarge

Mémoire optimisée (M2)

db.m2.xlarge

db.m2.2xlarge

db.m2.4xlarge

Capacité extensible (T2)

db.t2.micro

Chiffrement en transit

Chiffrement au niveau de la couche physique

Toutes les données circulent Régions AWS au-dessus de AWS le réseau mondial est automatiquement chiffré au niveau de la couche physique avant son départ AWS installations sécurisées. Tout le trafic entre zones de disponibilité est chiffré. Des couches supplémentaires de chiffrement, y compris celles présentées dans cette section, peuvent fournir des protections supplémentaires.

Chiffrement assuré par le peering Amazon VPC et le peering interrégional Transit Gateway

Tout le trafic entre régions qui utilise un appairage VPC Amazon et Transit Gateway est automatiquement chiffré en bloc quand il quitte une région. Une couche de chiffrement supplémentaire est automatiquement fournie au niveau de la couche physique pour l'ensemble du trafic avant son départ AWS installations sécurisées.

Chiffrement entre les instances

AWS fournit une connectivité sécurisée et privée entre les instances de base de données de tous types. En outre, certains types d’instances utilisent les capacités de déchargement du matériel du système Nitro sous-jacent pour chiffrer automatiquement le trafic en transit entre instances. Ce chiffrement utilise des algorithmes de chiffrement authentifié avec données associées (AEAD), avec un chiffrement 256 bits. Il n’y a aucun impact sur les performances du réseau. Pour prendre en charge ce chiffrement supplémentaire du trafic en transit entre les instances, les exigences suivantes doivent être satisfaites :

  • Les instances utilisent les types d’instance suivants :

    • Usage général : M6i, M6id, M6in, M6idn, M7g

    • Optimisé pour la mémoire : R6i, R6id, R6in, R6idn, R7g, X2idn, X2iedn, X2iezn

  • Les instances se trouvent dans la même Région AWS.

  • Les instances se trouvent dans le même VPC ou dans des VPC appairés, et le trafic ne passe pas par un service ou un périphérique de réseau virtuel, tel qu’un équilibreur de charge ou une passerelle de transit.

Limites de Amazon RDS base de données cryptée Instances

Les limitations suivantes existent pour les instances de base de données chiffrées Amazon RDS :

  • Vous ne pouvez chiffrer une instance de base de données Amazon RDS que lorsque vous la créez, et non après sa création.

    Cependant, parce que vous pouvez chiffrer une copie d’un instantané non chiffré, vous pouvez ajouter le chiffrement efficacement à une instance de base de données non chiffrée. Autrement dit, vous pouvez créer un instantané de votre instance de base de données et ensuite créer une copie chiffrée de l’instantané. Vous pouvez ensuite restaurer une instance de base de données à partir de l’instantané chiffré et vous aurez une copie chiffrée de votre instance de base de données d’origine. Pour plus d’informations, consultez Copie d’un instantané de base de données pour Amazon RDS.

  • Vous ne pouvez pas désactiver le chiffrement d’une instance de base de données chiffrée.

  • Vous ne pouvez pas créer d’instantané chiffré de cluster d’instances.

  • Un instantané d’instance de bases de données chiffrées doit être chiffré à l’aide de la même clé KMS que l’instance de bases de données.

  • Vous ne pouvez pas avoir un réplica en lecture chiffré d’une instance de base de données non chiffrée ni un réplica en lecture non chiffré d’une instance de base de données chiffrée.

  • Les réplicas en lecture chiffrés doivent être chiffrés avec la même clé KMS que l’instance de base de données source lorsque tous deux se trouvent dans la même région  AWS .

  • Vous ne pouvez pas restaurer un instantané non chiffré ou une sauvegarde non chiffrée vers une instance de base de données chiffrée.

  • Pour copier un instantané chiffré à partir d'un AWS De région à l'autre, vous devez spécifier la clé KMS dans la destination AWS Région. Cela est dû au fait que les clés KMS sont spécifiques à AWS Région dans laquelle ils ont été créés.

    L'instantané source reste chiffré pendant tout le processus de copie. Amazon RDS utilise un chiffrement d’enveloppe pour protéger les données pendant le processus de copie. Pour plus d’informations sur le chiffrement d’enveloppe, consultez Chiffrement d’enveloppe dans le Guide du développeur AWS Key Management Service .

  • Vous ne pouvez pas déchiffrer un cluster chiffrées. Vous pouvez cependant exporter des données à partir d’un cluster et importer les données dans un cluster non chiffrées.