Configurer des règles d’application de pare-feu Azure avec des noms de domaine complets SQL

Vous pouvez maintenant configurer des règles d’application de pare-feu Azure avec des noms de domaine complets SQL. Cela vous permet de limiter l’accès à partir de vos réseaux virtuels aux seules instances de serveur SQL spécifiées.

Grâce aux noms de domaine complets SQL, vous pouvez filtrer le trafic :

  • De votre réseaux virtuels à une instance Azure SQL Database ou Azure Synapse Analytics. Par exemple : Autoriser uniquement l’accès à sql-server1.database.windows.net.
  • Envoi local vers Azure SQL Managed Instances ou IaaS SQL en cours d’exécution dans vos réseaux virtuels.
  • Envoi rayon à rayon vers Azure SQL Managed Instances ou IaaS SQL en cours d’exécution dans vos réseaux virtuels.

Le filtrage FQDN SQL est pris en charge uniquement en mode proxy (port 1433). Si vous utilisez SQL dans le mode de redirection par défaut, vous pouvez filtrer les accès à l’aide de la balise de service SQL dans le cadre des règles de réseau. Si vous utilisez des ports qui ne sont pas par défaut pour le trafic IaaS SQL, vous pouvez configurer ces ports dans les règles d’application de pare-feu.

Configurer à l’aide d’Azure CLI

  1. Déployer un pare-feu Azure à l’aide de Azure CLI.

  2. Si vous filtrez le trafic vers Azure SQL Database, Azure Synapse Analytics ou SQL Managed Instance, assurez-vous que le mode de connectivité SQL est défini sur Proxy. Pour savoir comment modifier de mode de connectivité SQL, voir Paramètres de connectivité Azure SQL.

    Notes

    Le mode proxy de SQL peut entraîner une plus grande latence par rapport au mode de redirection. Si vous souhaitez continuer à utiliser le mode de redirection, qui est le mode par défaut pour les clients se connectant à Azure, vous pouvez filtrer l’accès en utilisant la balise de service SQL dans les règles de réseau du pare-feu.

  3. Créez un regroupement de règles avec une règle d’application utilisant le nom de domaine complet SQL pour autoriser l’accès à un serveur SQL Server :

     az extension add -n azure-firewall
    
     az network firewall application-rule create \ 
         --resource-group Test-FW-RG \
         --firewall-name Test-FW01 \ 
         --collection-name sqlRuleCollection \
         --priority 1000 \
         --action Allow \
         --name sqlRule \
         --protocols mssql=1433 \
         --source-addresses 10.0.0.0/24 \
         --target-fqdns sql-serv1.database.windows.net
    

Configuration à l’aide d’Azure PowerShell

  1. Déployer un pare-feu Azure à l’aide d’Azure PowerShell.

  2. Si vous filtrez le trafic vers Azure SQL Database, Azure Synapse Analytics ou SQL Managed Instance, assurez-vous que le mode de connectivité SQL est défini sur Proxy. Pour savoir comment modifier de mode de connectivité SQL, voir Paramètres de connectivité Azure SQL.

    Notes

    Le mode proxy de SQL peut entraîner une plus grande latence par rapport au mode de redirection. Si vous souhaitez continuer à utiliser le mode de redirection, qui est le mode par défaut pour les clients se connectant à Azure, vous pouvez filtrer l’accès en utilisant la balise de service SQL dans les règles de réseau du pare-feu.

  3. Créez un regroupement de règles avec une règle d’application utilisant le nom de domaine complet SQL pour autoriser l’accès à un serveur SQL Server :

    $AzFw = Get-AzFirewall -Name "Test-FW01" -ResourceGroupName "Test-FW-RG"
    
    $sqlRule = @{
       Name          = "sqlRule"
       Protocol      = "mssql:1433" 
       TargetFqdn    = "sql-serv1.database.windows.net"
       SourceAddress = "10.0.0.0/24"
    }
    
    $rule = New-AzFirewallApplicationRule @sqlRule
    
    $sqlRuleCollection = @{
       Name       = "sqlRuleCollection" 
       Priority   = 1000 
       Rule       = $rule
       ActionType = "Allow"
    }
    
    $ruleCollection = New-AzFirewallApplicationRuleCollection @sqlRuleCollection
    
    $Azfw.ApplicationRuleCollections.Add($ruleCollection)    
    Set-AzFirewall -AzureFirewall $AzFw    
    

Configurer à l’aide du portail Azure

  1. Déployer un pare-feu Azure à l’aide de Azure CLI.

  2. Si vous filtrez le trafic vers Azure SQL Database, Azure Synapse Analytics ou SQL Managed Instance, assurez-vous que le mode de connectivité SQL est défini sur Proxy. Pour savoir comment modifier de mode de connectivité SQL, voir Paramètres de connectivité Azure SQL.

    Notes

    Le mode proxy de SQL peut entraîner une plus grande latence par rapport au mode de redirection. Si vous souhaitez continuer à utiliser le mode de redirection, qui est le mode par défaut pour les clients se connectant à Azure, vous pouvez filtrer l’accès en utilisant la balise de service SQL dans les règles de réseau du pare-feu.

  3. Ajouter la règle d’application avec le protocole approprié, le port et le nom de domaine complet SQL, puis sélectionnez Enregistrer. règle d’application avec nom de domaine complet SQL

  4. Accédez à SQL à partir d’une machine virtuelle dans un réseau virtuel qui filtre le trafic à l’aide du pare-feu.

  5. Vérifiez que les journaux du pare-feu d’Azure sont autorisés à afficher le trafic.

Étapes suivantes

Pour en savoir plus sur le proxy de SQL et sur les modes de redirection, consultez Architecture de connectivité de base de données SQL Azure.