Come Configurare la Traccia di Audit di Database per MS Azure PostgreSQL
Insieme ad altre funzionalità, DataSunrise presenta uno strumento di auditing dedicato, la Traccia di Audit del Database, basata sull’uso di strumenti e meccanismi di auditing nativi del database. In questo articolo spiegheremo come configurare DataSunrise e il tuo database PostgreSQL ospitato su MS Azure per fare la Traccia di Audit del Database.
Si noti che questa guida descrive tutte le azioni necessarie affinché la Traccia di Audit del Database funzioni fin dall’inizio. Supponiamo che tu non abbia né un database né le risorse corrispondenti su Azure. Per seguire i passaggi di questa guida, hai bisogno solo di DataSunrise installato sul tuo computer e accesso al portale Azure.
Accedi al Portale Azure
Accedi al portale Azure. Se non hai familiarità con l’interfaccia di Azure, potresti trovare utile usare il campo di ricerca situato in alto dello schermo (“Cerca risorse, servizi e documenti”).
Registrazione di un’Applicazione Azure
DataSunrise utilizzerà questa applicazione per scaricare i file di log del tuo PostgreSQL dal contenitore Blob associato al tuo account di Storage. Segui questi passaggi:
1. Vai a Registrazioni dell’App -> Nuova registrazione e registra la tua applicazione. Nota che URI di reindirizzamento (opzionale) non è richiesto.
2. Concedi alla tua App le autorizzazioni per accedere ai contenitori Blob.
Nella pagina Autorizzazioni API, fai clic su Aggiungi un’autorizzazione
Nella scheda API Microsoft, seleziona Azure Storage poi seleziona Autorizzazioni delegate e user_impersonation:
Fai clic su Aggiungi autorizzazioni per applicare le modifiche
3. Crea un Segreto per la tua App, affinché Azure possa identificare la tua App.
- Vai a Certificati e segreti
- In Segreti del client, fai clic su Nuovo segreto del client per creare un nuovo segreto. SALVA IL VALORE DEL SEGRETO DA QUALCHE PARTE: ne avrai bisogno più tardi.
Creazione di un Gruppo di Risorse
Un Gruppo di Risorse è necessario per contenere entità (risorse) associate all’ambiente del tuo database.
Vai a Gruppi di Risorse e crea un Gruppo di Risorse.
Creazione di un Account di Storage
L’account di Storage conterrà i file di log del tuo PostgreSQL. DataSunrise otterrà questi log dal tuo account di Storage.
1. Vai a Account di Storage e crea un Account
2. Seleziona il tuo Gruppo di Risorse nelle impostazioni dell’account di Storage e nomina l’account di Storage. Lascia tutte le altre impostazioni predefinite
3. Vai a Controllo Accesso (IAM) e fai clic su Aggiungi -> Aggiungi assegnazione ruolo
Seleziona Lettore: Successivo. Fai clic su +Seleziona membri e seleziona la tua App registrata. Rivedi e assegna. Questo è necessario affinché la tua App possa accedere ai file di log contenuti nei contenitori Blob del tuo account di Storage:
4. Fai clic su Aggiungi assegnazione ruolo di nuovo e seleziona Lettore Dati di Blob di Storage.
5. Fai clic su +Seleziona Membri e seleziona la tua App registrata. Rivedi e assegna
Creazione di un Server Database PostgreSQL
Crea un server database PostgreSQL se non ne hai uno. Altrimenti, modifica le impostazioni del tuo database secondo i passaggi seguenti.
1. Vai a Azure Database per server PostgreSQL e crea un nuovo server: vai a Crea -> Server flessibile -> Crea
2. Fornisci tutti i dettagli del server richiesti
3. Nella scheda Reti, seleziona Accesso pubblico… e aggiungi le regole del firewall richieste. Completa la distribuzione.
4. Vai a il tuo database PostgreSQL -> Impostazioni -> Parametri del server e imposta i seguenti parametri secondo la tabella sottostante:
Impostazione | Valore richiesto |
---|---|
log_checkpoints | OFF |
log_destination | CSVLOG |
pgaudit.log | ALL |
shared_preload_libraries | PG_STAT_STATEMENTS, PGAUDIT |
log_line_prefix | %t-%c-u”%u”u- |
Salva le impostazioni
5. Configura il tuo database per memorizzare i log in un account di Storage associato.
Vai a Monitoraggio -> Impostazioni diagnostiche -> Aggiungi impostazione diagnostica
Seleziona sia Log del server PostgreSQL sia Dati delle sessioni PostgreSQL. Poi, seleziona Archivia su un account di Storage e seleziona il tuo Account di Storage
Creazione di un’Istanza PostgreSQL in DataSunrise
Apri la Console Web di DataSunrise e vai a Configurazione -> Database per creare un’Istanza di Database PostgreSQL (consulta la sezione “Creazione del Profilo del Database di Destinazione” nella Guida per l’Utente di DataSunrise per ulteriori dettagli):
Dovrai fornire le seguenti informazioni:
1. Seleziona Tracciare i Registri di Audit del Database nelle impostazioni dell’Istanza. Compila tutti i campi richiesti.
2. Copia ClientID e TenantID dalla tua App di Azure per permettere a DataSunrise di usare l’App per scaricare i file di log del tuo PostgreSQL
3. Inserisci il Segreto del Client salvato prima (consulta il passo 3 di Registrazione di un’Applicazione Azure).
4. Inserisci il Nome del Contenitore Blob. Puoi trovare il nome del tuo contenitore Blob nelle Impostazioni di Azure -> Account di Storage -> il tuo account -> Contenitori:
Risultati dell’Audit
Crea alcune Regole di Audit per il tuo database PostgreSQL (consulta la sezione “Creazione di una Regola di Audit dei Dati” della Guida per l’Utente) ed esegui alcune query sul tuo database PostgreSQL e vai a Audit -> Tracce transazionali per i risultati dell’audit: