Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :Azure SQL Database
Les règles de réseau virtuel sont une fonctionnalité de sécurité du pare-feu qui contrôle si le serveur de vos bases de données et pools élastiques dans Azure SQL Database accepte les communications envoyées depuis des sous-réseaux particuliers dans les réseaux virtuels. Cet article explique pourquoi les règles de réseau virtuel sont parfois la meilleure option pour permettre une communication sécurisée avec votre base de données dans SQL Database.
Note
Dans cet article, serveur fait référence au serveur logique qui héberge des bases de données dans Azure SQL Database.
Pour créer une règle de réseau virtuel, il doit d’abord exister un point de terminaison de service de réseau virtuel afin que la règle puisse s’y référer.
Note
Microsoft Entra ID s'appelait Azure Active Directory (Azure AD) jusqu'à une date récente.
Créer une règle de réseau virtuel
Si vous souhaitez uniquement créer une règle de réseau virtuel, vous pouvez passer directement à la procédure et à l’explication donnée plus loin dans cet article.
Informations sur les règles de réseau virtuel
Cette section fournit des informations sur les règles de réseau virtuel.
Une seule région géographique
Chaque point de terminaison de service de réseau virtuel s’applique à une seule région Azure. Le point de terminaison ne permet pas à d’autres régions d’accepter les communications provenant du sous-réseau.
Une règle de réseau virtuel est limitée à la région à laquelle s’applique son point de terminaison sous-jacent.
Niveau serveur, et non niveau base de données
Chaque règle de réseau virtuel s’applique à tout le serveur, et pas seulement à une base de données particulière sur le serveur. En d’autres termes, les règles de réseau virtuel s’appliquent au niveau du serveur, et non au niveau de la base de données.
En revanche, les règles IP peuvent être appliquées à tout niveau.
Rôles d’administration de la sécurité
Il existe une séparation des rôles de sécurité dans l’administration des points de terminaison de service de réseau virtuel. Chacun des rôles suivants doit réaliser une action :
- Administrateur réseau (rôle Contributeur de réseau) : activez le point de terminaison.
- Administrateur de base de données (rôle Contributeur SQL Server) : Mettez à jour la liste de contrôle d’accès (ACL, Access Control List) pour ajouter le sous-réseau donné au serveur.
Alternative Azure RBAC
Les rôles d’administrateur de réseau et d’administrateur de base de données disposent de plus de fonctionnalités que nécessaires pour gérer les règles de réseau virtuel. Vous n’avez besoin que d’un sous-ensemble de leurs capacités.
Vous pouvez utiliser le contrôle d’accès basé sur les rôles (RBAC) dans Azure pour créer un rôle personnalisé unique qui ne possède que le sous-ensemble de capacités nécessaire. Vous pouvez utiliser le rôle personnalisé au lieu d’impliquer soit l’administrateur réseau, soit l’administrateur de base de données. La surface de votre exposition à la sécurité est plus faible si vous ajoutez un utilisateur à un rôle personnalisé que si vous l’ajoutez aux deux autres rôles majeurs d’administrateur.
Note
Dans certains cas, la base de données dans SQL Database et le sous-réseau de réseau virtuel se trouvent dans des abonnements différents. Dans ces cas-là, vous devez vérifier les configurations suivantes :
- L’utilisateur dispose des autorisations requises pour lancer des opérations, telles que l’activation des points de terminaison de service et l’ajout d’un sous-réseau de réseau virtuel sur le serveur donné.
- Les deux abonnements ont enregistré le fournisseur
Microsoft.Sql.
Limitations
Pour SQL Database, la fonctionnalité de règle de réseau virtuel présente les limitations suivantes :
- Dans le pare-feu pour votre base de données SQL Database, chaque règle de réseau virtuel fait référence à un sous-réseau. Vous devez héberger tous ces sous-réseaux référencés dans la même région géographique que celle qui héberge la base de données.
- Chaque serveur peut avoir jusqu’à 128 entrées ACL pour tout réseau virtuel.
- Les règles de réseau virtuel s’appliquent uniquement à des réseaux virtuels Azure Resource Manager, et non à des réseaux du modèle de déploiement classique.
- Sur le pare-feu, les plages d’adresses IP s’appliquent aux éléments réseau suivants, mais les règles réseau virtuel ne le font pas :
- Réseau privé virtuel (VPN) site à site (S2S)
- Localement via Azure ExpressRoute
- Les deux abonnements doivent se trouver dans le même locataire Microsoft Entra.
Considérations relatives à l’utilisation des points de terminaison de service
Lorsque vous utilisez des points de terminaison de service pour SQL Database, passez en revue les considérations suivantes :
- Le trafic sortant vers les adresses IP publiques d’Azure SQL Database est nécessaire. Vous devez ouvrir les groupes de sécurité réseau (NSG) aux IP de la base de données SQL pour permettre la connectivité. Pour ce faire, vous pouvez utiliser des étiquettes de service NSG pour SQL Database.
ExpressRoute
Si vous utilisez ExpressRoute depuis vos locaux, pour le peering public ou Microsoft, vous devez identifier les adresses IP NAT utilisées. Pour le peering public, chaque circuit ExpressRoute utilise par défaut deux adresses IP NAT qui sont appliquées au trafic de service Azure lorsque le trafic entre dans le réseau principal de Microsoft Azure. Pour le peering Microsoft, soit le client, soit le fournisseur de services fournit les adresses IP NAT utilisées. Pour autoriser l’accès à vos ressources de votre service, vous devez autoriser ces adresses IP publiques dans le paramètre de pare-feu IP de ressource. Pour trouver les adresses IP de votre circuit ExpressRoute de peering public, ouvrez un ticket de support avec ExpressRoute via le portail Azure. Pour en savoir plus sur le NAT pour le peering public et le peering Microsoft pour ExpressRoute, consultez Exigences NAT pour le peering public Azure.
Pour permettre la communication entre votre circuit et SQL Database, vous devez créer des règles de réseau IP pour les IP publiques de votre processus NAT.
Impact de l’utilisation de points de terminaison de service de réseau virtuel avec stockage Azure
stockage Azure prend en charge les points de terminaison de service de réseau virtuel qui limitent la connectivité à un compte de stockage. Si SQL Database utilise un compte avec cette configuration, examinez l’impact sur l’audit blob.
Audit Azure SQL Database vers le stockage Blob
L’audit Azure SQL peut écrire des journaux d’audit SQL dans votre propre compte de stockage. Si ce compte de stockage utilise la fonctionnalité de points de terminaison de service de réseau virtuel, consultez l’article expliquant comment consigner l’audit dans un compte de stockage derrière un réseau virtuel et un pare-feu.
Ajouter une règle de pare-feu de réseau virtuel à votre serveur
Avant que cette fonctionnalité ne soit améliorée, vous deviez activer les points de terminaison de service de réseau virtuel avant de pouvoir implémenter une règle de réseau virtuel dynamique dans le pare-feu. Les points de terminaison associaient le sous-réseau d’un réseau virtuel donné à une base de données dans SQL Database. Depuis janvier 2018, vous pouvez contourner cette exigence en définissant le flag IgnoreMissingVNetServiceEndpoint. À présent, vous pouvez ajouter une règle de pare-feu de réseau virtuel à votre serveur sans activer les points de terminaison de service de réseau virtuel.
Le seul paramétrage d’une règle de pare-feu ne permet pas de sécuriser le serveur. Vous devez également activer les points de terminaison de service de réseau virtuel pour que la sécurité soit appliquée. Quand vous activez les points de terminaison de service, le sous-réseau de votre réseau virtuel subit une indisponibilité le temps de passer de l’état Désactivé à l’état Activé. Cette période de temps d’arrêt est particulièrement vraie dans le contexte de grands réseaux virtuels. Vous pouvez utiliser l’indicateur IgnoreMissingVNetServiceEndpoint pour réduire ou éliminer le temps d’arrêt pendant la transition.
Vous pouvez définir le IgnoreMissingVNetServiceEndpoint flag en utilisant PowerShell. Pour plus d’informations, consultez Utiliser PowerShell pour créer un point de terminaison de service de réseau virtuel et une règle pour SQL Database.
Utiliser le portail Azure pour créer une règle de réseau virtuel
Cette section montre comment utiliser le portail Azure pour créer une règle de réseau virtuel dans votre base de données SQL Database. La règle donne l’instruction à votre base de données d’accepter les communications provenant d’un sous-réseau spécifique que vous avez marqué comme étant un point de terminaison de service de réseau virtuel.
Note
Pour ajouter un point de terminaison de service aux règles du pare-feu réseau virtuel de votre serveur, assurez-vous d’abord que les points de terminaison de service sont activés pour le sous-réseau.
Si les points de terminaison de service ne sont pas activés pour le sous-réseau, le portail vous invite à les activer. Sélectionnez le bouton Activer sur le même volet que celui où vous ajoutez la règle.
Prérequis
Vous devez déjà disposer d’un sous-réseau étiqueté avec le nom de type du point de terminaison de service de réseau virtuel particulier approprié pour SQL Database.
- Le nom du type de point de terminaison correspondant est Microsoft.Sql.
- Si votre sous-réseau n’est pas étiqueté avec le nom de type, consultez Vérifier que votre sous-réseau est un point de terminaison.
Étapes du portail Azure
Connectez-vous au portail Azure.
Recherchez et sélectionnez Serveurs SQL, puis sélectionnez votre serveur. Sous Sécurité, sélectionnez Mise en réseau.
Sous l’onglet Accès public, vérifiez que Accès au réseau public est défini sur Sélectionner des réseaux ; sinon, les paramètres Réseaux virtuels sont masqués. Sélectionnez + Ajouter un réseau virtuel existant dans la section Réseaux virtuels.
Dans le nouveau volet Créer/mettre à jour, renseignez les zones avec les noms de vos ressources Azure.
Astuce
Vous devez inclure le préfixe d’adresse correct pour votre sous-réseau. Vous pouvez trouver la valeur de Préfixe de l’adresse dans le portail. Accédez à Toutes les ressources>Tous les types>Réseaux virtuels. Le filtre affiche vos réseaux virtuels. Sélectionnez votre réseau virtuel, puis sélectionnez Sous-réseaux. La colonne PLAGE D’ADRESSES contient le préfixe d’adresse dont vous avez besoin.
Consultez la règle de réseau virtuel obtenue dans le volet Pare-feu.
Définissez Autoriser les services et les ressources Azure à accéder à ce serveur sur Non.
Important
Si vous ne désélectionnez pas Autoriser les services et ressources Azure à accéder à ce serveur, votre serveur accepte les communications à partir de n’importe quel sous-réseau à l’intérieur de la limite Azure. Cette communication provient d'une des adresses IP reconnues comme étant dans des plages définies pour les centres de données Azure. Du point de vue de la sécurité, le fait de laisser le contrôle activé peut constituer un niveau d’accès excessif. La fonctionnalité de points de terminaison de service de Réseau Virtuel Microsoft Azure, associée à la fonctionnalité de règles de réseau virtuel de SQL Database, peut réduire votre surface d’exposition de sécurité.
Sélectionnez le bouton OK en bas du volet.
Note
Les états suivants s’appliquent aux règles :
- Prêt : Indique que l’opération que vous avez initiée a réussi.
- Échec : indique que l’opération que vous avez initiée a échoué.
-
Supprimé : Ne s’applique qu’à l’opération
Deleteet indique que la règle est supprimée et ne s’applique plus. - InProgress (En cours) : indique que l’opération est en cours d’exécution. L’ancienne règle s’applique lorsque l’opération est dans cet état.
Utiliser PowerShell pour créer une règle de réseau virtuel
Vous pouvez utiliser un script pour créer des règles de réseau virtuel à l’aide de la cmdlet PowerShell New-AzSqlServerVirtualNetworkRule ou az network vnet create. Pour plus d’informations, consultez Utiliser PowerShell pour créer un point de terminaison de service de réseau virtuel et une règle pour SQL Database.
Utiliser l’API REST pour créer une règle de réseau virtuel
En interne, les cmdlets PowerShell pour les actions de réseau virtuel SQL appellent des API REST. Vous pouvez appeler les API REST directement. Pour plus d’informations, consultez Règles de réseau virtuel : Opérations.
Résoudre les erreurs 40914 et 40615
L’erreur de connexion 40914 est liée aux règles de réseau virtuel, comme spécifié dans le volet Pare-feu du portail Azure.
L’erreur 40615 est similaire, mais elle concerne les règles d’adresse IP sur le pare-feu.
Erreur 40914
Texte du message : « Impossible d’ouvrir le serveur "[nom-serveur]" demandé par la connexion ». Le client n’est pas autorisé à accéder au serveur. »
Description de l’erreur : le client se trouve dans un sous-réseau qui dispose de points de terminaison de serveur de réseau virtuel. Mais le serveur n’a pas de règle de réseau virtuel qui accorde au sous-réseau le droit de communiquer avec la base de données.
Résolution de l’erreur : dans le volet Pare-feu du portail Azure, utilisez le contrôle des règles de réseau virtuel pour ajouter une règle de réseau virtuel pour le sous-réseau.
Erreur 40615
Texte du message : Impossible d’ouvrir le serveur ’{0}’ demandé par la connexion. Le client avec l’adresse IP "{1}" n’est pas autorisé à accéder au serveur.
Description de l’erreur : Le client tente de se connecter depuis une adresse IP non autorisée à se connecter au serveur. Le pare-feu du serveur ne dispose d’aucune règle d’adresse IP qui autorise un client à communiquer à partir de l’adresse IP donnée vers la base de données.
Résolution de l’erreur : entrez l’adresse IP du client en tant que règle IP. Utilisez le volet Pare-feu dans le portail Azure pour compléter cette étape.
Points de terminaison de service de réseau virtuel pour Azure Synapse Analytics
Pour plus d’informations, consultez les points de terminaison de service et règles de réseau virtuel pour Azure Synapse Analytics.