Come Integrare DataSunrise con AWS Database Activity Streams per Ottenere i Risultati di Audit per AWS Aurora PostgreSQL
Panoramica dei metodi di audit delle attività del database
Oggi, l’audit del database diventa sempre più importante a causa dei numerosi atti normativi e regolamenti dedicati alla protezione dei dati sensibili, come GDPR, KVKK, etc.
Dal punto di vista tecnico, esistono molteplici metodi di audit del database, i più popolari sono:
- Proxy del traffico del database (proxying);
- Ascolto passivo del traffico del database;
- Lettura dei log raccolti dagli strumenti nativi di audit del database;
- Integrazione con servizi di audit dedicati come AWS DAS.
Ogni approccio possiede i propri pro e contro, limitazioni e opportunità. Gli utenti Amazon, a loro volta, potrebbero trovare gli ultimi due metodi i più adatti alle proprie esigenze. Questi metodi consentono agli utenti AWS di notificare il personale di sicurezza per eventi specifici del database, creare report sulle attività nel cluster Aurora PG, ecc.
Gli AWS Database Activity Streams (DAS) forniscono un flusso praticamente in tempo reale delle attività nel suo cluster DB e offrono i seguenti vantaggi rispetto ai meccanismi di logging nativi del database (funzionalità di trailing dei log di audit DB di DataSunrise):
- Il processo di configurazione dei DAS è molto più semplice rispetto alla configurazione del trailing “regolare” basato su file di log. Non è necessario spazio aggiuntivo per la memorizzazione dei log;
- Maggiore protezione contro le minacce interne: gli amministratori del database non hanno accesso alla raccolta, trasmissione, memorizzazione e elaborazione dei flussi di attività del database;
- I DAS offrono maggiore flessibilità rispetto al trailing “regolare” grazie alla disponibilità delle modalità Synchronous e Asynchronous.
Il principale svantaggio dei DAS è l’incompatibilità con alcune classi di istanze RDS e versioni di Amazon Aurora.
Il diagramma seguente mostra un cluster Aurora PG integrato con DataSunrise:

Qui, un cluster Aurora PG con DAS abilitato. Aurora invia i dati relativi alle attività del database ad AWS Kinesis. I flussi di attività sono crittografati utilizzando una chiave di crittografia AWS KMS. Kinesis, a sua volta, inoltra i flussi di attività del database a DataSunrise, utilizzato come strumento di monitoraggio del database. DataSunrise elabora i flussi e salva i risultati dell’audit nel suo archivio Audit. Successivamente, gli eventi del database acquisiti vengono visualizzati nella sezione Transactional Trails della Web Console di DataSunrise.
Prerequisiti per il Cluster Aurora PG
Prima di configurare i DAS, assicurarsi che il proprio ambiente AWS sia conforme ai requisiti elencati di seguito.
Versioni supportate del database Aurora PostgreSQL:
- Tutte le versioni 13
- Tutte le versioni 12
- Versione 11.6 e successive della serie 11
- Versione 10.11 e successive della serie 10
Classi di istanze AWS RDS supportate:
- db.r6g
- db.r5
- db.r4
- db.x2g
I flussi di attività del database sono supportati in tutte le regioni AWS ad eccezione delle seguenti:
- China (Beijing) Region, cn-north-1
- China (Ningxia) Region, cn-northwest-1
- AWS GovCloud (US-East), us-gov-east-1
- AWS GovCloud (US-West), us-gov-west-1
Varie:
- I DAS richiedono l’uso dell’AWS Key Management Service (AWS KMS). L’AWS KMS è necessario perché i flussi di attività sono sempre crittografati;
- I flussi di attività del database richiedono l’uso di Amazon Kinesis.
Per saperne di più: AWS Aurora DB Activity Streams – Requisiti della Versione
Creazione di una Chiave AWS KMS
Poiché i flussi di attività sono sempre crittografati, è necessario utilizzare una chiave di crittografia. Aurora utilizza la chiave KMS per crittografare la chiave che, a sua volta, cripta le attività del database. Se non possiede una chiave KMS, provveda a crearla.
Navigare al Key Management System (KMS) di AWS e fare clic su Crea una chiave. Impostare le seguenti opzioni per la propria chiave:
- Tipo di chiave: Simmetrica
- Origine del materiale chiave: KMS
- Regionalità: Chiave a singola regione
- Criterio della chiave: predefinito
Per saperne di più: AWS KMS – Creazione delle Chiavi
Avvio dei DAS per il Tuo Cluster Aurora PG
Dopo aver preparato il proprio ambiente RDS Aurora PG, è possibile avviare i flussi di attività del database.
Navigare al Servizio di Database Relazionale Gestito (RDS), selezionare Databases, scegliere il cluster DB per il quale abilitare un flusso di attività, e fare clic su Azioni -> Avvia flusso di attività del database:

Configurare i DAS nel seguente modo:
- Chiave principale: la propria chiave KMS
- Modalità del flusso di attività del database: Scegliere tra Asynchronous o Synchronous. Raccomandiamo l’uso della modalità Synchronous in quanto favorisce l’accuratezza del flusso rispetto alle prestazioni del database. Le differenze tra queste due modalità sono disponibili qui.
- Applica immediatamente: specifica se applicare le modifiche immediatamente o programmarle.

- È possibile accedere al flusso nella sezione Configurazione delle impostazioni del cluster (Flusso di attività del database -> Kinesis stream):
Per saperne di più: AWS Aurora DB Activity Streams – Abilitazione
Configurazione dell’Audit Basato sui DAS in DataSunrise
Dopo aver avviato i DAS per il cluster Aurora, è possibile procedere con la configurazione di DataSunrise per elaborare i flussi di attività del database.
Per consentire a DataSunrise di lavorare con i DAS, l’utente IAM necessita dell’accesso ad alcune funzionalità di Kinesis, KMS e RDS. Per concedere le autorizzazioni necessarie, navigare in Identity and Access Management (IAM) -> Users e allegare la seguente policy all’utente:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"Kinesis:DescribeStreamSummary",
"Kinesis:ListShards",
"Kinesis:GetShardIterator",
"Kinesis:GetRecords",
"Kinesis:DescribeStreamSummary",
"KMS:Decrypt",
"RDS:DescribeDBClusters"
],
"Resource": ["<ARN of your Kinesis stream>","<ARN of your KMS key>","<ARN of your RDS DB>"]
}
]
}
Creare una nuova istanza di database Aurora PG o utilizzare una esistente. Aprire la Web Console di DataSunrise e navigare in Configuration -> Databases.
- Fornire i dettagli di connessione per il database Aurora PG. Specificare l’endpoint del cluster Aurora PG nel campo Host;
- Nella sezione Capture Mode della pagina dell’istanza, selezionare Trailing the DB Audit Logs dal menu a discesa Mode;
- Nel menu a discesa Format Type, selezionare Database activity stream;
- Compilare tutti i campi richiesti. Salvare l’istanza.
Creare una regola di audit dei dati per la propria istanza Aurora PG: navigare in Audit -> Rules e creare una Regola.
Per i risultati dell’audit, navigare in Audit -> Transactional Trails. Nota che i risultati potrebbero apparire con un ritardo di circa 5-10 minuti.
È inoltre possibile regolare l’audit basato sui DAS in DataSunrise modificando i seguenti parametri (System Settings -> Additional Parameters):
- TrailDASIntervalTime: periodo di tempo per ottenere un elenco di eventi (ad es. per gli ultimi 5 minuti a partire dall’ultimo record);
- TrailDASOffsetTime: ritardo temporale per l’ottenimento degli eventi (richiesto per la sincronizzazione, in secondi).