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

7

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 der weiteren Forschung in SQL Server 2008 R2 verfügt Ich sehe , dass es für „Datenverschlüsselung und Schlüsselverwaltung“ erlaubt , aber ich bin mir nicht sicher , was es bedeutet oder wie es zu implementieren.

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.

Vladimir Oselsky
quelle

Antworten:

8

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 finden Sie unter Verschlüsseln einer Datenspalte

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: BitLocker-Laufwerkverschlüsselung - Übersicht Es gibt viele OpenSource- oder Drittanbieter-Software, die denselben Job ausführen, jedoch gegen zusätzliche Kosten.

Hinweis: Das wichtigste Bit ist, IMMER Ihre Verschlüsselungsschlüssel zu sichern .

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.

Kin Shah
quelle
Ich bin mit der Verwendung von BitLocker nicht einverstanden. Dies aus MS-Dokumenten: "BitLocker schützt den Computerinhalt nicht, während Windows ausgeführt wird." Vorschau.tinyurl.com/hw9pzcm
Dina
5

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

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 in Microsofts Beitrag zu SP1 für SQL Server 2016 ..

Mike Walsh
quelle
1
Ich habe bereits die Möglichkeit eines Upgrades auf SQL Server 2016 SP1 für neue Funktionen geprüft, die Microsoft veröffentlicht hat. SQL Server 2016 SP1 wird den Markt und die Entscheidungen für die Datenbankplattform definitiv ändern.
Vladimir Oselsky
3

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 und gegen den Schutz eines Sicherungsbandes oder einer Festplatte sowie gegen unerwünschte oder gefährdete Administratorkonten geschützt sind.

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

Greenstone Walker
quelle
0

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.

user126897
quelle