Partager via


Sécurité pour le moteur de base de données SQL Server et Azure SQL Database

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Ce page fournit des liens pour vous aider à trouver les informations dont vous avez besoin sur la sécurité et la protection dans le moteur de base de données SQL Server et Azure SQL Database.

Légende

Capture d’écran de la légende qui décrit les icônes de disponibilité des fonctionnalités.

Authentification : qui êtes-vous ?

Fonctionnalité Lien
Qui effectue l’authentification ?

Authentification Windows
Authentification SQL Server
Microsoft Entra ID (anciennement Azure Active Directory)
Qui effectue l'authentification ? (Windows ou SQL Server)
Choisir un mode d’authentification
Se connecter à Azure SQL avec l’authentification Microsoft Entra
Où est effectuée l’authentification ?

Dans la base de données master : connexions et utilisateurs de base de données
Dans la base de données utilisateur : utilisateurs de base de données autonome
S’authentifier sur la master base de données (connexions et utilisateurs de base de données)
Créer un compte de connexion
Gestion des bases de données et des connexions dans Azure SQL Database
Créer un utilisateur de base de données
S'authentifier auprès d'une base de données utilisateur
Rendre votre base de données portable à l’aide de bases de données autonomes
Utilisation d’autres identités

Informations d’identification
Exécuter en tant qu’autre connexion
Exécuter en tant qu’autre utilisateur de base de données
Informations d’identification (moteur de base de données)
EXECUTE AS
EXECUTE AS

Autorisation : que pouvez-vous faire ?

Fonctionnalité Lien
Octroi, révocation et refus d’autorisations

Classes sécurisables
Autorisations de serveur précises
Autorisations de base de données précises
Hiérarchie des autorisations (moteur de base de données)
Autorisations (moteur de base de données)
Éléments sécurisables
Pour commencer avec les autorisations du moteur de base de données
Sécurité par rôles

Rôles de niveau serveur
Rôles au niveau de la base de données
Rôles de niveau serveur
Rôles de niveau base de données
Restriction de l’accès aux données aux éléments de données sélectionnés

Limiter l’accès aux données à l’aide de vues/procédures
Sécurité au niveau des lignes
Masquage dynamique des données
Objets signés
Restreindre l’accès aux données à l’aide de vues et de procédures stockées (moteur de base de données)
Sécurité au niveau des lignes
Sécurité au niveau des lignes
Masquage des données dynamiques
Masquage dynamique des données (base de données SQL Azure)
AJOUTER UNE SIGNATURE

Chiffrement : stockage de données secrètes

Fonctionnalité Lien
Chiffrement de fichiers

Chiffrement BitLocker (au niveau du lecteur)
Chiffrement NTFS (au niveau du dossier)
Transparent Data Encryption (au niveau du fichier)
Chiffrement de la sauvegarde (au niveau du fichier)
BitLocker (au niveau du lecteur)
Chiffrement NTFS (au niveau du dossier)
Chiffrement transparent des données (TDE)
Chiffrement de sauvegarde
Chiffrement des sources

Module Gestion de clés extensible
Clés stockées dans Azure Key Vault
Always Encrypted
Gestion de clés extensible (EKM)
gestion extensible des clés à l’aide d’Azure Key Vault (SQL Server)
Always Encrypted
Colonne, données et chiffrement à clé

Chiffrer par certificat
Chiffrer par clé symétrique
Chiffrer par clé asymétrique
Chiffrer par phrase secrète
ENCRYPTBYCERT
ENCRYPTBYASYMKEY
ENCRYPTBYKEY
ENCRYPTBYPASSPHRASE
Chiffrer une colonne de données

Sécurité de connexion : restriction et sécurisation

Fonctionnalité Lien
Protection par pare-feu

Paramètres du Pare-feu Windows
Paramètres de pare-feu du service Azure
Paramètres de pare-feu de la base de données
Configurer un pare-feu Windows pour accéder au moteur de base de données
sp_set_database_firewall_rule (Azure SQL Database)
sp_set_firewall_rule (Azure SQL Database)
Chiffrement des données en transit

Connexions TLS/SSL forcées
Connexions SSL facultatives
Configurer le moteur de base de données SQL Server pour le chiffrement des connexions
Configurer le moteur de base de données SQL Server pour chiffrer les connexions, sécurité réseau
Prise en charge de TLS 1.2 pour Microsoft SQL Server

Audit : enregistrement de l’accès

Fonctionnalité Lien
Audit automatisé

SQL Server Audit (au niveau du serveur et de la base de données)
SQL Database Audit (au niveau de la base de données)
Détecter les menaces

SQL Server Audit (moteur de base de données)
Audit SQL Database
Bien démarrer avec SQL Database Advanced Threat Protection
Évaluation des vulnérabilités de la base de données SQL
Audit personnalisé

Déclencheurs
Implémentation d’un audit personnalisé : création de déclencheurs DDL et de déclencheurs DML
Conformité

Conformité
SQL Server :
Critères courants
Base de données SQL :
Microsoft Azure Trust Center : Conformité par fonctionnalité

Injection SQL

Une attaque par injection SQL consiste à insérer un code malveillant dans les chaînes transmises ultérieurement au moteur de base de données en vue de leur analyse et de leur exécution. Les procédures qui permettent de créer des instructions SQL doivent être vérifiées et analysées à la recherche d’éventuelles failles autorisant cette injection, car SQL Server exécute toutes les requêtes syntaxiquement correctes qu’il reçoit. Tous les systèmes de base de données peuvent être la cible d’une attaque par injection SQL, et la plupart des vulnérabilités sont introduites dans l’application qui interroge le moteur de base de données. Vous pouvez déjouer les attaques par injection SQL en utilisant des procédures stockées et des commandes paramétrées, en évitant les instructions SQL dynamiques et en limitant les autorisations de l’ensemble des utilisateurs. Pour plus d’informations, consultez Injection SQL.

Liens supplémentaires pour les programmeurs d’applications :

Obtenir de l’aide