Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:Istanza gestita di SQL di Azure
Azure SQL Managed Instance è un motore di database PaaS completamente gestito che offre quasi il 100% di compatibilità con l'ultima versione del motore di database SQL Server. Combina il meglio di SQL Server con i vantaggi operativi di un servizio completamente gestito. Poiché spesso archivia dati aziendali critici, inclusi record dei clienti, informazioni finanziarie e proprietà intellettuale, la protezione dell'istanza gestita di SQL è essenziale per proteggere dalle violazioni dei dati, dall'accesso non autorizzato e dalle violazioni della conformità.
Questo articolo fornisce indicazioni su come proteggere al meglio la distribuzione di Istanza gestita di SQL di Azure.
Sicurezza della rete
La sicurezza di rete per Istanza gestita di SQL consente di evitare connessioni non autorizzate, riduce l'esposizione agli attacchi e garantisce che solo le origini attendibili possano raggiungere i database tramite controlli di accesso e isolamento di rete appropriati.
Distribuire in una rete virtuale dedicata: posizionare l'istanza gestita in una subnet dedicata all'interno della rete virtuale per fornire l'isolamento della rete e controllare il flusso del traffico. Ciò garantisce che il database sia isolato da altre risorse e protetto dai limiti di rete. Per altre informazioni, vedere Requisiti di rete virtuale.
Configurare i gruppi di sicurezza di rete: applicare gruppi di sicurezza di rete alla subnet dell'istanza gestita di SQL per controllare il traffico in ingresso e in uscita. Limitare l'accesso solo alle porte e alle origini necessarie per ridurre al minimo la superficie di attacco. Per altre informazioni, vedere Gruppi di sicurezza di rete.
Usare gli endpoint privati quando possibile: connettersi all'istanza gestita di SQL tramite indirizzi IP privati per evitare di esporre il database a Internet pubblico. La connettività privata riduce il rischio di attacchi esterni ed esfiltrazione di dati. Per ulteriori informazioni, consultare Connettività dell'endpoint privato.
Disabilitare gli endpoint pubblici per impostazione predefinita: abilitare solo gli endpoint pubblici se assolutamente necessario per l'architettura. Se abilitata, usare regole firewall rigorose per limitare l'accesso solo agli indirizzi IP autorizzati. Per altre informazioni, consultare Panoramica dell'endpoint pubblico.
Implementare ExpressRoute o VPN per la connettività ibrida: usare Azure ExpressRoute o VPN da sito a sito per connessioni private sicure tra la rete locale e Azure. Ciò garantisce che i dati non attraversino la rete Internet pubblica. Per altre informazioni, vedere Architettura della connettività.
Abilitare la crittografia della connessione: configurare tutte le connessioni client per l'uso della crittografia in transito. Istanza gestita di SQL supporta TLS 1.2 per impostazione predefinita, assicurandosi che i dati siano protetti durante lo spostamento tra client e database. TLS 1.3 è disponibile anche per Istanza gestita di SQL. Per altre informazioni, vedere Sicurezza delle connessioni.
Gestione delle identità
I controlli di autenticazione e identità sicuri assicurano che solo gli utenti e le applicazioni autorizzati possano accedere alle risorse di Istanza gestita di SQL, fornendo al tempo stesso una gestione centralizzata delle identità e un controllo più semplice del ciclo di vita degli account.
Configurare un amministratore di Microsoft Entra: designare un amministratore di Microsoft Entra per l'istanza gestita di SQL per abilitare la gestione centralizzata delle identità e le funzionalità di sicurezza avanzate. Questo amministratore può gestire i criteri di accesso e autenticazione. Per altre informazioni, vedere Microsoft Entra admin.
Usare l'autenticazione Microsoft Entra: preferisce l'autenticazione Di Microsoft Entra rispetto all'autenticazione SQL per la gestione centralizzata delle identità e un controllo più semplice del ciclo di vita degli account. Microsoft Entra ID offre una sicurezza superiore e abilita funzionalità avanzate come l'accesso condizionale. Per altre informazioni, vedere Configurare l'autenticazione di Microsoft Entra.
Creare utenti di database indipendenti: usare utenti di database indipendenti che eseguono il mapping ai gruppi di Microsoft Entra invece degli account di accesso a livello di server, quando possibile. Ciò semplifica la gestione delle autorizzazioni e migliora la sicurezza eliminando la necessità di accesso a livello di server. Per altre informazioni, vedere Rendere il database portabile utilizzando database indipendenti.
Abilitare l'autenticazione a più fattori: richiedere l'autenticazione a più fattori per gli account amministrativi e gli utenti con privilegi per aggiungere un ulteriore livello di sicurezza oltre le password. Per altre informazioni, vedere Multifactor authentication (MFA).
Usare le identità gestite per le applicazioni: abilitare le identità gestite per le risorse di Azure per consentire alle applicazioni di eseguire l'autenticazione senza archiviare le credenziali. In questo modo si elimina la necessità di gestire le stringhe di connessione con password incorporate. Per altre informazioni, vedere Identità gestite per le risorse di Azure.
Applicare criteri per password sicure: se si utilizza l'autenticazione SQL, richiedere password complesse che non possano essere facilmente indovinate. Implementare i criteri di rotazione delle password ed evitare di riutilizzare le password tra account diversi. Per altre informazioni, vedere Criteri password.
Accesso con privilegi
Il controllo dell'accesso con privilegi impedisce modifiche non autorizzate, riduce l'impatto degli account compromessi e garantisce che le azioni amministrative vengano monitorate e controllate correttamente.
Implementare l'accesso con privilegi minimi: concedere agli utenti solo le autorizzazioni minime necessarie per eseguire le funzioni del processo. Esaminare e modificare regolarmente le autorizzazioni per mantenere il principio dei privilegi minimi. Per altre informazioni, vedere Introduzione alle autorizzazioni del motore di database.
Ruoli amministrativi separati: evitare di concedere diritti di amministratore a tutti gli amministratori del database. Usare autorizzazioni più granulari come CONTROL SERVER, quando possibile, e implementare la separazione dei compiti tra diverse funzioni amministrative. Per altre informazioni, vedere Permissions.
Usare il controllo degli accessi in base al ruolo di Azure: implementare il controllo degli accessi in base al ruolo di Azure per controllare l'accesso alle operazioni di gestione dell'istanza gestita di SQL. Creare ruoli personalizzati che forniscono solo le autorizzazioni necessarie per attività amministrative specifiche. Per ulteriori informazioni, vedere Azure RBAC per Istanza SQL gestita.
Monitorare le attività con privilegi: abilitare il controllo per tenere traccia di tutte le azioni eseguite dagli account con privilegi. Esaminare regolarmente i log di controllo per attività sospette o modifiche non autorizzate. Per ulteriori informazioni, vedere il controllo di SQL Istanza Gestita.
Usare i ruoli del server per l'accesso a livello di database: sfruttare i ruoli server predefiniti e creare ruoli personalizzati per implementare la sicurezza basata sui ruoli. Assegnare utenti a ruoli anziché concedere singole autorizzazioni per semplificare la gestione e ridurre gli errori. Per altre informazioni, vedere Ruoli a livello di server.
Protezione dei dati
La protezione dei dati protegge le informazioni tramite crittografia, controlli di accesso e classificazione dei dati per impedire la divulgazione, la manomissione o la perdita di informazioni riservate non autorizzate.
Abilitare Transparent Data Encryption (TDE): usare TDE per crittografare i file di database, log e backup inattivi. Prendere in considerazione l'uso di chiavi gestite dal cliente in Azure Key Vault per un maggiore controllo sulle chiavi di crittografia. Per altre informazioni, vedere Transparent Data Encryption.
Implementare Always Encrypted per i dati sensibili: Usare Always Encrypted per proteggere i dati altamente sensibili in uso, a riposo e in transito. In questo modo, anche gli amministratori del database non possono visualizzare i dati sensibili in testo non crittografato. Per altre informazioni, vedere Always Encrypted.
Usare il libro mastro nell'istanza gestita di SQL: abilitare il libro mastro per creare un record non modificabile di modifiche ai dati sensibili, fornendo una registrazione evidente delle manomissioni. Per altre informazioni, vedere Panoramica di Ledger.
Usare Dynamic Data Masking: applicare la maschera dati dinamica per offuscare i dati sensibili per gli utenti senza privilegi mantenendo al tempo stesso la funzionalità dei dati per le applicazioni. Ciò consente di impedire l'accesso non autorizzato alle informazioni riservate. Per altre informazioni, vedere Dynamic Data Masking.
Classificare ed etichettare i dati sensibili: usare l'individuazione e la classificazione dei dati SQL per identificare, classificare ed etichettare i dati sensibili nei database. In questo modo è possibile migliorare la protezione e la creazione di report sulla conformità. Per altre informazioni, vedere Individuazione e classificazione dei dati.
Implementare la sicurezza a livello di colonna: concedere autorizzazioni a livello di colonna per limitare l'accesso ai dati sensibili. Fornire solo le autorizzazioni SELECT, UPDATE o REFERENCES agli utenti che devono accedere in modo specifico alle colonne sensibili. Per altre informazioni, vedere Crittografare una colonna di dati.
Usare Row-Level Security (RLS): implementare la sicurezza a livello di riga per assicurarsi che gli utenti possano accedere solo alle righe di dati pertinenti. Ciò garantisce la sicurezza a livello di applicazione senza richiedere modifiche significative all'applicazione. Per altre informazioni, vedere Row-Level Security.
Backup e ripristino
I processi di backup e ripristino affidabili proteggono i tuoi dati dalla perdita dovuta a guasti, disastri o attacchi, garantendo che tu possa raggiungere i tuoi obiettivi di tempo di ripristino (RTO) e punto di ripristino (RPO).
Verificare la configurazione del backup automatizzato: assicurarsi che i backup automatizzati siano configurati correttamente e che i periodi di conservazione soddisfino i requisiti aziendali. Istanza gestita di SQL di Azure offre backup automatici per impostazione predefinita con periodi di conservazione configurabili fino a 35 giorni. L'archiviazione di backup è indipendente dall'archiviazione dell'istanza e non è limitata alle dimensioni. Per altre informazioni, vedere Backup automatici.
Monitorare l'attività di backup: tenere traccia quando vengono eseguiti backup automatizzati nell'istanza gestita di SQL per assicurarsi che le operazioni di backup vengano completate correttamente. Per altre informazioni, vedere Monitorare l'attività di backup.
Usare l'archiviazione di backup con ridondanza geografica: configurare l'archiviazione con ridondanza geografica per i backup per la protezione da emergenze a livello di area. In questo modo i dati possono essere recuperati anche se l'area primaria non è più disponibile. Per altre informazioni, vedere Ridondanza dell'archiviazione di backup.
Testare le procedure di backup e ripristino: testare regolarmente le procedure di backup e ripristino per assicurarsi che funzionino correttamente e soddisfino gli obiettivi del tempo di ripristino. Verificare che i database ripristinati siano completamente funzionali e che l'integrità dei dati venga mantenuta. Per altre informazioni, vedere Ripristino temporizzato.
Usare le funzionalità di backup e ripristino native: sfruttare il backup nativo e il ripristino da Archiviazione BLOB di Azure per gli scenari di migrazione. È possibile creare backup completi di sola copia e ripristinarli da file di .bak (SQL Server 2005+). Il backup di sola copia non è possibile se il database è crittografato da TDE gestito dal servizio. Per altre ulteriori informazioni, vedere Ripristino nativo dall'URL.
Implementare criteri di conservazione a lungo termine: configurare la conservazione dei backup a lungo termine per i requisiti di conformità che superano il periodo di conservazione predefinito. In questo modo è possibile soddisfare i requisiti normativi per la conservazione dei dati. Per altre informazioni, vedere Conservazione dei backup a lungo termine.
Monitoraggio e rilevamento delle minacce
Il monitoraggio completo e il rilevamento delle minacce consentono di identificare i problemi di sicurezza, rilevare le attività anomale e rispondere rapidamente alle potenziali minacce all'istanza gestita di SQL.
Abilitare Microsoft Defender per SQL: configurare Microsoft Defender per SQL per rilevare tentativi insoliti e potenzialmente dannosi di accedere o sfruttare i database. In questo modo sono disponibili funzionalità avanzate di protezione dalle minacce, tra cui la valutazione delle vulnerabilità e il rilevamento delle minacce. Per altre informazioni, vedere Microsoft Defender per SQL.
Configurare Advanced Threat Protection: configurare Advanced Threat Protection per rilevare minacce specifiche, tra cui potenziali attacchi SQL injection, accesso da posizioni o data center insoliti, accesso da entità non note e credenziali SQL di forza bruta. Configurare le notifiche di posta elettronica e gli account di archiviazione per gli avvisi sulle minacce. Per altre informazioni, vedere Configurare Advanced Threat Protection.
Configurare il controllo SQL: abilitare il controllo completo per monitorare gli eventi del database e registrarli su Azure Storage, Log Analytics o Event Hubs. Vengono forniti log dettagliati per l'analisi della sicurezza e la creazione di report di conformità. Per ulteriori informazioni, vedere Audit di Istanza Gestita di SQL.
Configurare Monitoraggio di Azure: usare Monitoraggio di Azure per raccogliere metriche della piattaforma, log di diagnostica e creare avvisi personalizzati per l'istanza gestita di SQL. Monitorare l'utilizzo delle risorse, le metriche delle prestazioni e gli eventi di sicurezza in una posizione centralizzata. Per altre informazioni, vedere Monitorare Istanza gestita di SQL di Azure.
Creare avvisi delle metriche: configurare avvisi per attività sospette, tentativi di accesso non riusciti, modelli di accesso insoliti del database e soglie di consumo delle risorse. Le metriche di avviso sono disponibili per il livello di istanza gestita di SQL, non per i singoli database. Per altre informazioni, vedere Creare avvisi per Istanza gestita di SQL.
Usare valutazione della vulnerabilità SQL: eseguire valutazioni regolari delle vulnerabilità per identificare errori di configurazione della sicurezza e potenziali vulnerabilità nel database. Correggere tempestivamente i problemi identificati per mantenere un comportamento di sicurezza forte. Per altre informazioni, vedere Valutazione della vulnerabilità SQL.
Monitoraggio con DMV (Dynamic Management Views): usare DMV per monitorare le prestazioni, rilevare query bloccate, colli di bottiglia delle risorse e attività correlate alla sicurezza. Le DMV forniscono informazioni dettagliate sulle operazioni del motore di database e sugli eventi di sicurezza. Per altre informazioni, vedere Monitorare le prestazioni di Istanza gestita di SQL di Azure usando le viste a gestione dinamica.
Implementare il monitoraggio di Query Store: abilitare Query Store per tenere traccia delle prestazioni delle query nel tempo, identificare le regressioni delle prestazioni e monitorare i modelli di esecuzione delle query. Ciò consente di rilevare un comportamento insolito delle query che potrebbe indicare problemi di sicurezza. Per altre informazioni, vedere Monitorare le prestazioni usando Query Store.
Usare eventi estesi per il monitoraggio dettagliato: implementare eventi estesi (XEvent) per un sovraccarico ridotto, il monitoraggio dettagliato delle attività del database, inclusi gli eventi di sicurezza e i problemi di prestazioni. Gli eventi XEvent offrono un monitoraggio più granulare rispetto a SQL Profiler con un impatto minore sulle prestazioni. Per altre informazioni, vedere Eventi estesi.
Configurare Database Watcher (anteprima): è consigliabile usare Database Watcher per il monitoraggio approfondito del carico di lavoro con dashboard centralizzati e informazioni dettagliate sulle prestazioni in Azure SQL Estate. Per altre informazioni, vedere Monitorare i carichi di lavoro SQL di Azure con Database Watcher (anteprima).
Conformità e governance
La gestione della conformità e della governance garantisce che la distribuzione di Istanza gestita di SQL soddisfi i requisiti normativi e i criteri di sicurezza dell'organizzazione tramite controlli e documentazione appropriati.
Applicare Criteri di Azure per la governance: usare Criteri di Azure per applicare gli standard di sicurezza dell'organizzazione e garantire una configurazione coerente in tutte le istanze gestite di SQL. Creare criteri personalizzati per requisiti di conformità specifici. Prendere in considerazione i criteri per applicare l'autenticazione solo Entra-only di Microsoft, la ridondanza dell'archiviazione di backup e i requisiti di residenza dei dati. Per altre informazioni, vedere Criteri di Azure per Istanza gestita di SQL.
Imponi l'autenticazione solo di Microsoft Entra: usare i criteri di Azure per richiedere l'autenticazione solo di Microsoft Entra per le nuove istanze SQL gestite, assicurando che l'autenticazione SQL sia disabilitata per una maggiore sicurezza. In questo modo viene fornita la gestione centralizzata delle identità ed elimina le vulnerabilità di autenticazione basate su password. Per ulteriori informazioni, vedere Uso dei criteri di Azure per applicare l'autenticazione solo Microsoft Entra.
Implementare la strategia di assegnazione di tag alle risorse: applicare tag di Azure coerenti per identificare la proprietà delle risorse, la classificazione dell'ambiente, i centri di costo e i requisiti di conformità. Usare i tag per la governance automatizzata, il rilevamento dei costi e la gestione delle risorse. Per altre informazioni, vedere Sviluppare la strategia di denominazione e assegnazione di tag per le risorse di Azure.
Sfruttare Microsoft Purview per la governance dei dati: eseguire l'integrazione con Microsoft Purview per la classificazione dei dati, il rilevamento della derivazione e la governance unificata dei dati nel patrimonio di dati. Usare le etichette di riservatezza e i criteri di prevenzione della perdita dei dati per proteggere i dati classificati. Per altre informazioni, vedere Microsoft Purview Information Protection.
Documentare le procedure di sicurezza: mantenere una documentazione completa delle procedure di sicurezza, dei piani di risposta agli eventi imprevisti e dei criteri di controllo di accesso. Esaminare e aggiornare regolarmente la documentazione per riflettere le procedure correnti e i requisiti di conformità. Per altre informazioni, vedere Procedure consigliate per la sicurezza.
Eseguire valutazioni regolari della sicurezza: eseguire valutazioni periodiche della sicurezza per valutare il comportamento di sicurezza e identificare le aree per il miglioramento. Includere test di penetrazione e valutazioni delle vulnerabilità nel programma di sicurezza. Documentare le attività di correzione per la creazione di report sulla conformità. Per altre informazioni, vedere Valutazione della vulnerabilità di SQL.
Mantenere i audit trail: assicurarsi che tutte le azioni amministrative e l'accesso ai dati siano registrati correttamente e che i audit trail vengano mantenuti per il periodo di conservazione richiesto. Proteggere i log di controllo da manomissioni o accessi non autorizzati. Configurare la conservazione dei log di controllo in base ai requisiti normativi (SOX, PCI DSS). Per altre informazioni, vedere Panoramica del controllo.
Soddisfare gli standard di conformità alle normative: Istanza gestita di SQL di Azure supporta la conformità con diversi framework normativi, tra cui ISO 27001, PCI DSS, FedRAMP e SOX. Esaminare e implementare controlli specifici per i requisiti del settore. Per altre informazioni, vedere la documentazione sulla conformità di Azure.
Usare i blocchi delle risorse: applicare blocchi delle risorse per impedire l'eliminazione accidentale o la modifica delle risorse dell'istanza gestita di SQL critica. In questo modo è possibile mantenere l'integrità della configurazione e impedire modifiche non autorizzate che potrebbero influire sulla conformità. Per altre informazioni, vedere Blocchi delle risorse.
Monitorare con Azure Advisor: usare Azure Advisor per ricevere raccomandazioni personalizzate per la sicurezza, l'ottimizzazione dei costi, le prestazioni e l'eccellenza operativa. Esaminare e implementare regolarmente le raccomandazioni di Advisor per mantenere le procedure consigliate. Per altre informazioni, vedere Azure Advisor.
Contenuti correlati
Per indicazioni complete sulla sicurezza, vedere Procedure consigliate per la sicurezza di Istanza gestita di SQL di Azure e Panoramica delle funzionalità di sicurezza di Istanza gestita di SQL di Azure.