Proteggi il tuo server flessibile Database di Azure per PostgreSQL

Database di Azure per PostgreSQL è un servizio di database completamente gestito che offre funzionalità predefinite di disponibilità elevata, backup automatizzati e scalabilità. La protezione delle distribuzioni di database PostgreSQL consente di proteggere i dati sensibili e soddisfare i requisiti di conformità.

Questo articolo illustra come proteggere la distribuzione del server flessibile Database di Azure per PostgreSQL.

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 della rete

I controlli di sicurezza di rete consentono di ridurre l'esposizione pubblica e integrare Database di Azure per PostgreSQL server flessibile in un'architettura di rete virtuale segmentata.

Gestione delle identità e degli accessi

I controlli di identità e accesso consentono di centralizzare l'autenticazione, ridurre l'esposizione delle credenziali e applicare privilegi minimi per la gestione Azure e l'accesso al database PostgreSQL.

  • Usare l'autenticazione Microsoft Entra: preferire l'autenticazione Microsoft Entra per il server flessibile PostgreSQL per centralizzare i controlli delle identità e ridurre la dipendenza dalle password del database locale. Per altre informazioni, vedi l'autenticazione di Microsoft Entra con Database di Azure per PostgreSQL.

  • Gestire le identità di Microsoft Entra: assegnare e verificare amministratori, utenti e gruppi di Microsoft Entra per PostgreSQL Flexible Server in modo che l'accesso al database segua il principio del privilegio minimo. Per altre informazioni, vedere Gestire i ruoli Microsoft Entra in Database di Azure per PostgreSQL.

  • Usare le identità gestite per l'accesso alle applicazioni: autenticare le applicazioni ospitate Azure nel server flessibile PostgreSQL con identità gestite anziché archiviare le credenziali nel codice o nella configurazione dell'applicazione. Per altre informazioni, vedere Identità gestite in Database di Azure per PostgreSQL.

  • Applicare l'accesso condizionale per gli amministratori di PostgreSQL: applicare criteri di accesso condizionale, ad esempio l'autenticazione a più fattori e i requisiti dei dispositivi conformi alle identità che amministrano i server flessibili PostgreSQL e le risorse Azure correlate. Per maggiori informazioni, vedi Common Conditional Access policy: Richiedere MFA per la gestione Azure.

  • Usare SCRAM per l'autenticazione locale: se sono necessari utenti PostgreSQL locali, usare l'autenticazione SCRAM e procedure password complesse per ridurre il rischio di compromissione delle password. Per altre informazioni, vedi autenticazione SCRAM in Azure Database per PostgreSQL.

  • Gestire i ruoli del database locale: usare i ruoli e le autorizzazioni di PostgreSQL per limitare l'accesso a livello di database agli oggetti e alle operazioni necessarie a ogni utente. Per altre informazioni, vedere Gestire gli utenti in Database di Azure per PostgreSQL.

  • Implementare il controllo degli accessi in base al ruolo di Azure (RBAC): assegnare i ruoli RBAC di Azure solo alle identità che devono creare, configurare, monitorare o eliminare le risorse del server flessibile di PostgreSQL. Per altre informazioni, vedere Azure controllo degli accessi in base al ruolo.

Protezione dei dati

Database di Azure per PostgreSQL crittografa i server primari, le repliche, i dati di ripristino temporizzato e i backup inattivi usando chiavi gestite dal servizio. Utilizzare i seguenti controlli configurabili dal cliente quando il carico di lavoro richiede una governance della crittografia più rigorosa o protezioni relative all'uso dei dati.

  • Verificare le connessioni TLS: configurare i client PostgreSQL per convalidare la catena di certificati del server e il nome host usando sslmode=verify-fullo sslmode=verify-ca dove verify-full non è possibile. Per altre informazioni, vedere Transport Layer Security in Database di Azure per PostgreSQL.

  • Mantenere attendibili i certificati radice: conservare le autorità di certificazione radice di Azure negli archivi attendibili dei client ed evitare di considerare attendibili i certificati intermedi o i singoli certificati server, in modo che la rotazione dei certificati non interrompa la connettività. Per altre informazioni, vedere Transport Layer Security in Database di Azure per PostgreSQL.

  • Richiedi TLS 1.3, se supportato: impostare il parametro del ssl_min_protocol_version server su TLSv1.3 per i client che supportano la versione più recente del protocollo sicuro e non impostare ssl_max_protocol_version. Per altre informazioni, vedere Transport Layer Security in Database di Azure per PostgreSQL.

  • Usare le chiavi gestite dal cliente per la governance della crittografia: configurare chiavi gestite dal cliente in Azure Key Vault o Azure modulo di protezione hardware gestito quando è necessario il controllo o la separazione dei compiti del ciclo di vita delle chiavi. Usare chiavi gestite dal cliente tra tenant solo per scenari di anteprima che soddisfano i requisiti documentati. Per altre informazioni, vedere Crittografia dei dati archiviati in Database di Azure per PostgreSQL e Configurare la crittografia dei dati in Database di Azure per PostgreSQL.

  • Configurare la rotazione automatica delle chiavi: se si usano chiavi gestite dal cliente, abilitare l'autorotazione delle chiavi in Azure Key Vault o Azure modulo di protezione hardware gestito e configurare il server flessibile PostgreSQL per l'uso degli aggiornamenti automatici delle versioni delle chiavi. Per altre informazioni, vedere Configurare la crittografia della chiave gestita dal cliente.

  • Usare il confidential computing per carichi di lavoro estremamente sensibili: distribuire un server flessibile PostgreSQL negli SKU di confidential computing supportati nelle aree supportate quando è necessaria la protezione basata su hardware per i dati in uso. Per altre informazioni, vedere Azure confidential computing in Database di Azure per PostgreSQL.

  • Applicare l'anonimizzazione dei dati per i dati PostgreSQL sensibili: usare l'estensione anon quando sono necessari strumenti di anonimizzazione dei dati a livello di database e configurare le librerie di precaricamento condiviso necessarie prima dell'uso. Per ulteriori informazioni, vedi Elenco delle estensioni e dei moduli per nome in Server flessibile di Azure Database per PostgreSQL.

Registrazione e monitoraggio

I controlli di registrazione e monitoraggio consentono di rilevare attività sospette, analizzare gli eventi imprevisti e mantenere disponibili le prove di controllo postgreSQL per i flussi di lavoro operativi e di conformità.

Conformità e governance

I controlli di conformità e governance consentono di applicare configurazioni coerenti, eseguire il mapping delle distribuzioni PostgreSQL ai requisiti normativi e mantenere la proprietà della sicurezza visibile su larga scala.

  • Applicare la configurazione di sicurezza di PostgreSQL con Criteri di Azure: assegnare criteri predefiniti per i controlli server flessibili postgreSQL, ad esempio endpoint privati, restrizioni di accesso pubblico, registrazione diagnostica, TLS, chiavi gestite dal cliente e backup con ridondanza geografica. Per altre informazioni, vedi i criteri predefiniti di Criteri di Azure per Database di Azure per PostgreSQL.

  • Esamina le offerte di conformità per PostgreSQL: associa il server flessibile di Database di Azure per PostgreSQL alle certificazioni e attestazioni di conformità pertinenti prima di elaborare dati soggetti a regolamentazione. Per ulteriori informazioni, vedi Compliance in Database di Azure per PostgreSQL.

  • Applica blocchi delle risorse ai server di produzione: usa i blocchi di gestione nei server PostgreSQL flessibili di produzione e nelle risorse dipendenti per ridurre il rischio di eliminazione accidentale o di modifiche alla configurazione che causano interruzioni. Per altre informazioni, vedere Proteggere le risorse Azure con un blocco.

  • Aggiungere tag alle risorse PostgreSQL per la governance: applica tag quali carico di lavoro, ambiente, classificazione dei dati, responsabile e ambito di conformità ai server flessibili PostgreSQL e alle risorse correlate, in modo che i flussi di lavoro di criteri, inventario e gestione dei costi possano identificare i database protetti. Per altre informazioni, vedere Usare i tag per organizzare le risorse di Azure.

Backup e ripristino

I controlli di backup e ripristino consentono di ripristinare i dati PostgreSQL dopo l'eliminazione accidentale, il danneggiamento o l'interruzione a livello di area durante il raggiungimento degli obiettivi di ripristino del carico di lavoro.

Passaggi successivi