Erstellt eine stark verschlüsselte Kopie einer Datenbankdatei, des Tranktionslogs, des Transaktionslogspiegels oder des DBSpaces.
CREATE ENCRYPTED FILE Neue_Datei FROM Alte_Datei { KEY Schlüssel | KEY Schlüssel OLD KEY Alter_Schlüssel } [ ALGORITHM { 'AES' | 'AES256' | 'AES_FIPS' | 'AES256_FIPS' } ]
FROM-Klausel Gibt den Namen der bestehenden Datei an (Alte_Datei), für die die CREATE ENCRYPTED FILE-Anweisung ausgeführt werden soll
OLD KEY-Klausel Gibt den aktuellen Schlüssel an, mit dem die Datei verschlüsselt ist
ALGORITHM-Klausel Gibt den Algorithmus an, der zum Verschlüsseln der Datei verwendet wird. Wenn Sie keinen Algorithmus angeben, wird AES (128-Bit-Verschlüsselung) standardmäßig verwendet.
Verwenden Sie diese Anweisung, wenn für Ihre Datenbank eine Wiederherstellung erforderlich ist und Sie eine verschlüsselte Kopie der Datenbank für den Support benötigen. Sie müssen diese Anweisung auch verwenden, um Nebendateien einer Datenbank wie Transaktionslog, Transaktionslogspiegel und DBSpace zu verschlüsseln.
Wenn Nebendateien der Datenbank verschlüsselt werden, müssen sie denselben Algorithmus und denselben Schlüssel für alle Nebendateien dieser Datenbank angeben.
Wenn mit Alte_Datei DBSpaces oder Transaktionslogs verbunden sind und Sie diese auch verschlüsseln, müssen Sie darauf achten, dass der neue Name und Speicherort dieser Dateien in der neuen Datenbank gespeichert werden. Dabei gehen Sie wie folgt vor:
Führen Sie dblog -t in der neuen Datenbank aus, um den Namen und den Speicherort des Transaktionslogs zu ändern.
Führen Sie dblog -m in der neuen Datenbank aus, um den Namen und den Speicherort des Transaktionslogspiegels zu ändern.
Führen Sie die Anweisung ALTER DBSPACE in der neuen Datenbank aus, um den Speicherort und den Namen der DBSpace-Dateien zu ändern.
Sie können diese Anweisung verwenden, um den Verschlüsselungsalgorithmus und den Schlüssel für eine Datenbank zu ändern. Die CREATE ENCRYPTED FILE-Anweisung erstellt allerdings eine neue Datei (Neue_Datei), ohne die vorherige Version der Datei (Alte_Datei) zu ersetzen oder zu entfernen.
Der Name der Transaktionslogdatei bleibt bei diesem Verfahren unverändert. Wenn die Datenbank und Transaktionslogdatei also umbenannt werden, müssen Sie dblog -t mit der daraus resultierenden Datenbank ausführen.
Sie können auch mit der dbunload-Option -an und -ek oder -ep durch Entladen und Neuladen der Datenbank eine bestehende Datenbank verschlüsseln oder einen bereits existierenden Chiffrierschlüssel ändern.
Wenn Sie über eine Datenbank mit aktivierter Tabellenverschlüsselung verfügen, können Sie die Datenbank mit dieser Anweisung nicht verschlüsseln. Sie können allerdings diese Anweisung verwenden, um den bei der Tabellenverschlüsselung verwendeten Schlüssel zu ändern. Um eine Datenbank zu verschlüsseln, in der die Tabellenverschlüsselung aktiviert ist, verwenden Sie die Anweisung CREATE ENCRYPTED DATABASE. Siehe CREATE ENCRYPTED DATABASE-Anweisung.
Diese Anweisung wird in Prozeduren, Triggern, Ereignissen oder Batches nicht unterstützt.
FIPS steht nicht auf allen Plattformen zur Verfügung. Eine Liste der unterstützten Plattformen finden Sie unter http://www.sybase.com/detail?id=1002288.
Der Benutzer muss über DBA-Berechtigungen verfügen.
Unter Windows Mobile werden die AES_FIPS- und AES256_FIPS-Algorithmen nur mit ARM-Prozessoren unterstützt.
Keine.
SQL/2008 Erweiterung des Herstellers.
Das folgende Beispiel verschlüsselt die Datenbank "contacts" und erstellt eine neue Datenbank namens "contacts2", die mit AES_FIPS-Verschlüsselung verschlüsselt ist.
CREATE ENCRYPTED FILE 'contacts2.db' FROM 'contacts.db' KEY 'Sd8f6654*Mnn' ALGORITHM AES_FIPS; |
Im folgenden Beispiel werden die Datenbank "contacts" und die Transaktionslogdatei "contacts" verschlüsselt und umbenannt.
Sie müssen dann dblog -ek Sd8f6654*Mnn -t contacts2.log contacts.db
ausführen, weil das Transaktionslog umbenannt wurde, die Datenbankdatei aber noch auf das alte Log verweist.
CREATE ENCRYPTED FILE 'contacts2.db' FROM 'contacts.db' KEY 'Sd8f6654*Mnn'; CREATE ENCRYPTED FILE 'contacts2.log' FROM 'contacts.db' KEY 'Sd8f6654*Mnn'; |
Im folgenden Beispiel werden die Datenbank "contacts" und die Transaktionslogdatei "contacts" verschlüsselt, wobei der ursprüngliche Name der Transaktionslogdatei unverändert bleibt. In diesem Fall müssen Sie dblog nicht ausführen, da der Name der Datei gleich bleibt.
CREATE ENCRYPTED FILE 'newpath\contacts.db' FROM 'contacts.db' KEY 'Sd8f6654*Mnn'; CREATE ENCRYPTED FILE 'newpath\contacts.log' FROM 'contacts.log' KEY 'Sd8f6654*Mnn'; |
Um einen Chiffrierschlüssel für eine Datenbank zu ändern, erstellen Sie erst eine Kopie der Datenbankdatei mit dem neuen Schlüssel, wie in dieser Anweisung gezeigt:
CREATE ENCRYPTED FILE 'newcontacts.db' FROM 'contacts.db' KEY 'newkey' OLD KEY 'oldkey'; |
Nachdem Sie die verschlüsselte Datei erstellt haben, löschen Sie contacts.db und benennen newcontacts.db in contacts.db um.
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |