it-swarm.com.de

Optionen für die Datenverschlüsselung in SQL Server 2008 R2 Standard Edition?

Ich helfe einem Freund beim Einrichten der Verschlüsselung von Daten in SQL Server 2008 R2 Standard Edition. Bei der ursprünglichen Recherche dachte ich, ich könnte TDE verwenden, erkannte jedoch nicht, dass es nur für Enterprise- oder DataCenter-Versionen von SQL Servern verfügbar ist. Bei weiteren Untersuchungen zu SQL Server 2008 R2 Funktionen habe ich festgestellt, dass dies "Datenverschlüsselung und Schlüsselverwaltung" ermöglicht, bin mir jedoch nicht sicher, was dies bedeutet oder wie es implementiert werden soll.

Was ist die effizienteste und kostengünstigste Methode zur Datenverschlüsselung? Sollte ich etwas über SQL Server tun oder nur Tools von Drittanbietern verwenden, um das gesamte Volume zu verschlüsseln, auf dem sich DB und Backups befinden? Auch wenn jemand auf eine Möglichkeit hinweisen kann, "Datenverschlüsselung" zu verwenden, die in der Standard Edition als Funktion enthalten ist, würde ich mich sehr freuen. Jedes Mal, wenn ich auf einem SQL-Server nach Verschlüsselung suche, werde ich über die Verwendung von TDE informiert. Im aktuellen Szenario ist es für die Unternehmensgröße nicht möglich, Enterprise Edition zu erwerben.

Grund für die Verschlüsselung - HIPAA-Konformität. Wenn der Zugriff auf das Dateisystem für Datenbanken oder Sicherungen erfolgt, werden die Daten verschlüsselt und können nicht von Nutzen sein. Dies kann den physischen Zugriff auf den Computer oder den Zugriff über den lokalen Administrator umfassen.

7

Da Sie die Standard Edition verwenden, können Sie TDE nicht verwenden. Also andere Möglichkeiten sind

Verwenden von Verschlüsselungsschlüsseln auf Instanz-/Datenbankebene :

SQL Server verfügt über zwei Arten von Schlüsseln: symmetrisch und asymmetrisch. Symmetrische Schlüssel verwenden dasselbe Kennwort zum Ver- und Entschlüsseln von Daten. Asymmetrische Schlüssel verwenden ein Kennwort zum Verschlüsseln von Daten (als öffentlicher Schlüssel bezeichnet) und ein anderes zum Entschlüsseln von Daten (als privater Schlüssel bezeichnet).

SQL Server verfügt über zwei Hauptanwendungen für Schlüssel: einen Service Master Key (SMK), der auf und für eine SQL Server-Instanz generiert wird, und einen Datenbank Master Key (DMK), der für eine Datenbank verwendet wird.

Sie können die Verschlüsselung auch auf Spaltenebene durchführen, indem Sie eine MASTER KEY ENCRYPTION zusammen mit CREATE CERTIFICATE und anschließend CREATE SYMMETRIC KEY erstellen.

Ein Beispiel dafür ist unter Verschlüsseln einer Datenspalte beschrieben

Referenz: SQL Server- und Datenbankverschlüsselungsschlüssel (Database Engine)

Auf Laufwerksebene :

Verwenden von BitLocker als Laufwerksverschlüsselungs-Datenschutzfunktion für Windows Server 2008 R2. Siehe: Übersicht über die BitLocker-Laufwerkverschlüsselung Es gibt viele OpenSource- oder Drittanbieter-Software, die denselben Job ausführen, jedoch gegen zusätzliche Kosten.

Hinweis: Das wichtigste Bit ist Sichern Sie IMMER Ihre Verschlüsselungsschlüssel .

Sie können Software von Drittanbietern wie Redgates SQL-Backup verwenden, mit der Sie Backups mit Kennwörtern verschlüsseln können.

Je nachdem, welche Stufe Sie verschlüsseln müssen, wird bestimmt, ob sich ein Upgrade auf die Enterprise Edition lohnt oder nicht. Sie müssen die native TDE-Verschlüsselung im Vergleich zu Verschlüsselungsschlüsseln und Zertifikaten im Vergleich zu Open Source und Festplattenverschlüsselung bewerten.

8
Kin Shah

Ich verstehe, alte Frage, aber seit SQL Server 2016 SP1 gibt es zusätzlich zu den obigen Antworten eine Antwort.

SQL Server 2016 führte "Always Encrypted" sowie andere Sicherheitsfunktionen wie Dynamic Data Masking und Security auf Zeilenebene ein. Dies waren Funktionen, die ursprünglich nur in Enterprise Edition veröffentlicht wurden.

Sie sind jetzt als Funktionen verfügbar, die in jeder SQL Server 2016-SKU verfügbar sind - Enterprise, Standard oder sogar Express.

Es lohnt sich, den Upgrade-Prozess jetzt zu überprüfen und zu betrachten. Weitere Informationen hierzu finden Sie auf Microsoft post about SP1 for SQL Server 2016 ..

5
Mike Walsh

Stellen Sie zunächst die Frage "Warum verschlüssele ich diese Datenbank?"

Wenn die Antwort "Daten vor den Datenbankadministratoren verbergen" lautet, ist die SQL Server-Verschlüsselung jeglicher Art nicht die Antwort. In diesem Fall sollte die Clientanwendung Daten verschlüsseln und den Chiffretext in der Datenbank speichern. Auf diese Weise sehen weder der Datenbankserver noch die Datenbankadministratoren (oder auch die Netzwerkadministratoren) jemals unverschlüsselte Daten oder Verschlüsselungsschlüssel.

Das Verschlüsseln der Daten auf dem Client vor dem Senden an den Server bedeutet, dass die Datenbankdateien und Datenbanksicherungen alle verschlüsselt sind und vor dem Diebstahl von Sicherungsbändern oder Festplatten sowie vor unerwünschten oder gefährdeten Administratorkonten geschützt sind.

Siehe Laurentiu Cristofors Blog-Artikel Wer benötigt Verschlüsselung? und HIPAA-Konformität mit SQL Server 2008 im SQL Server-Sicherheitsblog

3

Antwort, die ursprünglich als Bearbeitung der Frage des Autors hinterlassen wurde:

Verwendete Lösung

Nachdem dem für das Projekt zuständigen Systemadministrator verschiedene Optionen vorgestellt wurden, wurde die Entscheidung für die BitLocker-Laufwerkverschlüsselung getroffen. Ich habe die SQL-Instanz während des Verschlüsselungsprozesses gestoppt und hatte kein Problem damit, sie nach Abschluss der Verschlüsselung neu zu starten.

0
user126897