Steffen Krause Technical Evangelist Microsoft Deutschland GmbH http://blogs.technet.com/steffenk
Reliability Trustworthy Computing Confidentiality Integrity Sichere Konfiguration Umfassende Autentifizierung Granulare Autorisierung Verschlüsselung Auditing Kerberos/NTLM Password Policy Enforcement End Point Authentication Login Credentials Verschlüsselt Single Sign On Principals und Securables Rollen Katalogsicherheit Ausführungskontext Benutzer-Schema- Trennung *Oberflächenkonfiguration durch Richtlinien Sichere Standards Sicherheitsupdates Kommunikationsverschlüsselung Eingebaute Kryptografie * Transparente Datenverschlüsselung * Extensible Key Management * All Action Audit Auditing an verschiedene Ziele Tracing DDL Trigger *: Neu in SQL Server 2008
Herausforderung Schwache Kennwörter Fehlen von Auditing- Informationen Vertrauliche Daten Schutz der Metadaten Berechtigungen auf Schemaebene Ausführung von bestimmtem Code unter anderen Rechten Schutz des Zugangs zum Datenbankserver SECURITY FEATURE Kennwortrichtlinien DDL Trigger Verschlüsselung und Schlüsselmanagement Katalogsicherheit Trennung von Benutzer und Schema Ausführungskontext Codesignatur Verschlüsselte Login- Credentials Endpoints
Verschlüsselung Auditing Weitere Neuerungen in 2008 Ausführungskontext
Warum verschlüsseln? Zusätzliche Sicherheitsebene Erfordert durch manche Compliance-Regelungen oder Gesetze In SQL Server 2000 Nur Kommunikationsverschlüsselung In SQL Server 2005 Vereinfachte Kommunikationsverschlüsselung Unterstützung für explizite Datenverschlüsselung Zertifikate, symmetrische & asymmetrische Schlüssel, Hashing, Algorithmen, Ver- und Entschlüsselungsfunktionen In SQL Server 2008 Transparente Datenverschlüsselung Extensible Key Management
Verschlüsselt alle Daten auf der Leitung Eingeschaltet mit ForceEncryption im SQL Server Configuration Manager Es muss kein Zertifikat installiert werden SQL Server generiert selbst eins Keine Serverauthentifizierung Force Encryption vom Client Erfordert Zertifikat, dem Server und Client vertrauen Zertifikat muss manuell auf Server installiert und ausgewählt werden Ermöglicht Authentifizierung des Servers gegenüber dem Client Schützt vor Man in the middle
Datenver- und -entschlüsselung DDL für die Erstellung von Symmetrischen Schlüsseln Asymmetrischen Schlüsseln und Zertifikaten Symmetrische Schlüssel und private Schlüssel werden verschlüsselt gespeichert Schutz der Schlüssel selbst Basiert auf Benutzerkennwörtern oder Automatisch über SQL Server Key Management
Algorithmen und Schlüssellängen hängen vom OS und den damit installierten CSP (Cryptographic Services Provider) ab Performance abhängig von Algorithmus und Datengröße XP SP2 WS2003 DES 56 (64) 56 (64) 3DES 128 128 DESX 184 184 AES128-128 AES192-192 AES256-256 RC2 128 128 RC4 40 40 RC4_128 128 128 RSA 2048 2048
Schlüssel müssen geschützt werden Einige Schlüssel müssen gesichert werden Wenn die Schlüssel weg sind kann Datenverlust eintreten Daher müssen die Schlüssel wiederhergestellt werden können Eine Neugenerierung der Schlüssel kann erforderlich sein Falls die Schlüssel kompromittiert werden Es kann erforderlich sein, Schlüssel zwischen Systemen auszutauschen Wenn verschlüsselte Daten ausgetauscht werden sollen
Schlüssel Gesichert durch Passwort Zugeordnet zu Private Key Zertifikat Enthält Public Key Anderer Schlüssel Gesichert durch Passwort DB Master Key Gesichert durch Service Master Key Gesichert durch DPAPI
{ Verschlüsselung }
Neu in SQL Server 2008 Schlüsselmanagementsysteme von Fremdanbietern Vereinfachtes Schlüsselmanagement Einsatz von unternehmensweiter Verschlüsselung Konsolidieren und Vereinfachen der Verschlüsselung Trennung der Schlüssel von den Daten Speichern der Schlüssel in Hardware Security Modulen
Nutzen Physische Trennung von Daten und Schlüsseln Zusätzliche Autorisierungsprüfung (getrennte Zuständigkeit) Höhere Performance bei hardwarebasierter Ver- /Entschlüsselung Möglichkeit, alle Schlüssel an einem Ort zu speichern Enterprise Key Managers ermöglichen Funktionalität, die nicht in der SQL Server Engine verfügbar ist: Schlüsselgenerierung nach Richtlinien Trennung Daten - Schlüssel Schlüsselabruf Schlüsselrotation Schlüsselwiederherstellung Sichere Schlüsselverteilung Schlüsselentsorgung
Neu in SQL Server 2008 Ver-/Entschlüsselung auf Datenbankebene Verwendet Database Encryption Key (DEK) DEK ist verschlüsselt mit Serverzertifikat DEK muss entschlüsselt werden um Datenbank anzuhängen oder wiederherzustellen SQL Server 2008 DEK Encrypted data page Client Application
Die gesamte Datenbank ist verschlüsselt Anwendungen können unverändert weiterlaufen Keine Einschränkung hinsichtlich Indizes oder Datentypen (außer Filestream) Performanceeinfluss ist gering Backups sind nutzlos ohne Schlüssel Kann mit EKM verwendet werden
{ Transparente Verschlüsselung }
Verschlüsselung Auditing Weitere Neuerungen in 2008 Ausführungskontext
SQL Server 2005 SQL Trace/Profiler DDL/DML Trigger Fremdtools zum Auslesen des Transaktionslog Keine Unterstützung in Management Studio SQL Server 2008 All Action Audit
Neu in SQL Server 2008 Auditing ist direkte Serverfähigkeit T-SQL und Management Studio Erstellung eines Audit Objekts zum automatischen Auditing von Aktionen nach: File Windows Application Log Windows Security Log Spezifisches Auditing nach Aktion, Datenbank oder Benutzer möglich
Audit-Spezifikation auf Server- und/oder Datenbankebene Bereitgestellt von Extended Events Vordefinierte Aktions-Gruppen Individuelle Filter Serveraktions-Gruppen Konfigurationsänderungen, Login/Logout, Änderung an Eigentümerschaft oder Rollenmitgliedschaft Datenbankaktions-Gruppen SELECT, INSERT, UPDATE, DELETE, REFERENCES oder EXECUTE - Operationen auf Datenbankebene
Standardisiertes Schema Leicht mit Reporting Services oder Analysis Services auszuwerten Nutzt hochperformante Ereignis- Infrastruktur (Extended Events) Schneller als Trace/Profiler Läuft innerhalb der Engine Kann Server bei Audit-Fehler stoppen (optional)
{ Audit }
Verschlüsselung Auditing Weitere Neuerungen in 2008 Ausführungskontext
SQL Server 2005: Oberflächenkonfiguration Einige Features bei Neuinstallation deaktiviert Einfache Aktivierung und Deaktivierung von sicherheitskritischen Features SQL Server 2008: Oberflächenkonfiguration über Richtlinien mit dem Policy-Based Management Auch über mehrere Server mit Multi-Server- Management Ab CTP6 in C:\Program Files\Microsoft SQL Server\100\Tools\Policies zu finden
SQL Server 2005 Kerberos nur mit TCP/IP Verbindungen SPN muss im AD registriert werden SQL Server 2008 Kerberos mit allen Protokollen SPN kann im Connection String angegeben werden (OLEDB/ODBC) Kerberos möglich ohne SPN im AD zu registrieren
Verschlüsselung Auditing Weitere Neuerungen in 2008 Ausführungskontext
Sammlung von Eigenschaften um Berechtigungen für einen Prinzipal zu ermitteln Sicherheitskontext = Prinzipal-Token + Berechtigungen Definiert pro Prinzipal, der zur SQL Server Instanz eine Verbindung und Umgebung (Datenbank oder ausgeführtes Modul) herstellt
Benutzernamenstoken (Login Token) Erstellt für Server (Instanz)-Prinzipale Erstellt beim Logon Konstant über Datenbanken Darstellung mit sys.login_token Benutzertoken (User Token) Erstellt für Datenbankbenutzer Erstellt beim Verbinden zu einer Datenbank Konstant innerhalb der Datenbank Darstellung mit sys.user_token
Besitzverkettung (Ownership Chaining) SQL Server 2000, SQL Server 2005/8 Identitätswechsel (Impersonation) SQLServer 2000 SETUSER SQL Server 2005/8 EXECUTE AS Code Signing SQL Server 2005/8
{ Ausführungskontext }
SQL Server 2008 Informationen http://www.microsoft.com/germany/sql/2008 Steffens SQL Server 2008 Ressourcenseite http://blogs.technet.com/steffenk/pages/sqlserver-2008-ressourcen.aspx Blog Steffen Krause http://blogs.technet.com/steffenk Webcast-Aufzeichnungen http://www.microsoft.com/germany/technet/web casts/default.mspx?tab=2
Wir freuen uns auf Ihre Fragen: Technische Experten stehen Ihnen während der gesamten Veranstaltung in der Haupthalle zur Verfügung.
2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.