Regole del firewall IP del database SQL di Azure e di Azure SQL Data WarehouseAzure SQL Database and Azure SQL Data Warehouse IP firewall rulesAzure SQL Database and Azure SQL Data Warehouse IP firewall rules

Nota

Questo articolo si applica ai server SQL di Azure e ai database del database SQL di Azure e del data warehouse SQL di Azure in un server SQL di Azure.This article applies to Azure SQL servers, and to both Azure SQL Database and Azure SQL Data Warehouse databases on an Azure SQL server.This article applies to Azure SQL servers, and to both Azure SQL Database and Azure SQL Data Warehouse databases on an Azure SQL server. Per semplicità, il database SQL viene usato per fare riferimento sia al database SQL che al data warehouse SQL.For simplicity, SQL Database is used to refer to both SQL Database and SQL Data Warehouse.

Importante

Le informazioni di questo articolo non sono valide per Istanza gestita di database SQL di Azure.This article does not apply to Azure SQL Database Managed Instance. Per informazioni sulla configurazione di rete, vedere Connettere l'applicazione all'istanza gestita del database SQLdi Azure.For information about network configuration, see Connect your application to Azure SQL Database Managed Instance.For information about network configuration, see Connect your application to Azure SQL Database Managed Instance.

Quando si crea un nuovo server SQL di Azure denominato mysqlserver, ad esempio, il firewall del database SQL blocca tutti gli accessi all'endpoint pubblico per il server (accessibile in mysqlserver.database.windows.net).When you create a new Azure SQL server named mysqlserver, for example, the SQL Database firewall blocks all access to the public endpoint for the server (which is accessible at mysqlserver.database.windows.net).

Importante

SQL Data Warehouse supporta solo le regole del firewall IP a livello di server.SQL Data Warehouse only supports server-level IP firewall rules. Non supporta le regole del firewall IP a livello di database.It doesn't support database-level IP firewall rules.

Funzionamento del firewallHow the firewall works

I tentativi di connessione da Internet e Azure devono passare attraverso il firewall prima di raggiungere il server SQL o il database SQL, come illustrato nel diagramma seguente.Connection attempts from the internet and Azure must pass through the firewall before they reach your SQL server or SQL database, as the following diagram shows.

Diagramma di configurazione del firewall

Regole del firewall IP a livello di serverServer-level IP firewall rules

Queste regole consentono ai client di accedere all'intero server SQL di Azure, ovvero a tutti i database all'interno dello stesso server di database SQL.These rules enable clients to access your entire Azure SQL server, that is, all the databases within the same SQL Database server. Le regole vengono archiviate nel database master.The rules are stored in the master database. È possibile avere un massimo di 128 regole del firewall IP a livello di server per un server SQL di Azure.You can have a maximum of 128 server-level IP firewall rules for an Azure SQL Server.You can have a maximum of 128 server-level IP firewall rules for an Azure SQL Server. Se l'impostazione Consenti ai servizi e alle risorse di Azure di accedere a questo server è abilitata, questa viene considerata una singola regola del firewall per SQL Server di Azure.If you have the Allow Azure Services and resources to access this server setting enabled, this counts as a single firewall rule for Azure SQL Server.If you have the Allow Azure Services and resources to access this server setting enabled, this counts as a single firewall rule for Azure SQL Server.

È possibile configurare le regole del firewall IP a livello di server usando il portale di Azure, PowerShell o le istruzioni Transact-SQLTransact-SQL .You can configure server-level IP firewall rules by using the Azure portal, PowerShell, or Transact-SQL statements.

  • Per usare il portale o PowerShell, è necessario essere il proprietario della sottoscrizione o un collaboratore della sottoscrizione.To use the portal or PowerShell, you must be the subscription owner or a subscription contributor.
  • Per usare Transact-SQLTransact-SQL, è necessario connettersi all'istanza del database SQL come account di accesso dell'entità a livello di server o come amministratore di Azure Active Directory.To use Transact-SQLTransact-SQL, you must connect to the SQL Database instance as the server-level principal login or as the Azure Active Directory administrator.To use Transact-SQL, you must connect to the SQL Database instance as the server-level principal login or as the Azure Active Directory administrator. Una regola del firewall IP a livello di server deve prima essere creata da un utente con autorizzazioni a livello di Azure.(A server-level IP firewall rule must first be created by a user who has Azure-level permissions.)

Regole del firewall IP a livello di databaseDatabase-level IP firewall rules

Queste regole consentono ai client di accedere a determinati database (sicuri) nello stesso server di database SQL.These rules enable clients to access certain (secure) databases within the same SQL Database server. Creare le regole per ogni database (incluso il database master) e vengono archiviati nel singolo database.You create the rules for each database (including the master database), and they're stored in the individual database.

È possibile creare e gestire le regole del firewall IP a livello di database per i database master e utente utilizzando le istruzioni Transact-SQLTransact-SQL e solo dopo aver configurato il primo firewall a livello di server.You can only create and manage database-level IP firewall rules for master and user databases by using Transact-SQL statements and only after you configure the first server-level firewall.

Se si specifica un intervallo di indirizzi IP nella regola del firewall IP a livello di database non compreso nell'intervallo nella regola del firewall IP a livello di server, solo i client che dispongono di indirizzi IP nell'intervallo a livello di database possono accedere al database.If you specify an IP address range in the database-level IP firewall rule that's outside the range in the server-level IP firewall rule, only those clients that have IP addresses in the database-level range can access the database.

Per un database è possibile avere un massimo di 128 regole del firewall IP a livello di database.You can have a maximum of 128 database-level IP firewall rules for a database. Per altre informazioni sulla configurazione delle regole del firewall IP a livello di database, vedere l'esempio più avanti in questo articolo e vedere sp_set_database_firewall_rule (Database SQLdi Azure).For more information about configuring database-level IP firewall rules, see the example later in this article and see sp_set_database_firewall_rule (Azure SQL Database).

Consigli su come impostare le regole del firewallRecommendations for how to set firewall rules

Se possibile, è consigliabile utilizzare regole del firewall IP a livello di database.We recommend that you use database-level IP firewall rules whenever possible. Questa pratica migliora la sicurezza e rende il database più portabile.This practice enhances security and makes your database more portable. Utilizzare le regole del firewall IP a livello di server per gli amministratori.Use server-level IP firewall rules for administrators. Utilizzarli anche quando si dispone di molti database che hanno gli stessi requisiti di accesso e non si desidera configurare ogni database singolarmente.Also use them when you have many databases that have the same access requirements, and you don't want to configure each database individually.

Nota

Per informazioni sui database portabili per la continuità aziendale, vedere nel contesto della continuità aziendale, vedere i requisiti di autenticazione per il ripristino di emergenza.For information about portable databases in the context of business continuity, see Authentication requirements for disaster recovery.

Regole del firewall IP a livello di server e a livello di database a confrontoServer-level versus database-level IP firewall rules

Gli utenti di un database devono essere completamente isolati da un altro database?Should users of one database be fully isolated from another database?

In caso affermativo, utilizzare le regole del firewall IP a livello di database per concedere l'accesso.If yes, use database-level IP firewall rules to grant access. Questo metodo evita l'utilizzo di regole del firewall IP a livello di server, che consentono l'accesso attraverso il firewall a tutti i database.This method avoids using server-level IP firewall rules, which permit access through the firewall to all databases. Questo ridurrebbe la profondità delle tue difese.That would reduce the depth of your defenses.

Gli utenti degli indirizzi IP devono accedere a tutti i database?Do users at the IP addresses need access to all databases?

In caso affermativo, utilizzare le regole del firewall IP a livello di server per ridurre il numero di volte in cui è necessario configurare le regole del firewall IP.If yes, use server-level IP firewall rules to reduce the number of times that you have to configure IP firewall rules.

La persona o il team che configura le regole del firewall IP ha accesso solo tramite il portale di Azure, PowerShell o l'API REST?Does the person or team who configures the IP firewall rules only have access through the Azure portal, PowerShell, or the REST API?

In tal caso, è necessario utilizzare le regole del firewall IP a livello di server.If so, you must use server-level IP firewall rules. Le regole del firewall IP a livello di database possono essere configurate solo tramite Transact-SQLTransact-SQL.Database-level IP firewall rules can only be configured through Transact-SQLTransact-SQL.Database-level IP firewall rules can only be configured through Transact-SQL.

La persona o il team che configura le regole del firewall IP non può disporre di autorizzazioni di alto livello a livello di database?Is the person or team who configures the IP firewall rules prohibited from having high-level permission at the database level?

In tal caso, utilizzare le regole del firewall IP a livello di server.If so, use server-level IP firewall rules. Per configurare le regole del firewall IP a livello di database tramite Transact-SQLTransact-SQL è necessaria almeno l'autorizzazione CONTROL DATABASE a livello di database.You need at least CONTROL DATABASE permission at the database level to configure database-level IP firewall rules through Transact-SQL.

La persona o il team che configura o controlla le regole del firewall IP gestisce centralmente le regole del firewall IP per molti (forse centinaia) di database?Does the person or team who configures or audits the IP firewall rules centrally manage IP firewall rules for many (perhaps hundreds) of databases?

In questo scenario, le procedure consigliate sono determinate dalle esigenze e dall'ambiente.In this scenario, best practices are determined by your needs and environment. Le regole del firewall IP a livello di server potrebbero essere più facili da configurare, tuttavia lo scripting consente di configurare le regole a livello di database.Server-level IP firewall rules might be easier to configure, but scripting can configure rules at the database-level. E anche se si utilizzano le regole del firewall IP a livello di server, potrebbe essere necessario controllare le regole del firewall IP a livello di database per vedere se gli utenti con autorizzazione CONTROL per il database creano regole del firewall IP a livello di database.And even if you use server-level IP firewall rules, you might need to audit database-level IP firewall rules to see if users with CONTROL permission on the database create database-level IP firewall rules.

È possibile utilizzare una combinazione di regole del firewall IP a livello di server e di database?Can I use a mix of server-level and database-level IP firewall rules?

Sì.Yes. Alcuni utenti, ad esempio gli amministratori, potrebbero aver bisogno di regole del firewall IP a livello di server.Some users, such as administrators, might need server-level IP firewall rules. Altri utenti, ad esempio gli utenti di un'applicazione di database, potrebbero aver bisogno di regole del firewall IP a livello di database.Other users, such as users of a database application, might need database-level IP firewall rules.

Connessioni da InternetConnections from the internet

Quando un computer tenta di connettersi al server di database da Internet, il firewall controlla innanzitutto l'indirizzo IP di origine della richiesta rispetto alle regole del firewall IP a livello di database per il database richiesto dalla connessione.When a computer tries to connect to your database server from the internet, the firewall first checks the originating IP address of the request against the database-level IP firewall rules for the database that the connection requests.

  • Se l'indirizzo è compreso in un intervallo specificato nelle regole del firewall IP a livello di database, la connessione viene concessa al database SQL che contiene la regola.If the address is within a range that's specified in the database-level IP firewall rules, the connection is granted to the SQL database that contains the rule.
  • Se l'indirizzo non è compreso in un intervallo nelle regole del firewall IP a livello di database, il firewall controlla le regole del firewall IP a livello di server.If the address isn't within a range in the database-level IP firewall rules, the firewall checks the server-level IP firewall rules. Se l'indirizzo è compreso in un intervallo che si trova nelle regole del firewall IP a livello di server, la connessione viene concessa.If the address is within a range that's in the server-level IP firewall rules, the connection is granted. Le regole del firewall IP a livello di server si applicano a tutti i database SQL nel server di Azure SQL.Server-level IP firewall rules apply to all SQL databases on the Azure SQL server.
  • Se l'indirizzo non è compreso in un intervallo che si trova in una delle regole del firewall IP a livello di database o server, la richiesta di connessione ha esito negativo.If the address isn't within a range that's in any of the database-level or server-level IP firewall rules, the connection request fails.

Nota

Per accedere al database SQL dal computer locale, assicurarsi che il firewall della rete e del computer locale consenta la comunicazione in uscita sulla porta TCP 1433.To access SQL Database from your local computer, ensure that the firewall on your network and local computer allow outgoing communication on TCP port 1433.

Connessioni dall'interno di AzureConnections from inside AzureConnections from inside Azure

Per consentire alle applicazioni ospitate all'interno di Azure di connettersi al server SQL, è necessario abilitare le connessioni di Azure.To allow applications hosted inside Azure to connect to your SQL server, Azure connections must be enabled.To allow applications hosted inside Azure to connect to your SQL server, Azure connections must be enabled. Quando un'applicazione da Azure tenta di connettersi al server di database, il firewall verifica che siano consentite le connessioni di Azure.When an application from Azure tries to connect to your database server, the firewall verifies that Azure connections are allowed.When an application from Azure tries to connect to your database server, the firewall verifies that Azure connections are allowed. Un'impostazione del firewall con indirizzi IP iniziale e finale pari a 0.0.0.0 indica che sono consentite connessioni di Azure.A firewall setting that has starting and ending IP addresses equal to 0.0.0.0 indicars that Azure connections are allowed.A firewall setting that has starting and ending IP addresses equal to 0.0.0.0 indicates that Azure connections are allowed. Questa opzione può essere attivata direttamente dal pannello Portale di Azure impostando le regole del firewall, nonché cambiando le impostazioni Consenti ai servizi e alle risorse di Azure di accedere a questo server su ON nelle impostazioni Firewall e reti virtuali.This can be turned on directly from the Azure Portal blade by setting Firewall rules, as well as switching the Allow Azure Services and resources to access this server to ON in the Firewalls and virtual networks settings. Se la connessione non è consentita, la richiesta non raggiunge il server di database SQL.If the connection isn't allowed, the request doesn't reach the SQL Database server.

Importante

Questa opzione configura il firewall per consentire tutte le connessioni da Azure, incluse le connessioni dalle sottoscrizioni di altri clienti.This option configures the firewall to allow all connections from Azure, including connections from the subscriptions of other customers. Se si seleziona questa opzione, assicurarsi che le autorizzazioni di accesso e utente limitino l'accesso solo agli utenti autorizzati.If you select this option, make sure that your login and user permissions limit access to authorized users only.

Creare e gestire le regole del firewall IPCreate and manage IP firewall rules

Per creare la prima impostazione del firewall a livello di server, usare il portale di Azure o a livello di codice usando Azure PowerShell, l'interfaccia della riga di comandodi Azure o un'API RESTdi Azure.You create the first server-level firewall setting by using the Azure portal or programmatically by using Azure PowerShell, Azure CLI, or an Azure REST API. È possibile creare e gestire regole aggiuntive del firewall IP a livello di server utilizzando questi metodi o Transact-SQLTransact-SQL .You create and manage additional server-level IP firewall rules by using these methods or Transact-SQL.

Importante

Le regole del firewall IP a livello di database possono essere create e gestite solo tramite Transact-SQLTransact-SQL.Database-level IP firewall rules can only be created and managed by using Transact-SQL.

Per migliorare le prestazioni, le regole del firewall IP a livello di server vengono temporaneamente memorizzate nella cache a livello di database.To improve performance, server-level IP firewall rules are temporarily cached at the database level. Per aggiornare la cache, vedere DBCC FLUSHAUTHCACHE.To refresh the cache, see DBCC FLUSHAUTHCACHE.

Suggerimento

È possibile usare il servizio di controllo del database SQL per controllare le modifiche del firewall a livello di server e di database.You can use SQL Database Auditing to audit server-level and database-level firewall changes.

Usare il portale di Azure per gestire le regole del firewall IP a livello di serverUse the Azure portal to manage server-level IP firewall rulesUse the Azure portal to manage server-level IP firewall rules

Per impostare una regola del firewall IP a livello di server nel portale di Azure, passare alla pagina di panoramica del database SQL di Azure o del server di database SQL.To set a server-level IP firewall rule in the Azure portal, go to the overview page for your Azure SQL database or your SQL Database server.

Suggerimento

Per un'esercitazione, vedere Creare un database tramite il portale di Azure.For a tutorial, see Create a DB using the Azure portal.

Dalla pagina di panoramica del databaseFrom the database overview page

  1. Per impostare una regola del firewall IP a livello di server dalla pagina di panoramica del database, selezionare Imposta firewall server sulla barra degli strumenti, come illustrato nell'immagine seguente.To set a server-level IP firewall rule from the database overview page, select Set server firewall on the toolbar, as the following image shows.

    Regola firewall IP del server

    Si apre la pagina Impostazioni del firewall per il server di database SQL.The Firewall settings page for the SQL Database server opens.

  2. Selezionare Aggiungi IP client sulla barra degli strumenti per aggiungere l'indirizzo IP del computer in uso, quindi scegliere Salva.Select Add client IP on the toolbar to add the IP address of the computer that you're using, and then select Save. Una regola del firewall IP a livello di server viene creata per l'indirizzo IP corrente.A server-level IP firewall rule is created for your current IP address.

    Impostare la regola del firewall IP a livello di server

Dalla pagina di panoramica del serverFrom the server overview page

Viene visualizzata la pagina di panoramica del server.The overview page for your server opens. Mostra il nome completo del server (ad esempio mynewserver20170403.database.windows.net) e fornisce opzioni per un'ulteriore configurazione.It shows the fully qualified server name (such as mynewserver20170403.database.windows.net) and provides options for further configuration.

  1. Per impostare una regola a livello di server da questa pagina, selezionare Firewall dal menu Impostazioni sul lato sinistro.To set a server-level rule from this page, select Firewall from the Settings menu on the left side.

  2. Selezionare Aggiungi IP client sulla barra degli strumenti per aggiungere l'indirizzo IP del computer in uso, quindi scegliere Salva.Select Add client IP on the toolbar to add the IP address of the computer that you're using, and then select Save. Una regola del firewall IP a livello di server viene creata per l'indirizzo IP corrente.A server-level IP firewall rule is created for your current IP address.

Usare Transact-SQLTransact-SQL per gestire le regole del firewall IPUse Transact-SQL to manage IP firewall rulesUse Transact-SQL to manage IP firewall rules

Visualizzazione catalogo o stored procedureCatalog view or stored procedure LevelLevel DescrizioneDescription
sys.firewall_rulessys.firewall_rules ServerServer Visualizza le regole del firewall IP a livello di server correntiDisplays the current server-level IP firewall rules
sp_set_firewall_rulesp_set_firewall_rule ServerServer Crea o aggiorna regole del firewall IP a livello di serverCreates or updates server-level IP firewall rules
sp_delete_firewall_rulesp_delete_firewall_rule ServerServer Rimuove regole del firewall IP a livello di serverRemoves server-level IP firewall rules
sys.database_firewall_rulessys.database_firewall_rules DatabaseDatabase Visualizza le regole del firewall IP a livello di database correntiDisplays the current database-level IP firewall rules
sp_set_database_firewall_rulesp_set_database_firewall_rule DatabaseDatabase Crea o aggiorna regole del firewall IP a livello di databaseCreates or updates the database-level IP firewall rules
sp_delete_database_firewall_rulesp_delete_database_firewall_rule DatabaseDatabases Rimuove le regole del firewall IP a livello di databaseRemoves database-level IP firewall rules

Nell'esempio seguente vengono esaminate le regole esistenti, viene abilitato un intervallo di indirizzi IP nel server Contosoed eliminata una regola del firewall IP:The following example reviews the existing rules, enables a range of IP addresses on the server Contoso, and deletes an IP firewall rule:

SELECT * FROM sys.firewall_rules ORDER BY name;

Aggiungere quindi una regola del firewall IP a livello di server.Next, add a server-level IP firewall rule.

EXECUTE sp_set_firewall_rule @name = N'ContosoFirewallRule',
   @start_ip_address = '192.168.1.1', @end_ip_address = '192.168.1.10'

Per eliminare una regola del firewall IP a livello di server, eseguire la sp_delete_firewall_rule stored procedure.To delete a server-level IP firewall rule, execute the sp_delete_firewall_rule stored procedure. Nell'esempio seguente viene eliminata la regola ContosoFirewallRule:The following example deletes the rule ContosoFirewallRule:

EXECUTE sp_delete_firewall_rule @name = N'ContosoFirewallRule'

Usare PowerShell per gestire le regole del firewall IP a livello di serverUse PowerShell to manage server-level IP firewall rulesUse PowerShell to manage server-level IP firewall rules

Nota

Questo articolo è stato aggiornato per usare il nuovo modulo Az di Azure PowerShell.This article has been updated to use the new Azure PowerShell Az module. È comunque possibile usare il modulo AzureRM, che continuerà a ricevere correzioni di bug almeno fino a dicembre 2020.You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Per altre informazioni sul nuovo modulo Az e sulla compatibilità di AzureRM, vedere Introduzione del nuovo modulo Az di Azure PowerShell.To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Per istruzioni sull'installazione del modulo Az, vedere Installare Azure PowerShell.For Az module installation instructions, see Install Azure PowerShell.

Importante

Il modulo di Azure Resource Manager di PowerShell è ancora supportato dal database SQL di Azure, ma tutto lo sviluppo è ora per il modulo Az.Sql.The PowerShell Azure Resource Manager module is still supported by Azure SQL Database, but all development is now for the Az.Sql module.The PowerShell Azure Resource Manager module is still supported by Azure SQL Database, but all development is now for the Az.Sql module. Per questi cmdlet, vedere AzureRM.Sql.For these cmdlets, see AzureRM.Sql. Gli argomenti per i comandi nei moduli Az e AzureRm sono sostanzialmente identici.The arguments for the commands in the Az and AzureRm modules are substantially identical.

CmdletCmdlet LevelLevel DescrizioneDescription
Oggetto Get-AzSqlServerFirewallRuleGet-AzSqlServerFirewallRule ServerServer Restituisce le regole del firewall a livello di server correntiReturns the current server-level firewall rules
New-AzSqlServerFirewallRuleNew-AzSqlServerFirewallRule ServerServer Crea una nuova regola del firewall a livello di serverCreates a new server-level firewall rule
Set-AzSqlServerFirewallRuleSet-AzSqlServerFirewallRule ServerServer Aggiorna le proprietà di una regola del firewall a livello di server esistenteUpdates the properties of an existing server-level firewall rule
Rimuovi-AzSqlServerFirewallRuleRemove-AzSqlServerFirewallRule ServerServer Rimuove regole del firewall a livello di serverRemoves server-level firewall rules

L'esempio seguente usa PowerShell per impostare una regola del firewall IP a livello di server:The following example uses PowerShell to set a server-level IP firewall rule:The following example uses PowerShell to set a server-level IP firewall rule:

New-AzSqlServerFirewallRule -ResourceGroupName "myResourceGroup" `
    -ServerName $servername `
    -FirewallRuleName "ContosoIPRange" -StartIpAddress "192.168.1.0" -EndIpAddress "192.168.1.255"

Suggerimento

Ad $servername specificare il nome del server e non il nome DNS completo, ad esempio specificare mysqldbserver anziché mysqldbserver.database.windows.netFor $servername specify the server name and not the fully qualified DNS name e.g. specify mysqldbserver instead of mysqldbserver.database.windows.net

Utilizzare l'interfaccia della riga di comando per gestire le regole del firewall IP a livello di serverUse CLI to manage server-level IP firewall rulesUse CLI to manage server-level IP firewall rules

CmdletCmdlet LevelLevel DescrizioneDescription
az sql server firewall-rule createaz sql server firewall-rule create ServerServer Crea una regola del firewall IP del serverCreates a server IP firewall rule
az sql server firewall-rule listaz sql server firewall-rule list ServerServer Elenca le regole del firewall IP in un serverLists the IP firewall rules on a server
az sql server firewall-rule showaz sql server firewall-rule show ServerServer Mostra i dettagli di una regola del firewall IPShows the detail of an IP firewall rule
az sql server firewall-rule updateaz sql server firewall-rule update ServerServer Aggiorna una regola del firewall IPUpdates an IP firewall rule
az sql server firewall-rule deleteaz sql server firewall-rule delete ServerServer Elimina una regola del firewall IPDeletes an IP firewall rule

Nell'esempio seguente viene utilizzata l'interfaccia della riga di comando per impostare una regola del firewall IP a livello di server:The following example uses CLI to set a server-level IP firewall rule:The following example uses CLI to set a server-level IP firewall rule:

az sql server firewall-rule create --resource-group myResourceGroup --server $servername \
-n ContosoIPRange --start-ip-address 192.168.1.0 --end-ip-address 192.168.1.255

Suggerimento

Ad $servername specificare il nome del server e non il nome DNS completo, ad esempio specificare mysqldbserver anziché mysqldbserver.database.windows.netFor $servername specify the server name and not the fully qualified DNS name e.g. specify mysqldbserver instead of mysqldbserver.database.windows.net

Suggerimento

Per un esempio di interfaccia della riga di comando nel contesto di una guida introduttiva, vedere Creare un database - l'interfaccia della riga di comando di Azure e Creare un singolo database e configurare una regola del firewall IP del database SQL usando l'interfaccia della riga di comandodi Azure.For a CLI example in the context of a quickstart, see Create DB - Azure CLI and Create a single database and configure a SQL Database IP firewall rule using the Azure CLI.

Usare un'API REST per gestire le regole del firewall IP a livello di serverUse a REST API to manage server-level IP firewall rulesUse a REST API to manage server-level IP firewall rules

APIAPI LevelLevel DescrizioneDescription
Elencare le regole del firewallList firewall rules ServerServer Visualizza le regole del firewall IP a livello di server correntiDisplays the current server-level IP firewall rules
Creare o aggiornare le regole del firewallCreate or update firewall rules ServerServer Crea o aggiorna regole del firewall IP a livello di serverCreates or updates server-level IP firewall rules
Eliminare le regole del firewallDelete firewall rules ServerServer Rimuove regole del firewall IP a livello di serverRemoves server-level IP firewall rules
Ottenere le regole del firewallGet firewall rulesGet firewall rules ServerServer Ottiene regole del firewall IP a livello di serverGets server-level IP firewall rules

Risolvere i problemi relativi al firewall del databaseTroubleshoot the database firewallTroubleshoot the database firewall

Quando l'accesso al servizio database SQL non si comporta come previsto, considerare i punti seguenti.Consider the following points when access to the SQL Database service doesn't behave as you expect.

  • Configurazione del firewall locale:Local firewall configuration:

    Prima che il computer possa accedere al database SQL, potrebbe essere necessario creare un'eccezione del firewall nel computer per la porta TCP 1433.Before your computer can access SQL Database, you may need to create a firewall exception on your computer for TCP port 1433. Per stabilire connessioni all'interno del limite del cloud di Azure, potrebbe essere necessario aprire porte aggiuntive.To make connections inside the Azure cloud boundary, you may have to open additional ports. Per ulteriori informazioni, vedere la sezione "Database SQL: esterno e interno" di Porte oltre 1433 per ADO.NET 4.5 e Database SQL.For more information, see the "SQL Database: Outside vs inside" section of Ports beyond 1433 for ADO.NET 4.5 and SQL Database.

  • Traduzione dell'indirizzo di rete:Network address translation:

    A causa della conversione degli indirizzi di rete (NAT), l'indirizzo IP utilizzato dal computer per connettersi al database SQL potrebbe essere diverso dall'indirizzo IP nelle impostazioni di configurazione IP del computer.Because of network address translation (NAT), the IP address that's used by your computer to connect to SQL Database may be different than the IP address in your computer's IP configuration settings. To view the IP address that your computer is using to connect to Azure:To view the IP address that your computer is using to connect to Azure:

    1. Accedere al portale.Sign in to the portal.
    2. Passare alla scheda Configura nel server che ospita il database.Go to the Configure tab on the server that hosts your database.
    3. L'indirizzo IP client corrente viene visualizzato nella sezione Indirizzi IP consentiti.The Current Client IP Address is displayed in the Allowed IP Addresses section. Selezionare Aggiungi per Indirizzi IP consentiti per consentire al computer di accedere al server.Select Add for Allowed IP Addresses to allow this computer to access the server.
  • Le modifiche all'elenco Consenti non sono ancora state applicate:Changes to the allow list haven't taken effect yet:

    Potrebbe verificarsi un ritardo massimo di cinque minuti per rendere effettive le modifiche apportate alla configurazione del firewall del database SQL.There may be up to a five-minute delay for changes to the SQL Database firewall configuration to take effect.

  • L'accesso non è autorizzato o è stata utilizzata una password errata:The login isn't authorized, or an incorrect password was used:

    Se un account di accesso non dispone delle autorizzazioni per il server di database SQL o la password non è corretta, la connessione al server viene negata.If a login doesn't have permissions on the SQL Database server or the password is incorrect, the connection to the server is denied. La creazione di un'impostazione del firewall offre solo ai client la possibilità di tentare di connettersi al server.Creating a firewall setting only gives clients an opportunity to try to connect to your server. Il client deve comunque fornire le credenziali di sicurezza necessarie.The client must still provide the necessary security credentials. Per ulteriori informazioni sulla preparazione degli account di accesso, vedere Controllo e concessione dell'accesso al database SQL al database SQL eal data warehouse SQL.For more information about preparing logins, see Controlling and granting database access to SQL Database and SQL Data Warehouse.

  • Indirizzo IP dinamico:Dynamic IP address:

    Se si dispone di una connessione a Internet che utilizza l'indirizzamento IP dinamico e si hanno problemi a passare attraverso il firewall, provare una delle seguenti soluzioni:If you have an internet connection that uses dynamic IP addressing and you have trouble getting through the firewall, try one of the following solutions:

    • Richiedere al provider di servizi Internet l'intervallo di indirizzi IP assegnato ai computer client che accedono al server di database SQL.Ask your internet service provider for the IP address range that's assigned to your client computers that access the SQL Database server. Aggiungere tale intervallo di indirizzi IP come regola del firewall IP.Add that IP address range as an IP firewall rule.
    • Ottenere invece l'indirizzamento IP statico per i computer client.Get static IP addressing instead for your client computers. Aggiungere gli indirizzi IP come regole del firewall IP.Add the IP addresses as IP firewall rules.

Passaggi successiviNext steps

  • Verificare che l'ambiente di rete aziendale consenta la comunicazione in ingresso dagli intervalli di indirizzi IP di calcolo (inclusi gli intervalli SQL) usati dai data center di Azure.Confirm that your corporate network environment allows inbound communication from the compute IP address ranges (including SQL ranges) that are used by the Azure datacenters.Confirm that your corporate network environment allows inbound communication from the compute IP address ranges (including SQL ranges) that are used by the Azure datacenters. Potrebbe essere necessario aggiungere tali indirizzi IP all'elenco Consenti.You might have to add those IP addresses to the allow list. Vedere Intervalli IP del data center di Microsoft Azure.See Microsoft Azure datacenter IP ranges.
  • Per una guida introduttiva sulla creazione di una regola del firewall IP a livello di server, vedere Creare un database SQL di Azure.For a quickstart about creating a server-level IP firewall rule, see Create an Azure SQL database.
  • Per informazioni sulla connessione a un database SQL di Azure da applicazioni open source o di terze parti, vedere Esempi di codice delle guide introduttiveclient in Database SQL.For help with connecting to an Azure SQL database from open-source or third-party applications, see Client quickstart code samples to SQL Database.
  • Per informazioni su porte aggiuntive che potrebbe essere necessario aprire, vedere la sezione "Database SQL: esterno vs interno" di Porte oltre 1433 per ADO.NET 4.5 e Database SQLFor information about additional ports that you may need to open, see the "SQL Database: Outside vs inside" section of Ports beyond 1433 for ADO.NET 4.5 and SQL Database
  • Per una panoramica della sicurezza del database SQL di Azure, vedere Protezione del database.For an overview of Azure SQL Database security, see Securing your database.