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.
Azure HorizonDB è un servizio di database compatibile con PostgreSQL completamente gestito e nativo del cloud per carichi di lavoro cruciali.
Questo articolo descrive le procedure consigliate per la sicurezza per la protezione delle distribuzioni di Azure HorizonDB.
Le raccomandazioni sulla sicurezza in questo articolo implementano i principi Zero Trust: "Verificare in modo esplicito", "Usare l'accesso con privilegi minimi" e "Presupporre violazione". Per indicazioni complete su Zero Trust, vedere Zero Trust Guidance Center.
Sicurezza di rete
I controlli di rete consentono di limitare i client che possono raggiungere il cluster Azure HorizonDB prima che si verifichino l'autenticazione e l'autorizzazione del database.
- Usare endpoint privati quando non è necessario il routing pubblico: usare endpoint privati per i carichi di lavoro che possono connettersi privatamente a Azure HorizonDB anziché instradare il traffico del database su percorsi Internet pubblici. Per altre informazioni, vedere Panoramica della rete con accesso pubblico (indirizzi IP consentiti) ed endpoint privati in Azure HorizonDB.
- Limitare l'accesso pubblico agli indirizzi IP approvati: Aggiungere regole del firewall solo per indirizzi IP o intervalli di indirizzi IP di client e applicazioni attendibili. Per impostazione predefinita, non sono consentiti indirizzi IP pubblici. Per altre informazioni, vedere Aggiungere regole del firewall in Azure HorizonDB (anteprima).
-
Limitare l'accesso al servizio Azure generale: evitare la regola del
0.0.0.0firewall a meno che lo scenario non lo richieda, perché consente le connessioni dagli indirizzi IP allocati ai servizi e agli asset Azure, incluse le risorse in altre sottoscrizioni dei clienti. Per altre informazioni, vedere Panoramica della rete con accesso pubblico (indirizzi IP consentiti) ed endpoint privati in Azure HorizonDB. - Usare nomi di dominio completi per le connessioni: usare il nome di dominio completo del cluster Azure HorizonDB nelle stringhe di connessione anziché un indirizzo IP, perché l'indirizzo IP del cluster non è garantito che rimanga statico. Per altre informazioni, vedere Panoramica della rete con accesso pubblico (indirizzi IP consentiti) ed endpoint privati in Azure HorizonDB.
Gestione delle identità e degli accessi
Usa Azure RBAC per la gestione delle risorse di Azure e i ruoli di PostgreSQL per l'autorizzazione a livello di database.
- Assegna le autorizzazioni RBAC di Azure secondo il principio del privilegio minimo: concedi agli utenti e ai processi automatizzati solo le autorizzazioni di Azure necessarie per creare, visualizzare, modificare o eliminare le risorse Azure HorizonDB. Per ulteriori informazioni, vedere controllo degli accessi in base ai ruoli di Azure (Azure RBAC).
- Creare ruoli di database per l'accesso alle applicazioni: usare ruoli PostgreSQL con autorizzazioni specifiche anziché usare il ruolo di amministratore per le applicazioni. Per altre informazioni, vedere Gestione degli accessi in Azure HorizonDB (anteprima).
- Gestisci gli utenti del database locale separatamente da Azure RBAC: crea utenti del database e concedi privilegi per database, schemi e tabelle in base ai requisiti del carico di lavoro di ogni utente. Per altre informazioni, vedere Gestire gli utenti in Azure HorizonDB (anteprima).
-
Richiedi l'autenticazione tramite password SCRAM-SHA-256: configura
password_encryptione i metodi di autenticazione supportati per utilizzare SCRAM-SHA-256 e aggiorna le password degli utenti prima di imporre l'autenticazione basata esclusivamente su SCRAM. Per altre informazioni, vedere Autenticazione SCRAM in Azure HorizonDB (anteprima). - Usare la sicurezza a livello di riga per l'accesso a livello di tenant o di riga: definire i criteri di sicurezza a livello di riga postgreSQL quando l'autorizzazione dipende dalla proprietà delle righe, dai limiti del tenant o dall'accesso ai dati classificati. Per altre informazioni, vedere Gestione degli accessi in Azure HorizonDB (anteprima).
Protezione dei dati
Azure HorizonDB crittografa sempre i dati gestiti inattivi usando chiavi gestite dal servizio. Le chiavi gestite dal cliente non sono disponibili in anteprima, quindi i controlli di protezione dei dati configurabili sono incentrati su TLS, sulla protezione lato client e sui modelli di accesso ai dati PostgreSQL. Per ulteriori informazioni, vedere Limitazioni di Azure HorizonDB e Crittografia dei dati inattivi in Azure HorizonDB (anteprima).
-
Verificare i certificati TLS per le connessioni client: configurare i client PostgreSQL da usare
sslmode=verify-fullosslmode=verify-cain modo che i client convalidino il certificato del cluster Azure HorizonDB. Per altre informazioni, vedi Connettere i client al database in Azure HorizonDB tramite la sicurezza TLS (Preview). -
Richiedi TLS 1.3 quando i client lo supportano: impostare il
ssl_min_protocol_versionparametro suTLSv1.3per i carichi di lavoro che non necessitano della compatibilità TLS 1.2. Per altre informazioni, vedere Transport Layer Security (TLS) in Azure HorizonDB (anteprima). - Mantenere i certificati radice attendibili: mantenere le autorità di certificazione radice necessarie Azure HorizonDB negli archivi attendibili del client ed evitare di considerare attendibili le autorità di certificazione intermedie o i singoli certificati del cluster. Per altre informazioni, vedere Transport Layer Security (TLS) in Azure HorizonDB (anteprima).
- Crittografare i valori sensibili prima di archiviarli: per i dati che richiedono la segretezza controllata dall'applicazione oltre alla crittografia dei dati inattivi gestiti dal servizio, crittografare i valori nell'applicazione prima di scriverli in Azure HorizonDB e gestire le chiavi di crittografia separatamente dagli amministratori di database. Per maggiori informazioni, consultare la sezione Panoramica di crittografia di Azure.
- Utilizzare il mascheramento dei dati per un'esposizione controllata dei dati: utilizzare le funzionalità supportate dell'anonimizzatore PostgreSQL per scenari quali dump anonimi, mascheramento statico, mascheramento dinamico, viste di mascheramento e wrapper di dati per il mascheramento quando è necessario ridurre l'esposizione dei dati sensibili. Per altre informazioni, vedere Opzioni personalizzate di HorizonDB.
Backup e ripristino
I controlli di backup e ripristino consentono di eseguire il ripristino da modifiche accidentali ai dati, operazioni distruttive ed eventi di disponibilità.
- Convalidare i requisiti di ripristino rispetto ai limiti di backup in anteprima: Azure HorizonDB mantiene attualmente i backup automatizzati per sette giorni e la conservazione dei backup configurabili da 1 a 35 giorni non è ancora disponibile. Per altre informazioni, vedere Backups in Azure HorizonDB (anteprima).
- Ripristino in un punto personalizzato dopo modifiche accidentali: usare il ripristino temporizzato per creare un nuovo cluster da un punto di ripristino selezionato all'interno della finestra di conservazione corrente. Per altre informazioni, vedere Ripristino per Azure HorizonDB (anteprima).
- Configurazione delle repliche per gli obiettivi di disponibilità: usare almeno due repliche di elaborazione per la resilienza a livello di zona e repliche di lettura nella stessa area geografica per scaricare i carichi di lavoro di lettura e fornire destinazioni per il failover. Per altre informazioni, vedere Panoramica della continuità aziendale in Azure HorizonDB (anteprima).
- Proteggere i cluster dall'eliminazione accidentale: applicare blocchi di risorse Azure ai cluster HorizonDB critici Azure perché i server eliminati non possono attualmente essere ripristinati. Per altre informazioni, vedere Proteggere dall'eliminazione accidentale usando i blocchi delle risorse in Azure HorizonDB (anteprima).