Come Configurare la Traccia di Audit del Database per MySQL su MS Azure
Oltre ad altre funzionalità, DataSunrise offre uno strumento di audit dedicato, la Traccia di Audit del Database, basato sull’uso di strumenti di audit nativi del database e meccanismi. In questo articolo spieghiamo come configurare DataSunrise e il proprio database MySQL ospitato su MS Azure per effettuare la Traccia di Audit del Database.
Nota che questa guida descrive tutte le azioni necessarie affinché la Traccia di Audit del Database funzioni sin dall’inizio. Supponiamo che non si disponga già di un database né delle risorse Azure corrispondenti. Per seguire i passaggi di questa guida è necessario avere solo DataSunrise installato sulla propria macchina e accesso al portale di Microsoft Azure.
Accesso al Portale di Microsoft Azure
Prima di tutto, accedi al portale di Microsoft Azure e segui i passaggi seguenti. Se non si è familiarizzati con l’interfaccia di Azure, potrebbe essere utile utilizzare il campo di ricerca situato in alto a schermo (“Cerca risorse, servizi e documenti”).
Registrazione di un’Applicazione Azure
DataSunrise utilizzerà questa applicazione per scaricare i file di log del proprio MySQL dal container Blob associato al proprio account di Storage. Segui i passaggi seguenti:
1. Naviga a Registrazioni app -> Nuova registrazione e registra la tua applicazione. Nota che URI di reindirizzamento (opzionale) non è necessario.
2. Concedi alla tua App i permessi per accedere ai container Blob.
Alla pagina API permissions, fai clic su Aggiungi un permesso
Nella scheda Microsoft APIs, seleziona Azure Storage quindi seleziona Delegated permissions e user_impersonation:
Fai clic su Aggiungi permessi per applicare le modifiche
3. Crea un Segreto per la tua App in modo che Azure possa identificare la tua App.
- Naviga a Certificati e segreti
- Nella sezione Client secrets, fai clic su Nuovo client secret per creare un nuovo segreto. SALVA IL VALORE DEL SEGRETO DA QUALCHE PARTE: ti servirà successivamente.
Creazione di un Gruppo di Risorse
Un Gruppo di Risorse è necessario per contenere le entità (risorse) associate al proprio ambiente di database.
Naviga 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 proprio MySQL. DataSunrise otterrà questi log dal proprio account di Storage.
1. Naviga a Account di Storage e crea un Account
2. Seleziona il Gruppo di Risorse nel quale inserire l’Account di Storage e assegna un nome all’Account di Storage. Lascia tutte le altre impostazioni di default
3. Naviga a Controllo Accessi (IAM) e fai clic su Aggiungi -> Aggiungi assegnazione di ruolo
Seleziona Lettore: Successivo. Fai clic su +Seleziona membri e seleziona la tua App registrata. Revisiona e assegna. Questo è necessario affinché la tua App possa accedere ai file di log contenuti nei container Blob del tuo account di Storage:
4. Fai clic nuovamente su Aggiungi assegnazione di ruolo e seleziona Storage Blob Data Reader.
5. Fai clic su +Seleziona Membri e seleziona la tua App registrata. Revisiona e assegna
Creazione di un Server MySQL Database
Crea un server MySQL database se non ne hai uno. Altrimenti, modifica le impostazioni del tuo database secondo i passaggi seguenti:
1. Naviga a Azure Database for MySQL servers e crea un nuovo server: naviga a Crea -> Server flessibile -> Crea
2. Fornisci tutti i dettagli richiesti dal server
3. Nella scheda Rete, seleziona Accesso pubblico… e aggiungi le regole del firewall richieste. Completa il deployment.
4. Naviga a il tuo database MySQL -> Impostazioni -> Parametri Server e abilita audit_log_enabled per abilitare l’audit nativo nel tuo database. Seleziona i tipi di eventi da registrare configurando audit_log_events. Aggiungi utenti MySQL da includere o escludere dall’audit configurando rispettivamente audit_log_exclude_users e audit_log_include_users.
Salva le impostazioni.
5. Configura il tuo database per memorizzare i log in un account di Storage associato.
Naviga a Monitoraggio -> Impostazioni diagnostiche -> Aggiungi impostazione diagnostica
Seleziona MySqlAuditLogs e Archivia in un account di storage e seleziona il proprio Account di Storage:
Creazione di un’istanza MySQL in DataSunrise
Apri la Console Web di DataSunrise e naviga a Configurazione -> Database per creare un’Istanza del database MySQL (consulta la sottosezione “Creazione di un Profilo del Database di Destinazione” della Guida all’Utente di DataSunrise per i dettagli).
Sarai tenuto a fornire le seguenti informazioni:
1. Seleziona Trailing the DB Audit Logs nelle impostazioni dell’Istanza. Compila tutti i campi richiesti.
2. Copia ClientID e TenantID dalla tua App di Azure per consentire a DataSunrise di utilizzare l’App per scaricare i file di log del proprio MySQL:
3. Inserisci il Client Secret salvato in precedenza (consulta il passaggio 3 della Registrazione di un’Applicazione Azure).
4. Inserisci il Nome del Container Blob. Puoi trovare il nome del tuo container Blob in Storage Accounts -> il tuo account -> Containers delle impostazioni di Azure:
Risultati di Audit
Crea alcune Regole di Audit per il proprio database MySQL (consulta la sottosezione “Creazione di una Regola di Data Audit” della Guida per gli Utenti) ed esegui alcune query sul database MySQL. Naviga a Audit -> Tracce transazionali per i risultati dell’audit: