Considerazioni sulla sicurezza per SQL Server nelle macchine virtuali di Azure

SI APPLICA A: SQL Server sulla macchina virtuale di Azure

Questo argomento include linee guida generali sulla sicurezza che consentono di stabilire l'accesso sicuro alle istanze SQL Server in una macchina virtuale di Azure.This topic includes overall security guidelines that help establish secure access to SQL Server instances in an Azure virtual machine (VM).

Azure è conforme a diverse normative e standard di settore che consentono di creare una soluzione conforme con SQL Server in esecuzione in una macchina virtuale. Per informazioni sulla conformità alle normative con Azure, vedere Centro protezione di Azure.

Oltre alle procedure descritte in questo argomento, è consigliabile rivedere e implementare le procedure consigliate per la sicurezza sia dalle tradizionali procedure di sicurezza locali che dalle procedure consigliate per la sicurezza delle macchine virtuali.

Microsoft Defender per SQL

Microsoft Defender per SQL abilita le funzionalità di sicurezza di Microsoft Defender per cloud, ad esempio le valutazioni delle vulnerabilità e gli avvisi di sicurezza. Vedi abilitare Microsoft Defender per SQL altre informazioni.

Gestione del portale

Dopo aver registrato la macchina virtuale di SQL Server con l'estensione IaaS di SQL, è possibile configurare diverse impostazioni di sicurezza usando la risorsa macchine virtuali SQL nel portale di Azure, ad esempio l'abilitazione dell'integrazione del Vault delle chiavi di Azure o l'autenticazione SQL.

Inoltre, dopo aver abilitato Microsoft Defender per SQL è possibile visualizzare le funzionalità di Defender per cloud direttamente all'interno della risorsa delle macchine virtuali di SQL nel portale di Azure, ad esempio le valutazioni delle vulnerabilità e gli avvisi di sicurezza.

Per altre informazioni, vedere gestire SQL Server vm nel portale.

Integrazione del Vault delle chiavi di Azure

Sono disponibili più SQL Server di crittografia dei dati, ad esempio la crittografia dei dati trasparente (TDE), la crittografia a livello di colonna (CLE) e la crittografia di backup. Queste forme di crittografia richiedono la gestione e l'archiviazione delle chiavi di crittografia usate per la crittografia. Il servizio Vault delle chiavi di Azure è progettato per migliorare la sicurezza e la gestione di queste chiavi in una posizione sicura e a disponibilità elevata. Il connettore SQL Server consente SQL Server usare queste chiavi dal Vault delle chiavi di Azure. Per informazioni dettagliate, vedere gli altri articoli di questa serie:Elenco di controllo,Dimensioni della macchina virtuale, Archiviazione, Configurazione HADR, Raccolta della previsione.

Per altre informazioni, vedere Integrazione del Vault delle chiavi di Azure.

Controllo dell'accesso

Quando si crea la SQL Server virtuale, è consigliabile controllare con attenzione chi ha accesso al computer e SQL Server. In generale, è consigliabile eseguire le operazioni seguenti:

  • Limitare l'accesso SQL Server solo alle applicazioni e ai client che ne hanno bisogno.
  • Seguire le procedure consigliate per la gestione di account utente e password.

Le sezioni seguenti forniscono suggerimenti su come riflettere su questi punti.

Connessioni sicure

Quando si crea una macchina virtuale SQL Server con un'immagine della raccolta, l'opzione Connettività SQL Server offre la scelta tra Locale (all'interno della macchina virtuale),Privato (all'interno della rete virtuale)o Pubblico (Internet).

SQL Server connettività

Per una sicurezza ottimale, scegliere l'opzione più restrittiva per lo scenario. Ad esempio, se si esegue un'applicazione che accede SQL Server nella stessa macchina virtuale, la scelta più sicura è Locale. Se si esegue un'applicazione Azure che richiede l'accesso al SQL Server, private protegge le comunicazioni con SQL Server solo all'interno della rete virtuale di Azure specificata. Se è necessario l'accesso Pubblico (Internet) alla macchina virtuale SQL Server, assicurarsi di seguire altre procedure consigliate in questo argomento per ridurre l'area della superficie di attacco.

Le opzioni selezionate nel portale usano le regole di sicurezza in ingresso nel gruppo di sicurezza di rete (NSG) della macchina virtuale per consentire o negare il traffico di rete alla macchina virtuale. È possibile modificare o creare nuove regole del gruppo di sicurezza di rete in ingresso per consentire il traffico verso la porta SQL Server (impostazione predefinita 1433). È anche possibile specificare indirizzi IP specifici autorizzati a comunicare tramite questa porta.

Regole dei gruppi di sicurezza di rete

Oltre alle regole del gruppo di sicurezza di rete per limitare il traffico di rete, è anche possibile usare Windows firewall nella macchina virtuale.

Se si usano endpoint con il modello di distribuzione classica, rimuovere eventuali endpoint nella macchina virtuale se non vengono utilizzati. Per istruzioni sull'uso degli ACL con gli endpoint, vedere Gestire l'ACL in un endpoint. Questa operazione non è necessaria per le macchine virtuali che usano Azure Resource Manager.

Infine, è consigliabile abilitare le connessioni crittografate per l'istanza SQL Server motore di database nella macchina virtuale di Azure. Configurare SQL server con un certificato firmato. Per altre informazioni, vedere Abilitare connessioni crittografate al motore di database e Sintassi della stringa di connessione.

Crittografia

I dischi gestiti offrono Server-Side crittografia e Crittografia disco di Azure.Managed disks offer Server-Side Encryption, and Azure Disk Encryption. La crittografia lato server fornisce la crittografia a riposo e protegge i dati per soddisfare gli impegni di sicurezza e conformità dell'organizzazione. Crittografia disco di Azure usa la tecnologia BitLocker o DM-Crypt e si integra con il Vault delle chiavi di Azure per crittografare sia il sistema operativo che i dischi dati.

Porta non predefinita

Per impostazione predefinita, SQL Server ascolta su una porta nota, 1433. Per aumentare la sicurezza, configurare SQL Server per l'ascolto su una porta non predefinita, ad esempio 1401.For increased security, configure SQL Server to listen on a non-default port, such as 1401. Se si effettua il provisioning SQL Server'immagine della raccolta dati nel portale di Azure, è possibile specificare questa porta nel pannello SQL Server impostazioni.

Per configurarlo dopo il provisioning, sono disponibili due opzioni:

  • Per le macchine virtuali di Resource Manager, è possibile selezionare Sicurezza nella SQL delle macchine virtuali. In questo modo è possibile cambiare la porta.

    Modifica della porta TCP nel portale

  • Per le macchine virtuali classiche o SQL Server di cui non è stato eseguito il provisioning con il portale, è possibile configurare manualmente la porta connettendosi in remoto alla macchina virtuale. Per la procedura di configurazione, vedere Configurare un server per l'ascolto su una porta TCP specifica. Se si usa questa tecnica manuale, è anche necessario aggiungere una regola Windows firewall per consentire il traffico in ingresso su tale porta TCP.

Importante

Specificare una porta non predefinita è una buona idea se la porta SQL Server è aperta alle connessioni Internet pubbliche.

Quando SQL Server è in ascolto su una porta non predefinita, è necessario specificare la porta quando ci si connette. Si consideri ad esempio uno scenario in cui l'indirizzo IP del server è 13.55.255.255 e SQL Server è in ascolto sulla porta 1401. Per connettersi a SQL Server, è necessario specificare 13.55.255.255,1401 nella stringa di connessione.

Gestire gli account

Non si vuole che gli utenti malintenzionati indovinino facilmente i nomi degli account o le password. Usare i suggerimenti seguenti per aiutare:

  • Creare un account amministratore locale univoco non denominato Amministratore.

  • Usare password complesse complesse per tutti gli account. Per altre informazioni su come creare una password complessa, vedere l'articolo Creare una password complessa.

  • Per impostazione predefinita, Azure seleziona Windows autenticazione durante SQL Server configurazione della macchina virtuale. Di conseguenza, l'accesso sa è disabilitato e una password viene assegnata dalla configurazione. È consigliabile che l'accesso SA non sia usato o abilitato. Se è necessario avere un SQL di accesso, usare una delle strategie seguenti:

    • Creare un account SQL con un nome univoco con l'appartenenza al sysadmin. È possibile farlo dal portale abilitando l'autenticazione SQL durante il provisioning.

      Suggerimento

      Se non si abilita l'autenticazione SQL durante il provisioning, è necessario modificare manualmente la modalità di autenticazione in SQL Server e Windows di autenticazione. Per altre informazioni, vedere Cambiare la modalità di autenticazione del server.

    • Se è necessario usare l'account di accesso SA, abilitare l'accesso dopo il provisioning e assegnare una nuova password complessa.

Passaggi successivi

Se si è interessati anche alle procedure consigliate per le prestazioni, vedere Procedure consigliate per le prestazioni SQL Server sulle macchine virtuali di Azure.

Per altri argomenti relativi all'esecuzione di SQL Server nelle macchine virtuali di Azure, vedere SQL Server panoramica sulle macchine virtuali di Azure. Per domande sulle SQL Server virtuali, vedere domande frequenti.

Per altre informazioni, vedere gli altri articoli di questa serie: