Audit di oggetti di database - Amazon Relational Database Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Audit di oggetti di database

Con la pgAudit configurazione sul e configurata in base alle tue esigenze, nel registro Postgre vengono acquisite informazioni più dettagliate. SQL Ad esempio, mentre la configurazione di SQL registrazione predefinita di Postgre identifica la data e l'ora in cui è stata apportata una modifica in una tabella del database, con l'pgAuditestensione la voce di registro può includere lo schema, l'utente che ha apportato la modifica e altri dettagli a seconda di come sono configurati i parametri dell'estensione. È possibile configurare l'audit per tenere traccia delle modifiche nei modi seguenti.

  • Per ogni sessione, per utente. Per il livello di sessione, è possibile acquisire il testo del comando completo.

  • Per ogni oggetto, per utente e per database.

La funzionalità di audit degli oggetti viene attivata quando il ruolo rds_pgaudit viene creato nel sistema e quindi aggiunto al parametro pgaudit.role nel gruppo di parametri personalizzati. Per impostazione predefinita, l'impostazione del parametro pgaudit.role viene annullata e l'unico valore consentito è rds_pgaudit. Nelle fasi seguenti si presume che pgaudit sia stato inizializzato e che l'estensione pgaudit sia stata creata seguendo la procedura in Configurazione dell' pgAudit estensione.

Immagine del file di registro di Postgre SQL dopo la configurazione. pgAudit

Come mostrato in questo esempio, la riga "LOG:AUDIT:SESSION" fornisce informazioni sulla tabella e sul suo schema, tra gli altri dettagli.

Per configurare l'audit degli oggetti
  1. Utilizzalo psql per connetterti all' DB. RDSper l'istanza DB di SQL Postgre.

    psql --host=your-instance-name.aws-region.rds.amazonaws.com --port=5432 --username=postgrespostgres --password --dbname=labdb
  2. Crea un ruolo del database denominato rds_pgaudit utilizzando il comando seguente.

    labdb=> CREATE ROLE rds_pgaudit; CREATE ROLE labdb=>
  3. Chiudi la sessione psql.

    labdb=> \q

    Nei prossimi passaggi, usa il AWS CLI per modificare i parametri del registro di controllo nel gruppo di parametri personalizzato.

  4. Utilizzate quanto segue AWS CLI comando su cui impostare il pgaudit.role parametrords_pgaudit. Per impostazione predefinita, questo parametro è vuoto e rds_pgaudit è l'unico valore consentito.

    aws rds modify-db-parameter-group \ --db-parameter-group-name custom-param-group-name \ --parameters "ParameterName=pgaudit.role,ParameterValue=rds_pgaudit,ApplyMethod=pending-reboot" \ --region aws-region
  5. Usa quanto segue AWS CLI comando per riavviare l' in modo che le modifiche ai parametri abbiano effetto.

    aws rds reboot-db-instance \ --db-instance-identifier your-instance \ --region aws-region
  6. Esegui il comando seguente per verificare che pgaudit.role sia impostato su rds_pgaudit.

    SHOW pgaudit.role; pgaudit.role ------------------ rds_pgaudit

Per testare la pgAudit registrazione, puoi eseguire diversi comandi di esempio che desideri controllare. Ad esempio, si potrebbero eseguire i comandi seguenti.

CREATE TABLE t1 (id int); GRANT SELECT ON t1 TO rds_pgaudit; SELECT * FROM t1; id ---- (0 rows)

I registri del database devono contenere una voce simile alla seguente:

... 2017-06-12 19:09:49 UTC:...:rds_test@postgres:[11701]:LOG: AUDIT: OBJECT,1,1,READ,SELECT,TABLE,public.t1,select * from t1; ...

Per informazioni sulla visualizzazione dei registri, consulta Monitoraggio dei file di log di RDSAmazon.

Per ulteriori informazioni sull' pgAudit estensione, consulta pgAuditsu GitHub.