2016-05-04 7 views
2

Um eine unglaublich lange Geschichte kurz zu machen, wie kann ich eine Datenbank zurück zu dem Punkt zurück, wo es nie irgendwelche Master-Schlüssel, Zertifikate, etc?SQL 2014 entfernen oder beheben Hauptschlüssel Ausgabe

Die Daten, die derzeit verschlüsselt sind, sind Testdaten, daher muss ich sie nicht behalten.

Ich habe die Datenbank getrennt und auf den zukünftigen Produktionsserver verschoben, aber ich habe nicht alles getan, was ich hätte tun sollen, damit es funktioniert. Hier

ist, was ich habe versucht, und die Ergebnisse:

  1. Sicherung bestehenden Hauptschlüssel aus alten Server und Wiederherstellung auf neue -Turns aus mir das Passwort vergessen. Also habe ich noch einen hinzugefügt. -backup ging in Ordnung -Unfähig, die Datei auf Google Drive zu kopieren (das ist meine einzige Möglichkeit, Sachen auf den Server zu bekommen) und kann auch nicht die Datei verschieben oder sogar per E-Mail oder öffnen, erhalten eine Nachricht, die ich nicht habe Genehmigung. Versucht 3 verschiedene Backups.

Status: verlassen

  1. neues Passwort auf der Produktion, neues Zertifikat, neue symmetrische Schlüssel Hauptschlüssel erstellen. Quelle: https://mattsql.wordpress.com/2012/11/13/migrating-sql-server-databases-that-use-database-master-keys/ -Failed - Kann mich nicht erinnern, Fehler.

Status: verlassen

  1. Regenerieren Schlüssel -ALTER MASTER KEY REGENERATE mit Verschlüsselung mit Passwort -Doesn't zu funktionieren scheint, kann nicht genau erinnern Fehler.

Status: verlassen

  1. Tropfen alles, readd alles -Per https://sqlsailor.com/2012/01/03/drop-master-key-understanding-encryption-hierarchy/

DROP DATABASE ENCRYPTION KEY 
 
DROP CERTIFICATE TDECertificate 
 
DROP MASTER KEY

Status: gearbeitet Heim-Maschine, in der Lage, alles perfekt laufen zu lassen, aber das war die Maschine mit der ursprünglichen Einrichtung, also war es nicht in der Art gebrochen, die Produktion zurzeit ist. Plane dies heute Abend zu testen (Ich kann nur für eine Stunde pro Nacht remote arbeiten)

Gibt es noch etwas, das ich tun muss, um es aus der Box in Bezug auf Hauptschlüssel und Verschlüsselung zurückzukehren ? Muss ich auch den Service-Hauptschlüssel neu generieren (ich glaube, ich lese, dass das möglich ist)

+0

Ich würde immer eine Datenbank aus T-SQL-Skripten erstellen, die ich unter Quellcodeverwaltung behalte. Um eine Datenbank auf einem Produktionsserver zu installieren, würde ich sie mithilfe der Skripts erstellen, um sicherzustellen, dass eine Neuinstallation durchgeführt wird. – RichardCL

+0

Ich werde das nicht bestreiten. Ich wünschte, ich hätte es getan, aber jetzt könnte ich stecken bleiben versuchen, das aktuelle Problem zu lösen, anstatt die db zu löschen und neu zu beginnen. Zum Beispiel, mein Backup-Skript der Datenbank wurde getan, nachdem die Verschlüsselung hinzugefügt wurde, also für alle, die ich weiß, würde mich das zum selben Problem bringen. –

+0

Sie haben immer noch eine Arbeitskopie auf Ihrem Heimcomputer? In diesem Fall sollten Sie in der Lage sein, Skripts für jedes Objekt in der Datenbank mithilfe von SSMS zu erstellen und sie dann bei Bedarf zu überprüfen und zu bearbeiten. Um eine Idee zu geben, wie viele Tische usw. gibt es? – RichardCL

Antwort

0

Ich vermute, dass Sie die falsche Frage stellen, weil die Antwort auf "wie kann ich die Datenbank zurück an den Punkt, wo ist hat keine Schlüssel? " ist es, alle Schlüssel fallen zu lassen. Sie haben auch gesagt, dass Ihnen die verschlüsselten Daten nicht wichtig sind, da es sich um Testdaten handelt. Wenn Sie jedoch die Verschlüsselung von Ihrem System auf das Produktivsystem migrieren möchten und sie auf Ihrem System funktioniert, müssen Sie den Datenbankhauptschlüssel in einer Datei sichern und in der Produktionsdatenbank wiederherstellen. Die Tatsache, dass Sie das ursprüngliche Kennwort, das zum Verschlüsseln des Schlüssels in SQL Server verwendet wurde, nicht beibehalten haben, ist irrelevant, da das System bei der Erstellung des DMK dieses ebenfalls mit dem Diensthauptschlüssel verschlüsselt hat.Wenn Sie den DMK sichern, kann das System den Schlüssel für Sie entschlüsseln, ohne dass Sie das ursprüngliche Passwort angeben müssen. Sofern Sie nicht explizit einen Befehl zum Löschen der Verschlüsselung durch den Diensthauptschlüssel ausgeführt haben, können Sie das DMK in einer Datei sichern, ein Kennwort zum Verschlüsseln der Datei bereitstellen, die Datei in Ihr Produktivsystem migrieren und sie mit dem zuvor angegebenen Dateiverschlüsselungskennwort wiederherstellen. Oder Sie können alle Schlüssel löschen und die Verschlüsselungshierarchie neu erstellen, indem Sie den Schlüsseln und Zertifikaten den gleichen Namen geben.