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.
Sauvegarde et restauration TDE des certificats sur RDS for SQL Server
RDSfor SQL Server fournit des procédures stockées pour la sauvegarde, la restauration et la suppression des TDE certificats. RDSfor SQL Server fournit également une fonction permettant de visualiser les TDE certificats utilisateur restaurés.
Les TDE certificats utilisateur sont utilisés RDS pour restaurer des bases de données sur des SQL serveurs sur site et TDE allumés. Ces certificats ont le préfixe UserTDECertificate_
. Après avoir restauré les bases de données, et avant de les rendre utilisables, RDS modifie les bases de données TDE activées pour utiliser les certificats RDS générésTDE. Ces certificats ont le préfixe RDSTDECertificate
.
TDELes certificats utilisateur restent sur l'instance RDS de base de données SQL du serveur, sauf si vous les supprimez à l'aide de la procédure rds_drop_tde_certificate
stockée. Pour de plus amples informations, veuillez consulter Supprimer les TDE certificats restaurés.
Vous pouvez utiliser un TDE certificat utilisateur pour restaurer d'autres bases de données à partir de l'instance de base de données source. Les bases de données à restaurer doivent utiliser le même TDE certificat et être TDE activées. Il n'est pas nécessaire d'importer (restaurer) à nouveau le même certificat.
Rubriques
Prérequis
Avant de pouvoir sauvegarder ou restaurer TDE des certificats sur RDS for SQL Server, assurez-vous d'effectuer les tâches suivantes. Les trois premières tâches sont décrites dans Configuration pour les sauvegarde et restauration natives.
-
Créez des compartiments Amazon S3 pour y stocker les fichiers à sauvegarder et à restaurer.
Nous vous recommandons d'utiliser des buckets distincts pour les sauvegardes de base de données et pour les sauvegardes de TDE certificats.
-
Créez un IAM rôle pour la sauvegarde et la restauration de fichiers.
Le IAM rôle doit être à la fois un utilisateur et un administrateur pour AWS KMS key.
Outre les autorisations requises pour la sauvegarde et la restauration natives SQL du serveur, le IAM rôle nécessite également les autorisations suivantes :
-
s3:GetBucketACL
,s3:GetBucketLocation
ets3:ListBucket
sur la ressource du compartiment S3 -
s3:ListAllMyBuckets
sur la ressource*
-
-
Ajoutez l'option
SQLSERVER_BACKUP_RESTORE
à un groupe d'options sur votre instance de base de données.Elle vient s'ajouter à l'option
TRANSPARENT_DATA_ENCRYPTION
(TDE
). -
Vérifiez que vous disposez d'une KMS clé de chiffrement symétrique. Vous avez les options suivantes :
-
Si votre compte possède déjà une KMS clé, vous pouvez l'utiliser. Aucune action supplémentaire n'est nécessaire.
-
Si votre compte ne possède pas de KMS clé de chiffrement symétrique, créez-en une KMS en suivant les instructions de la section Création de clés du guide du AWS Key Management Service développeur.
-
-
Activez l'intégration Amazon S3 pour transférer des fichiers entre l'instance de base de données et Amazon S3.
Pour plus d'informations sur l'activation de l'intégration d'Amazon S3, consultez Intégration d'une instance de base de données Amazon RDS for SQL Server à Amazon S3.
Limites
L'utilisation de procédures stockées pour sauvegarder et restaurer TDE des certificats présente les limites suivantes :
-
Les options
SQLSERVER_BACKUP_RESTORE
etTRANSPARENT_DATA_ENCRYPTION
(TDE
) doivent être ajoutées au groupe d'options que vous avez associé à votre instance de base de données. -
TDEla sauvegarde et la restauration de certificats ne sont pas prises en charge sur les instances de base de données multi-AZ.
-
L'annulation des tâches de sauvegarde et de restauration de TDE certificats n'est pas prise en charge.
-
Vous ne pouvez pas utiliser de TDE certificat utilisateur pour TDE chiffrer une autre base de données sur votre instance de base de données RDS for SQL Server. Vous pouvez l'utiliser pour restaurer uniquement les autres bases de données de l'instance de base de données source qui ont été TDE activées et qui utilisent le même TDE certificat.
-
Vous ne pouvez supprimer que les TDE certificats utilisateur.
-
Le nombre maximum de TDE certificats utilisateur pris en charge sur RDS est de 10. Si le nombre est supérieur à 10, supprimez les TDE certificats non utilisés et réessayez.
-
Le nom de certificat ne peut pas être vide ou null.
-
Lors de la restauration d'un certificat, le nom du certificat ne peut pas inclure le mot-clé
RDSTDECERTIFICATE
et doit commencer par le préfixeUserTDECertificate_
. -
Le paramètre
@certificate_name
peut inclure uniquement les caractères suivants : a-z, 0-9, @, $, # et trait de soulignement (_). -
L'extension de fichier de
@certificate_file_s3_arn
doit être .cer (insensible à la casse). -
L'extension de fichier de
@private_key_file_s3_arn
doit être .pvk (insensible à la casse). -
Les métadonnées S3 du fichier de clé privée doivent inclure la balise
x-amz-meta-rds-tde-pwd
. Pour de plus amples informations, veuillez consulter Sauvegarde et restauration des TDE certificats pour les bases de données locales.
Sauvegarde d'un TDE certificat
Pour sauvegarder les TDE certificats, utilisez la procédure rds_backup_tde_certificate
stockée. Elle possède la syntaxe suivante.
EXECUTE msdb.dbo.rds_backup_tde_certificate @certificate_name='UserTDECertificate_
certificate_name
| RDSTDECertificatetimestamp
', @certificate_file_s3_arn='arn:aws:s3:::bucket_name
/certificate_file_name.cer
', @private_key_file_s3_arn='arn:aws:s3:::bucket_name
/key_file_name.pvk
', @kms_password_key_arn='arn:aws:kms:region
:account-id
:key/key-id
', [@overwrite_s3_files=0|1
];
Les paramètres suivants sont obligatoires :
-
@certificate_name
— Le nom du TDE certificat à sauvegarder. -
@certificate_file_s3_arn
— Le nom de ressource Amazon de destination (ARN) pour le fichier de sauvegarde du certificat dans Amazon S3. -
@private_key_file_s3_arn
— La destination S3 ARN du fichier de clé privée qui sécurise le TDE certificat. -
@kms_password_key_arn
— La ARN KMS clé symétrique utilisée pour chiffrer le mot de passe de la clé privée.
Le paramètre suivant est facultatif :
-
@overwrite_s3_files
: indique s'il convient de remplacer le certificat existant et les fichiers de clé privée dans S3 :-
0
: n'écrase pas les fichiers existants. Cette valeur est celle par défaut.Si
@overwrite_s3_files
est défini sur 0, une erreur est renvoyée si un fichier existe déjà. -
1
– Écrase le fichier existant qui possède déjà le nom spécifié, même s'il ne s'agit pas d'un fichier de sauvegarde.
-
Exemple de la sauvegarde d'un TDE certificat
EXECUTE msdb.dbo.rds_backup_tde_certificate @certificate_name='RDSTDECertificate20211115T185333', @certificate_file_s3_arn='arn:aws:s3:::
TDE_certs
/mycertfile.cer
', @private_key_file_s3_arn='arn:aws:s3:::TDE_certs
/mykeyfile.pvk
', @kms_password_key_arn='arn:aws:kms:us-west-2
:123456789012
:key/AKIAIOSFODNN7EXAMPLE
', @overwrite_s3_files=1
;
Restaurer un TDE certificat
Vous utilisez la procédure rds_restore_tde_certificate
stockée pour restaurer (importer) les TDE certificats utilisateur. Elle possède la syntaxe suivante.
EXECUTE msdb.dbo.rds_restore_tde_certificate @certificate_name='UserTDECertificate_
certificate_name
', @certificate_file_s3_arn='arn:aws:s3:::bucket_name
/certificate_file_name.cer
', @private_key_file_s3_arn='arn:aws:s3:::bucket_name
/key_file_name.pvk
', @kms_password_key_arn='arn:aws:kms:region
:account-id
:key/key-id
';
Les paramètres suivants sont obligatoires :
-
@certificate_name
— Nom du TDE certificat à restaurer. Le nom doit commencer par le préfixeUserTDECertificate_
. -
@certificate_file_s3_arn
— Le S3 ARN du fichier de sauvegarde utilisé pour restaurer le TDE certificat. -
@private_key_file_s3_arn
— Le S3 ARN du fichier de sauvegarde à clé privée du TDE certificat à restaurer. -
@kms_password_key_arn
— La ARN KMS clé symétrique utilisée pour chiffrer le mot de passe de la clé privée.
Exemple de restauration d'un TDE certificat
EXECUTE msdb.dbo.rds_restore_tde_certificate @certificate_name='UserTDECertificate_
myTDEcertificate
', @certificate_file_s3_arn='arn:aws:s3:::TDE_certs
/mycertfile.cer
', @private_key_file_s3_arn='arn:aws:s3:::TDE_certs
/mykeyfile.pvk
', @kms_password_key_arn='arn:aws:kms:us-west-2
:123456789012
:key/AKIAIOSFODNN7EXAMPLE
';
Afficher les TDE certificats restaurés
Vous utilisez cette rds_fn_list_user_tde_certificates
fonction pour afficher les TDE certificats utilisateur restaurés (importés). Elle possède la syntaxe suivante.
SELECT * FROM msdb.dbo.rds_fn_list_user_tde_certificates();
La sortie se présente comme suit : Les colonnes ne sont pas toutes affichées ici.
name |
certificate_id |
principal_id |
pvt_key_encryption_type_desc |
issuer_name |
cert_serial_number |
thumbprint |
subject |
start_date |
expiry_date |
pvt_key_last_backup_date |
UserTDECertificate_tde_cert |
343 |
1 |
ENCRYPTED_BY_MASTER_KEY |
AnyCompany Shipping |
79 3e 57 a3 69 fd 1d 9e 47 2c 32 67 1d 9c ca af |
0x6BB218B34110388680B FE1BA2D86C695096485B5 |
AnyCompany Shipping |
2022-04-05 19:49:45.0000000 |
2023-04-05 19:49:45.0000000 |
NULL |
Supprimer les TDE certificats restaurés
Pour supprimer les TDE certificats utilisateur restaurés (importés) que vous n'utilisez pas, utilisez la procédure rds_drop_tde_certificate
stockée. Elle possède la syntaxe suivante.
EXECUTE msdb.dbo.rds_drop_tde_certificate @certificate_name='UserTDECertificate_
certificate_name
';
Les paramètres suivants sont obligatoires :
-
@certificate_name
— Nom du TDE certificat à supprimer.
Vous ne pouvez supprimer que les TDE certificats restaurés (importés). Vous ne pouvez pas supprimer les certificats RDS créés.
Exemple de la suppression d'un TDE certificat
EXECUTE msdb.dbo.rds_drop_tde_certificate @certificate_name='UserTDECertificate_
myTDEcertificate
';