SQL Server-Sicherheit: Verschlüsselung und SQL Injection

SQL Server unterstützt auch die Verschlüsselung von Daten, die zwischen dem Server und einem Client im Netzwerk übertragen werden. Dies ist besonders nützlich, wenn sich der Client im öffentlich zugänglichen Internet befindet und man befürchtet, dass jemand zwischen Server und Client den Netzwerk-Verkehr abhört und vertrauliche Daten abfängt.

Zur Aktivierung der Verschlüsselung sollten sowohl Client als auch Server die TCP/IP Network Library für die Kommunikation verwenden. Dazu führt man das entsprechende Netzwerk-Utility aus (Start > Programme > Microsoft SQL Server > Server Network Utility auf dem Server und Start > Programme > Microsoft SQL Server > Client Network Utility auf dem Client) und aktiviert das Kontrollkästchen „Force Protocol Encryption“. Alle Verbindungen zwischen Client und Server werden von nun an verschlüsselt.

Die Verschlüsselung hat natürlich ihren Preis. Beim Aufbau einer Verbindung ist einiges an Mehraufwand nötig und sowohl Client als auch Server müssen den Code zur Verschlüsselung und Entschlüsselung der Datenpakete ausführen. Es ist also erhöhter Rechenaufwand erforderlich, was u. U. auch zu messbaren Geschwindigkeitseinbußen bei aktivierter Verschlüsselung führen kann. Doch wenn man die vollständige Kontrolle über die Netzwerkpakete (also die tatsächlich über die Leitung zwischen Client und Server ausgetauschten Daten) verloren hat, ist eine Verschlüsselung wahrscheinlich empfehlenswert.

Verschlüsselung mit Lücken

Es wird vielleicht aufgefallen sein, dass in der Liste der verschlüsselbaren Dinge offensichtlich etwas fehlt: die Daten in den Tabellen. SQL Server bietet von Haus aus keine Unterstützung für die Verschlüsselung solcher Daten vor der Speicherung. Falls man die in SQL Server gespeicherten Daten schützen will, gibt es zwei Möglichkeiten: Einmal kann man mithilfe der Schlüsselwörter GRANT und DENY festlegen, wer Zugriff auf die Daten innerhalb von SQL Server hat, wie in einem früheren Artikel dieser Reihe bereits beschrieben. Wenn Anwender eine Tabelle gar nicht erst öffnen können, spielt es auch keine Rolle, ob die darin enthaltenen Daten verschlüsselt sind oder nicht.

Zweitens: Falls man die Daten tatsächlich verschlüsseln will, sollte man sich keine eigene Verschlüsselungslösung basteln. Es gibt eine Reihe kommerzieller Produkte mit bewährten Verschlüsselungsalgorithmen auf dem Markt, auf die man zurückgreifen kann. Eine gute Übersicht findet sich in den SQLSecurity FAQ.

Page: 1 2 3 4

ZDNet.de Redaktion

Recent Posts

Lags beim Online-Gaming? DSL-Vergleich und andere Tipps schaffen Abhilfe

Beim Online-Gaming kommt es nicht nur auf das eigene Können an. Auch die technischen Voraussetzungen…

2 Tagen ago

GenKI-Fortbildung immer noch Mangelware

Fast jedes zweite Unternehmen bietet keinerlei Schulungen an. In den übrigen Betrieben profitieren oft nur…

2 Tagen ago

Netzwerk-Portfolio für das KI-Zeitalter

Huawei stellt auf der Connect Europe 2024 in Paris mit Xinghe Intelligent Network eine erweiterte…

2 Tagen ago

Internet-Tempo in Deutschland: Viel Luft nach oben

Höchste Zeit für eine schnelle Kupfer-Glas-Migration. Bis 2030 soll in Deutschland Glasfaser flächendeckend ausgerollt sein.

2 Tagen ago

Erste Entwickler-Preview von Android 16 verfügbar

Schon im April 2025 soll Android 16 den Status Plattformstabilität erreichen. Entwicklern gibt Google danach…

2 Tagen ago

Kaspersky warnt vor Cyberangriff auf PyPI-Lieferkette

Die Hintermänner setzen KI-Chatbot-Tools als Köder ein. Opfer fangen sich den Infostealer JarkaStealer ein.

3 Tagen ago