1

Nous obtenons une erreur T-SQL (SQL Server 2008 R2) sur CERTIFICAT DE SAUVEGARDE: ERROR_NUMBER 15151, SEVERITY 16, ETAT 1, PROCEDURE -, LIGNE 8, MESSAGE: Impossible de trouver le certificat 'certificate1', parce qu'il n'existe pas ou que vous n'avez pas la permission.Impossible de trouver le certificat

Nous pouvons voir le certificat dans master.sys.certificates.

Notre pseudo-code:

  • copie un template_db non attaché à DB1

  • attach DB1

  • créer certificat1 (procédure stockée dans le maître db)

  • génèrent @password

  • CREATE DATABASE ... ENCRYPTION KEY PAR CRYPTAGE CERTIFICAT DE SERVEUR « + @ + certificate_name ... (procédure stockée dans DB1)

  • activer le chiffrement de la base de données transparente pour DB1 en utilisant certificat1. (N'ALTER DATABASE '+ @ + nom_base_de_donnees N' SET CHIFFREMENT ')

  • N'BACKUP CERTIFICAT + @ + certificate_name N' DE FILE = ''' + @ + certificate_file_path N '' » avec la clé privée ( FILE = '' '+ @ private_key_file_path + N' '', CRYPTAGE PAR MOT dE pASSE = '' '+ @ mot de passe + N' '' »

essayer de travailler autour de la erreur, nous avons testé trois façons avec le code BACKUP CERTIFICATE dans une base de données différente à chaque fois, y compris db1 et master.Tous ont la même erreur

Des idées? Merci.

+1

Je ne peux pas voter pour votre réponse parce que je n'ai pas assez de rep. Merci de l'avoir posté! C'était mon problème, j'avais besoin de mettre en évidence la base de données master afin de sauvegarder un certificat qui y était stocké. –

Répondre

1

Nous avons réessayé en exécutant BACKUP CERTIFICATE dans la base de données principale et cela a fonctionné cette fois.

Questions connexes