32
palais des congrès Paris 7, 8 et 9 février 2012

La sécurité avec SQL Server 2012

Embed Size (px)

DESCRIPTION

Venez découvrir tous les enjeux de la sécurité avec SQL Server 2012. Nous aborderons les bonnes pratiques et la méthodologie pour sécuriser vos bases de données. Nous entrerons dans le détail de certains points techniques comme par exemple l’AUDIT ou le chiffrement. Cette session sera aussi l’occasion de voir les nouveautés de la version 2012 en matière de sécurité.

Citation preview

Page 1: La sécurité avec SQL Server 2012

palais des congrès Paris

7, 8 et 9 février 2012

Page 2: La sécurité avec SQL Server 2012

7 février 2012Jean-Pierre RiehlMVP SQL [email protected]

La Sécurité avec SQL Server

Pascale DozConsultante SQL

ServerIndépendante

[email protected]

Page 3: La sécurité avec SQL Server 2012

Pure-Player innovant focalisé sur la création de valeur

Infrastructure, Collaboratif, Développement, Communication

Gold Partner dans toutes nos Practices

AZEO ACCOMPAGNE DURABLEMENTl’évolution de votre système d’informations

AZEO ENRICHIT LA CREATION DE VALEURgrâce à un réseau de partenaires sélectionnés

AZEO DEVELOPPE VOTRE TALENTet accélère votre réussite

AZEO, LE PARTENAIRE MICROSOFTincubateur de talents

Page 4: La sécurité avec SQL Server 2012

Agenda

Back to Basics

Contrôle d’accès

Protection des données

Surveillance

SQL Server 2012

Page 5: La sécurité avec SQL Server 2012

Back to Basics

Page 6: La sécurité avec SQL Server 2012

Back to Basics

« La sécurité dépend du risque »

« La sécurité est alignée sur le maillon le plus faible »

« Principe du moindre-privilège »

Page 7: La sécurité avec SQL Server 2012

Back to BasicsA retenir

Accè

s

Prot

ectio

n

Surv

eilla

nce

Page 8: La sécurité avec SQL Server 2012

Accéder

Page 9: La sécurité avec SQL Server 2012

Surface d’exposition

Limiter les ouvertures Composants Endpoints

Principe du moindre privilège

Pensez à l’ensemble de votre SI

Page 10: La sécurité avec SQL Server 2012

Accéder à SQL Server

Principals Login vs User

A la base, il y a toujours un Login Mode intégré ou mixte Permet de se connecter à l’instance SQL

Le User/Certificat permet d’utiliser la base de données Donne un contexte au login Attention aux utilisateurs guest / dbo

Rôles (serveur ou base de données)

Page 11: La sécurité avec SQL Server 2012

Authentification

La bonne pratique :

Utilisation de la sécurité Windows Gestion centralisée avec Active Directory Respect des politiques d’entreprise Pas de gestion de mot de passe

Mais toujours un besoin de la sécurité SQL pour les « clients » non-windows

Page 12: La sécurité avec SQL Server 2012

Accéder à SQL Server

Securables De l’instance SQL aux objets

On donne ou refuse l’accès à un Principal GDR : GRANT, DENY, ou REVOKE

Principe de résolution : 1. Définition du contexte de sécurité2. Echec s’il y a au moins un DENY3. Succès s’il y a au moins un GRANT

Attention au principe de l’Ownership ChainAttention au Cross-Database Ownership, trustworthy

Page 13: La sécurité avec SQL Server 2012

Accéder à SQL Server

Quelques bonnes pratiques :

Authentification intégrée, politique de mot de passe

Pas d’utilisation de dbo ou sysadmin Utilisation des SCHEMAS Cloisonnement Principe du moindre privilège

Page 14: La sécurité avec SQL Server 2012

Protéger

Page 15: La sécurité avec SQL Server 2012

Une histoire de clés

Service Master Key : niveau instance

Database Master Key : niveau base de données

Clés asymétriquesCertificatsClés symétriques

Importance des sauvegardes !

Page 16: La sécurité avec SQL Server 2012

Une histoire de clés

Extensible Key Management : EKM

• Nouveauté de SQL Server 2008• Exportation de la gestion des clés dans une

appliance dédiée• Hardware Security Module (HSM)

Ex : Arx PrivateServer, Thales nCipher, SafeNet Luna

Page 17: La sécurité avec SQL Server 2012

Chiffrement des données

Ne remplace pas la politique d’autorisationsProtection « In-depth »

Différentes granularités Serveur : géré par Windows (EFS ou BitLocker) Base de données : Transparent Data Encryption Données : fonctions de chiffrement

Différents algorithmes : DES, TRIPLE_DES, AES (128, 192, 256)

Attention au canal de communication

Page 18: La sécurité avec SQL Server 2012

Chiffrement des données

Transparent Data Encryption

Pas d’action de l’utilisateur : transparent Chiffrement des fichiers MDF et LDF Chiffrement dans TempDB Chiffrement des backups Les buffers en mémoire ne sont pas chiffrés

Impact en performance : 3 à 5% (sur un TPC-C) mais 28% de CPU en plus

Page 19: La sécurité avec SQL Server 2012

Chiffrement des données

Transparent Data Encryption

--création de la DEKCREATE DATABASE ENCRYPTION KEY WITH ALGORITHM = AES_128 ENCRYPTION BY SERVER CERTIFICATE aCert;

--activation de l’optionALTER DATABASE maBase SET ENCRYPTION ON;

Page 20: La sécurité avec SQL Server 2012

Chiffrement des données

Cell-Level Encryption

Chiffrement explicite de l’utilisateur Impact sur les applications

Granularité fine Attention aux « dictionnary-attack »

Utilisation des fonctions : EncryptBy, DecryptBy, SignBy, VerifySignedBy, etc.

Page 21: La sécurité avec SQL Server 2012

SQL Injection

C’est l’attaque la plus fréquente

Pour s’en protéger : Politique d’autorisation

Principe du moindre privilège Proscrire le SQL Dynamique Utiliser des requêtes paramétrées

Utilisation de SqlParameter Contrôler les saisies

Utilisation des regexp Utilisation de QUOTENAME(), REPLACE()

Page 22: La sécurité avec SQL Server 2012

Surveiller

Page 23: La sécurité avec SQL Server 2012

Policy-based Management

Policy : Evaluer des Conditions sur les Facets du serveur

Possibilité de les évaluer À la demande Planifiée On Change

Page 24: La sécurité avec SQL Server 2012

DDL Triggers

Triggers sur les instructions DDL CREATE, ALTER, DROP, etc.

Scope Base de données ou ServeurTransactionnel

Permet de rajouter du code : Annulation de la transaction Application de règles métier

Event Notification (basé sur service Broker / asynchrone)

Page 25: La sécurité avec SQL Server 2012

AUDIT

Permet de tracer ce qu’il se passe sur un serveur

Distinction entre le lieu ou on trace et ce qu’on trace CREATE SERVER AUDIT CREATE XXX AUDIT SPECIFICATION

Granularité fine Limitation à des utilisateurs particuliers Limitation à un scope particulier (objets,

actions)

Basé sur le moteur d’événementsPlus performant que la TRACE

Page 26: La sécurité avec SQL Server 2012

Events et TRACE

Le système d’événements est à la base des fonctionnalités de monitoring

On peut utiliser les événements pour réagir dans « l’application » Traitement des événements via le Service Broker

La TRACE est optimisée pour ne pas perturber l’activité Pas de packaging XML

La TRACE est exploitée en dehors de SQL Server

CREATE EVENT NOTIFICATION ev ON SERVERFOR CREATE_DATABASETO SERVICE ‘serv

Page 27: La sécurité avec SQL Server 2012

Et 2012 ?

Page 28: La sécurité avec SQL Server 2012

Contained Databases

Séparation du lien avec l’instanceIsolation de la base Plus besoin de LOGIN pour les utilisateurs

Utilisation Pratique pour la mise en place du mirroring

(AlwaysOn) Pratique pour les éditeurs

Nouveauté !

Page 29: La sécurité avec SQL Server 2012

Conclusion

Page 30: La sécurité avec SQL Server 2012

Principe du moindre privilège

Audit régulier (temps réel )

Pensez la sécurité au niveau du SI

Conclusion

Page 31: La sécurité avec SQL Server 2012

Mais encore…

Réplication

Log Shipping

AlwaysOnMirroring

Service Broker

Master Data Services

Power Pivot

Reporting Services

Integration Services

Analysis ServicesData Quality Services

Page 32: La sécurité avec SQL Server 2012

Pour aller plus loin…

Venez nous voir sur le stand SQL Server Retrouvez les experts Microsoft et MVP Assistez à des présentations des offres de nos

partenaires

Inscrivez-vous au « Virtual Launch Event » du 8 mars : http://aka.ms/vlefrance

Visitez notre nouveau site : http://www.microsoft.fr/sql

Evaluez dès aujourd’hui SQL Server 2012 En téléchargeant la RC0 : http://aka.ms/sql2012 En suivant nos « Virtual Labs » : http://aka.ms/sqllabs