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. Per gli scenari tra tenant, ospita la chiave di crittografia in un Azure Key Vault o in un'istanza di Azure Managed HSM in un tenant di Microsoft Entra diverso rispetto al server flessibile e il server usa tale chiave per la crittografia dei dati inattivi, utile quando la proprietà della chiave deve rimanere separata dalle operazioni del servizio. 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