Considérations relatives à la sécurité de SQL Server sur les machines virtuelles Azure

S’applique à : SQL Server sur la machine virtuelle Azure

Cet article comprend des instructions de sécurité générales pour créer un accès sécurisé aux instances SQL Server dans une machine virtuelle Azure.

Azure est conforme à plusieurs règlements et normes de l’industrie et vous permet de créer une solution conforme avec SQL Server exécuté sur une machine virtuelle. Pour plus d’informations sur les exigences réglementaires relatives à Azure, voir Centre de confidentialité Azure.

Passez d'abord en revue les meilleures pratiques de sécurité pour SQL Server et les machines virtuelles Azure, puis consultez cet article pour connaître les meilleures pratiques qui s'appliquent spécifiquement à SQL Server sur les machines virtuelles Azure.

Pour en savoir plus sur les meilleures pratiques en matière de machines virtuelles SQL Server, consultez les autres articles de cette série : Liste de contrôle, Taille de la machine virtuelle, Configuration HADR, et Collecter une base de référence.

Check-list

Consultez la liste de contrôle suivante de cette section pour obtenir une vue d’ensemble des meilleures pratiques de sécurité présentées plus en détail dans le reste de l’article.

Les fonctionnalités de SQL Server fournissent des méthodes de sécurisation des données au niveau de la base de données qui peuvent être combinées avec des fonctionnalités de sécurité au niveau de l’infrastructure. Ensemble, ces fonctionnalités fournissent une défense approfondie au niveau de l’infrastructure pour les solutions cloud et hybrides. En outre, grâce aux mesures de sécurité d’Azure, il est possible de chiffrer vos données sensibles, de protéger les machines virtuelles contre les virus et les logiciels malveillants, de sécuriser le trafic réseau, d’identifier et de détecter les menaces, de répondre aux exigences de conformité et de fournir une méthode unique d’administration et de création de rapports pour tout besoin de sécurité dans le cloud hybride.

  • Utilisez Microsoft Defender pour le cloud pour évaluer et prendre des mesures afin d’améliorer la posture de sécurité de votre environnement de données. Des fonctionnalités comme Azure Advanced Threat Protection (ATP) peuvent être utilisées dans vos charges de travail hybrides pour améliorer l’évaluation de la sécurité et permettre de réagir aux risques. L’enregistrement de votre machine virtuelle SQL Server avec l’extension SQL IaaS Agent fait apparaître les évaluations Microsoft Defender pour le cloud dans la ressource de machine virtuelle SQL du Portail Azure.
  • Utilisez Microsoft Defender pour SQL pour découvrir et atténuer les vulnérabilités potentielles des bases de données ainsi que pour détecter les activités anormales qui pourraient indiquer une menace pour votre instance SQL Server et votre couche de base de données.
  • Les évaluations de vulnérabilité font partie de Microsoft Defender pour SQL et permettent de découvrir et de corriger les risques potentiels pour votre environnement SQL Server. Elle offre une visibilité sur votre état de sécurité et inclut des mesures pratiques pour résoudre les problèmes de sécurité.
  • Utilisez des machines virtuelles confidentielles Azure pour renforcer la protection de vos données en cours d’utilisation et des données au repos contre l’accès des opérateurs hôtes. Les machines virtuelles confidentielles Azure vous permettent de stocker vos données sensibles dans le cloud et de satisfaire à des exigences de conformité strictes.
  • Si vous utilisez SQL Server 2022, envisagez d’utiliser l’authentification Microsoft Entra pour vous connecter à votre instance SQL Server.
  • Azure Advisor analyse votre télémétrie de configuration et d’utilisation des ressources, puis recommande des solutions qui peuvent vous aider à améliorer la rentabilité, les performances, la haute disponibilité et la sécurité de vos ressources Azure. Utilisez Azure Advisor sur la machine virtuelle, le groupe de ressources ou le niveau d’abonnement pour mieux identifier et appliquer les meilleures pratiques afin d’optimiser vos déploiements Azure.
  • Utilisez Azure Disk Encryption lorsque vos besoins de conformité et de sécurité vous imposent de chiffrer les données de bout en bout à l’aide de vos clés de chiffrement, y compris le chiffrement du disque éphémère (temporaire et attaché localement).
  • Les disques managés sont chiffrés au repos à l’aide d’Azure Storage Service Encryption, où les clés de chiffrement sont des clés gérées, stockées par Microsoft dans Azure.
  • Pour une comparaison des options de chiffrement des disques managés, consultez le tableau de comparaison du chiffrement des disques managés
  • Les ports de gestion doivent être fermés sur vos machines virtuelles : les ports de gestion à distance ouverts exposent votre machine virtuelle à un niveau de risque élevé des attaques basées sur Internet. Ces attaques tentent d’attaquer par force brute les informations d’identification afin d’obtenir un accès administrateur à l’ordinateur.
  • Activez Accès juste-à-temps (JIT) pour les machines virtuelles Azure
  • Utilisez Azure Bastion via Remote Desktop Protocol (RDP).
  • Verrouillez les ports et autorisez uniquement le trafic d’application nécessaire à l’aide de Pare-feu Azure, un pare-feu géré en tant que service (FaaS) qui accorde ou refuse l’accès au serveur en fonction de l’adresse IP d’origine.
  • Utiliser des groupes de sécurité réseau (NSG) pour filtrer le trafic réseau entre ressources Azure sur un réseau virtuel Azure
  • Utilisez des groupes de sécurité d’application pour regrouper les serveurs ayant des exigences similaires en matière de filtrage des ports et des fonctions similaires, comme les serveurs Web et les serveurs de bases de données.
  • Pour les serveurs Web et d’application, utilisez la protection Azure Distributed Denial of Service (DDoS). Les attaques DDoS sont conçues pour submerger et épuiser les ressources réseau, rendant ainsi les applications lentes ou non réactives. Les attaques DDoS ciblent souvent les interfaces utilisateur. La protection Azure contre les attaques DDoS élimine le trafic réseau indésirable avant qu’il n’affecte la disponibilité des services
  • Utilisez des extensions de machines virtuelles pour traiter les logiciels malveillants, l’état souhaité, la détection des menaces, la prévention et l’élimination des menaces au niveau du système d’exploitation, de la machine et du réseau :
  • Utilisez Azure Policy pour créer des règles d’entreprise qui peuvent être appliquées à votre environnement. Les stratégies Azure évaluent les ressources Azure en comparant les propriétés de ces ressources à des règles définies au format JSON.
  • Azure Blueprints permet aux architectes cloud et aux groupes centraux responsables des technologies de l’information de définir un ensemble reproductible de ressources Azure qui implémentent et respectent les normes, modèles et exigences d’une organisation. Les Azure Blueprints sont différents des stratégies Azure.
  • Utilisez Windows Server 2019 ou Windows Server 2022 pour être conforme à la norme FIPS avec SQL Server sur les machines virtuelles Azure.

Pour plus d’informations sur les bonnes pratiques de sécurité, consultez Bonnes pratiques de sécurité de SQL Server et Sécurisation de SQL Server.

Microsoft Defender pour SQL sur des machines

Microsoft Defender pour le cloud est un système unifié de gestion de la sécurité conçu pour évaluer et fournir des opportunités d’amélioration de la sécurité de votre environnement de données. Microsoft Defender offre la protection Microsoft Defender pour SQL sur les machines pour SQL Server sur les machines virtuelles Azure. Utilisez Microsoft Defender pour SQL pour découvrir et atténuer les vulnérabilités potentielles des bases de données, ainsi que pour détecter les activités anormales qui pourraient indiquer une menace pour votre instance SQL Server et votre couche de base de données.

Microsoft Defender pour SQL présente les avantages suivants :

Gestion du portail

Après avoir inscrit votre machine virtuelle SQL Server avec l’extension d’agent IaaS SQL, vous pouvez configurer un certain nombre de paramètres de sécurité à l’aide de la ressource de machines virtuelles SQL dans le portail Azure, comme l’activation de l’intégration d’Azure Key Vault ou l’authentification SQL.

En outre, après avoir activé Microsoft Defender pour SQL sur les machines, vous pouvez afficher les fonctionnalités de Defender pour le cloud directement dans la ressource de machines virtuelles SQL dans le portail Azure, telles que les évaluations des vulnérabilités et les alertes de sécurité.

Pour en savoir plus, consultez Gérer la machine virtuelle SQL Server dans le portail.

Machines virtuelles confidentielles

Les machines virtuelles confidentielles Azure fournissent une limite forte et matérielle qui renforce la protection du système d’exploitation invité contre l’accès de l’opérateur hôte. Le choix d’une taille de machine virtuelle confidentielle pour votre SQL Server sur une machine virtuelle Azure offre une couche supplémentaire de protection, ce qui vous permet de stocker en confiance vos données sensibles dans le cloud et de satisfaire à des exigences de conformité strictes.

Les machines virtuelles confidentielles Azure tirent parti des processeurs AMD avec la technologie SEV-SNP, qui chiffrent la mémoire de la machine virtuelle en utilisant des clés générées par le processeur. Ceci permet de protéger les données en cours d’utilisation (les données traitées à l’intérieur de la mémoire du processus SQL Server) contre un accès non autorisé à partir du système d’exploitation hôte. Le disque du système d’exploitation d’une machine virtuelle confidentielle peut également être chiffré avec des clés liées à la puce TPM (Trusted Platform Module) de la machine virtuelle, ce qui renforce la protection des données au repos.

Pour obtenir les étapes de déploiement détaillées, consultez le Démarrage rapide : Déployer SQL Server sur une machine virtuelle confidentielle.

Les recommandations relatives au chiffrement de disque sont différentes pour les machines virtuelles confidentielles et pour les autres tailles de machine virtuelle. Pour plus d’informations, consultez Chiffrement des disques .

Authentification Microsoft Entra

À compter de SQL Server 2022, vous pouvez vous connecter à SQL Server à l’aide de l’une des méthodes d’authentification d’identité Microsoft Entra ID (anciennement Azure Active Directory) suivantes :

  • Le mot de passe offre une authentification avec les informations d’identification de Microsoft Entra
  • Universaelle avec MFA ajoute l’authentification multifacteur
  • Integré utilise des fournisseurs de fédération tels que Active Directory Federation Services (ADFS) pour permettre des expériences d’authentification unique (SSO)
  • Le principal de service permet l’authentification à partir des applications Azure
  • L’identité managée active l’authentification à partir d’applications affectées aux identités Microsoft Entra

Pour commencer, consultez Configurer l’authentification Microsoft Entra pour votre machine virtuelle SQL Server.

Azure Advisor

Azure Advisor est un conseiller cloud personnalisé qui vous aide à suivre les bonnes pratiques pour optimiser vos déploiements Azure. Azure Advisor analyse votre télémétrie de configuration et d’utilisation des ressources, puis recommande des solutions qui peuvent vous aider à améliorer la rentabilité, les performances, la haute disponibilité et la sécurité de vos ressources Azure. Azure Advisor permet d’effectuer une évaluation au niveau de la machine virtuelle, du groupe de ressources ou de l’abonnement.

Intégration du coffre de clés Azure

Il existe plusieurs fonctionnalités de chiffrement SQL Server, telles que le chiffrement transparent des données (TDE), le chiffrement au niveau des colonnes (CLE) et le chiffrement de sauvegarde. Ces types de chiffrement nécessitent que vous gériez et stockiez les clés de chiffrement que vous utilisez pour le chiffrement. Le service Azure Key Vault est conçu pour optimiser la sécurité et la gestion de ces clés dans un emplacement sécurisé et hautement disponible. Le connecteur SQL Server permet à SQL Server d’utiliser ces clés depuis Azure Key Vault.

Tenez compte des éléments suivants :

  • Azure Key Vault stocke les secrets d’application dans un emplacement cloud centralisé pour contrôler en toute sécurité les autorisations d’accès et la journalisation d’accès distincte.
  • Lorsque vous intégrez vos propres clés à Azure, il est recommandé de stocker les secrets et les certificats dans le coffre de clés Azure.
  • Azure Disk Encryption utilise Azure Key Vault pour contrôler et gérer les clés et les secrets de chiffrement de disque.

Contrôle d’accès

Lorsque vous créez une machine virtuelle SQL Server avec une image de galerie Azure, l’option Connectivité SQL Server vous donne la possibilité de choisir Local (sur la machine virtuelle uniquement), Privé (dans un réseau virtuel) ou Public (Internet).

Diagramme montrant les la connectivité de SQL Server.

Pour une sécurité optimale, choisissez l’option la plus restrictive dans votre scénario. Par exemple, si vous exécutez une application qui accède à SQL Server sur la même machine virtuelle, Local constitue l’option la plus sûre. Si vous exécutez une application Azure qui requiert un accès à SQL Server, l’option Privé sécurise les communications vers SQL Server uniquement dans le réseau virtuel Azure spécifié. Si vous avez besoin d’un accès Public (Internet) à la machine virtuelle SQL Server, assurez-vous de bien suivre les autres meilleures pratiques présentées dans cette rubrique afin de réduire votre surface d’exposition aux attaques.

Les options sélectionnées dans le portail utilisent les règles de sécurité du trafic entrant sur les machines virtuelles Groupe de sécurité réseau (NSG) pour autoriser ou refuser le trafic réseau vers votre machine virtuelle. Vous pouvez modifier ou créer de nouvelles règles de groupe de sécurité réseau entrantes pour autoriser le trafic vers le port SQL Server (1433, par défaut). Vous pouvez également spécifier des adresses IP spécifiques qui sont autorisées à communiquer sur ce port.

Diagramme montrant les règles de groupe de sécurité réseau.

Outre les règles de groupe de sécurité réseau pour limiter le trafic réseau, vous pouvez utiliser le Pare-feu Windows sur la machine virtuelle.

Lorsque vous utilisez des points de terminaison avec le modèle de déploiement classique, supprimez-les sur la machine virtuelle si vous n’en avez pas besoin. Pour obtenir des instructions sur l’utilisation de listes ACL avec des points de terminaison, voir Gestion de l’ACL sur un point de terminaison Cela n’est pas nécessaire pour les machines virtuelles qui utilisent Azure Resource Manager.

Pensez à activer l’option de connexion chiffrée pour l’instance du moteur de base de données SQL Server dans votre machine virtuelle Azure. Configurez l'instance SQL Server avec un certificat signé. Pour plus d’informations, voir Activation des connexions chiffrées dans le moteur de base de données et Syntaxe de la chaîne de connexion.

Tenez compte des éléments suivants lors de la sécurisation de la connectivité réseau ou du périmètre :

  • Pare-feu Azure : pare-feu en tant que service (FaaS), géré et dynamique, qui accorde ou refuse l'accès au serveur en fonction de l'adresse IP d'origine, afin de protéger les ressources du réseau.
  • Protection Azure Distributed Denial of Service (DDoS) : les attaques DDoS submergent et épuisent les ressources du réseau, rendant les applications lentes ou non réactives. La protection Azure contre les attaques DDoS élimine le trafic réseau indésirable avant qu'il n'affecte la disponibilité des services.
  • des groupes de sécurité réseau (NSG) : filtrent le trafic réseau entre ressources Azure sur un réseau virtuel Azure
  • Groupes de sécurité d’application : permet de regrouper des serveurs ayant des exigences similaires en matière de filtrage des ports, et de regrouper des serveurs ayant des fonctions similaires, par exemple des serveurs Web.

Chiffrement de disque

Cette section fournit des instructions pour le chiffrement de disque, mais les recommandations varient selon que vous déployez une instance SQL Server conventionnelle sur une machine virtuelle Azure ou une instance SQL Server sur une machine virtuelle confidentielle Azure.

Machines virtuelles conventionnelles

Les disques managés déployés sur des machines virtuelles qui ne sont pas des machines virtuelles confidentielles Azure utilisent le chiffrement côté serveur et Azure Disk Encryption. Le chiffrement côté serveur assure le chiffrement au repos et la protection de vos données pour assurer le respect des engagements de votre organisation en matière de sécurité et de conformité. Azure Disk Encryption utilise la technologie BitLocker ou DM-Crypt et s’intègre à Azure Key Vault pour chiffrer les disques de données et de système d’exploitation.

Tenez compte des éléments suivants :

  • Azure Disk Encryption : chiffre les disques de machine virtuelle à l’aide d’Azure Disk Encryption à la fois pour les machines virtuelles Windows et Linux.
    • Lorsque vos besoins de conformité et de sécurité vous imposent de chiffrer les données de bout en bout à l’aide de vos clés de chiffrement, y compris le chiffrement du disque éphémère (temporaire et attaché localement), utilisez Azure Disk Encryption.
    • Azure Disk Encryption (ADE) s’appuie sur la fonctionnalité standard BitLocker de Windows et la fonctionnalité DM-Crypt de Linux pour assurer le chiffrement des disques de données et du système d’exploitation.
  • Chiffrement des disques managés
    • Les disques managés sont chiffrés au repos à l’aide d’Azure Storage Service Encryption, où les clés de chiffrement sont des clés gérées, stockées par Microsoft dans Azure.
    • Les données dans les disque managés Azure sont chiffrées en toute transparence à l’aide du chiffrement AES 256 bits, un des chiffrements par blocs les plus puissants actuellement disponibles, et sont conformes à la norme FIPS 140-2.
  • Pour une comparaison des options de chiffrement des disques managés, consultez le tableau de comparaison du chiffrement des disques managés.

Machines virtuelles confidentielles Azure

Si vous utilisez une machine virtuelle confidentielle Azure, tenez compte des recommandations suivantes pour optimiser les avantages en termes de sécurité :

  • Configurez le chiffrement de disque de système d’exploitation confidentiel, qui lie les clés de chiffrement du disque de système d’exploitation à la puce TPM (Trusted Platform Module) de la machine virtuelle et rend le contenu du disque protégé accessible seulement par la machine virtuelle.
  • Chiffrez vos disques de données (tous les disques contenant des fichiers de base de données, des fichiers journaux ou des fichiers de sauvegarde) avec BitLocker et activez le déverrouillage automatique. Pour plus d’informations, consultez manage-bde autounlock ou EnableBitLockerAutoUnlock. Le déverrouillage automatique garantit que les clés de chiffrement sont stockées sur le disque du système d’exploitation. Conjointement avec le chiffrement du disque de système d’exploitation confidentiel, ceci protège les données au repos stockées sur les disques de la machine virtuelle contre tout accès de l’hôte non autorisé.

Lancement fiable

Quand vous déployez une machine virtuelle de génération 2, vous avez la possibilité d’activer le lancement fiable, qui offre une protection contre les techniques d’attaque avancées et persistantes.

Avec le lancement fiable, vous pouvez :

  • Déployer en toute sécurité des machines virtuelles avec des chargeurs de démarrage, des noyaux de système d’exploitation et des pilotes vérifiés.
  • Protéger efficacement les clés, les certificats et les secrets dans les machines virtuelles.
  • Obtenir des insights et avoir confiance en l’intégrité de toute la chaîne de démarrage.
  • S’assurer que les charges de travail sont approuvées et vérifiables.

Les fonctionnalités suivantes ne sont pas prises en charge actuellement quand vous activez l’option de lancement fiable pour SQL Server sur des machines virtuelles Azure :

  • Azure Site Recovery
  • Disques Ultra
  • Images managées
  • Virtualisation imbriquée

Gérer les comptes

Il n’est pas souhaitable que les intrus puissent deviner facilement les noms de compte ou les mots de passe. Suivez les conseils ci-après :

  • Créez un seul compte d’administrateur local avec un nom différent de Administrator.

  • Utilisez des mots de passe forts complexes pour tous vos comptes. Pour plus d’informations sur la création d’un mot de passe sécurisé, consultez l’article Créer un mot de passe sécurisé.

  • Par défaut, Azure sélectionne l’authentification Windows pendant l’installation de la machine virtuelle SQL Server. Par conséquent, la connexion SA est désactivée et un mot de passe est affecté par l’installation. Nous recommandons que la connexion SA ne soit ni utilisée ni activée. Si vous devez avoir une connexion SQL, utilisez l’une des méthodes suivantes :

    • Créez un compte SQL avec un nom unique et qui est membre de sysadmin. Vous pouvez le faire dans le portail en activant l’authentification SQL lors de l’approvisionnement.

      Conseil

      Si vous n’activez pas l’authentification SQL lors de l’approvisionnement, vous devez modifier manuellement le mode d’authentification pour définir le mode Mode d’authentification SQL Server et Windows. Pour plus d’informations, consultez Modifier le mode d’authentification du serveur.

    • Si vous devez utiliser la connexion SA, activez la connexion après l’approvisionnement et assignez un nouveau mot de passe sécurisé.

Remarque

La connexion à une machine virtuelle SQL Server à l’aide de Microsoft Entra Domain Services n’est pas prise en charge : utilisez plutôt un compte de domaine Active Directory.

Audit et création de rapports

L’audit avec Log Analytics documente les événements et les consigne dans un journal d’audit dans un compte Stockage Blob Azure sécurisé. Log Analytics peut être utilisé pour déchiffrer les détails des journaux d'audit. L'audit vous donne la possibilité d'enregistrer des données dans un compte de stockage distinct et de créer une piste d'audit de tous les événements que vous sélectionnez. Vous pouvez également utiliser Power BI pour analyser rapidement le journal d'audit et obtenir des informations sur vos données, ainsi que pour fournir un aperçu de la conformité réglementaire. Pour en savoir plus sur l'audit au niveau des machines virtuelles et d'Azure, consultez Journal de sécurité et audit Azure.

Accès au niveau de la machine virtuelle

Fermer les ports de gestion sur votre ordinateur : les ports de gestion à distance ouverts exposent votre machine virtuelle à un niveau de risque élevé des attaques basées sur Internet. Ces attaques tentent d’attaquer par force brute les informations d’identification afin d’obtenir un accès administrateur à l’ordinateur.

Extensions de machine virtuelle

Les extensions de machine virtuelle Azure sont des extensions Microsoft ou tierces de confiance qui peuvent aider à répondre à des besoins et des risques spécifiques tels que l'antivirus, les logiciels malveillants, la protection contre les menaces, etc.

  • Extension Guest Configuration
    • Pour garantir des configurations sécurisées des paramètres dans l’invité de votre machine, installez l’extension Guest Configuration.
    • Parmi les paramètres dans l’invité figurent la configuration du système d’exploitation, la présence ou la configuration de l’application et les paramètres d’environnement.
    • Une fois l’installation terminée, les stratégies dans l’invité seront disponibles, par exemple « Windows Exploit Guard doit être activé ».
  • Agent de collecte de données du trafic réseau
    • Microsoft Defender pour le cloud utilise Microsoft Dependency Agent pour collecter les données de trafic réseau de vos machines virtuelles Azure.
    • Cet agent permet d'activer des fonctions avancées de protection du réseau comme la visualisation du trafic sur le mappage réseau, les recommandations de renforcement du réseau et les menaces spécifiques au réseau.
  • Évaluez les extensions de Microsoft et d’éditeurs tiers pour vous protéger contre les logiciels malveillants, l'état souhaité, la détection des menaces, la prévention et la remédiation afin de lutter contre les menaces au niveau du système d'exploitation, de la machine et du réseau.

Conformité à la norme FIPS

FIPS est une norme gouvernementale américaine qui définit les exigences de sécurité minimales pour les modules cryptographiques dans les produits et systèmes des technologies de l’information. SQL Server est capable d’être conforme à la norme FIPS dans SQL Server 2016 et les versions ultérieures ou SQL Server 2014 avec des mises à jour de sécurité étendues.

Pour être conforme à la norme FIPS avec SQL Server sur des machines virtuelles Azure, vous devez être sur Windows Server 2022, avec FIPS activé par défaut. Windows Server 2019 peut également être conforme à la norme FIPS si FIPS est activé manuellement à l’aide de la stratégie spécifiée dans le Guide d’implémentation technique de sécurité (STIG) recherche V-93511.

SQL Server n’est actuellement pas conforme à la norme FIPS sur les machines virtuelles Azure Linux.

Passez en revue les meilleures pratiques de sécurité pour SQL Server et les machines virtuelles Azure, puis consultez cet article pour connaître les meilleures pratiques qui s'appliquent spécifiquement à SQL Server sur les machines virtuelles Azure.

Pour d’autres rubriques relatives à l’utilisation de SQL Server sur des machines virtuelles Azure, voir SQL Server sur les machines virtuelles Azure. Si vous avez des questions sur les machines virtuelles SQL Server, consultez le Forum aux Questions.

Pour en savoir plus, consultez les autres articles de cette série sur les meilleures pratiques :