

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à.

# Configurazione dell'estensione pgAudit
<a name="Appendix.PostgreSQL.CommonDBATasks.pgaudit.basic-setup"></a>

Per configurare l'estensione pgAudit sul cluster database Aurora PostgreSQL, aggiungi innanzitutto pgAudit alle librerie condivise nel gruppo di parametri cluster database personalizzato per il cluster database Aurora PostgreSQL. Per informazioni sulla creazione di un gruppo di parametri del·cluster database, consulta [Gruppi di parametri per Amazon Aurora](USER_WorkingWithParamGroups.md).  Quindi, installa l'estensione pgAudit. Infine, specifica i database e gli oggetti di cui eseguire l'audit. Le procedure in questa sezione mostrano come fare. Puoi utilizzare la Console di gestione AWS o l'AWS CLI. 

Per eseguire tutte queste attività, sono richieste autorizzazioni come il ruolo `rds_superuser`.

Le fasi seguenti si basano sull'ipotesi che il cluster database Aurora PostgreSQL sia associato a un gruppo di parametri cluster di database personalizzato. 

## Console
<a name="Appendix.PostgreSQL.CommonDBATasks.pgaudit.basic-setup.CON"></a>

**Per impostare l'estensione pgAudit**

1. Accedi alla Console di gestione AWS e apri la console Amazon RDS all'indirizzo [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Nel riquadro di navigazione, scegli l'istanza di scrittura del cluster database Aurora PostgreSQL .

1. Apri la scheda **Configurazione** per l'istanza di scrittura del cluster database Aurora PostgreSQL.  Tra i dettagli dell'istanza, individua il collegamento **Parameter group** (Gruppo di parametri). 

1. Scegli il collegamento per aprire i parametri personalizzati associati al cluster database Aurora PostgreSQL. 

1. Nel campo di ricerca **Parametri**, digita `shared_pre` per trovare il parametro `shared_preload_libraries`.

1. Scegli **Edit parameters** (Modifica parametri) per accedere ai valori delle proprietà.

1. Aggiungi `pgaudit` all'elenco nel campo **Values** (Valori). Utilizza una virgola per separare gli elementi nell'elenco di valori.   
![\[Immagine del parametro shared_preload_libaries con pgAudit aggiunto.\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/AuroraUserGuide/images/apg_rpg_shared_preload_pgaudit.png)

1. Riavvia l'istanza di scrittura del cluster database Aurora PostgreSQL in modo che la modifica al parametro `shared_preload_libraries` diventi effettiva. 

1. Quando l'istanza è disponibile, verifica che pgAudit sia stato inizializzato. Utilizza `psql` per connetterti all'istanza di scrittura del cluster database Aurora PostgreSQL, quindi esegui il comando seguente.

   ```
   SHOW shared_preload_libraries;
   shared_preload_libraries 
   --------------------------
   rdsutils,pgaudit
   (1 row)
   ```

1. Con pgAudit inizializzato, puoi ora creare l'estensione. L'estensione deve essere creata dopo aver inizializzato la libreria perché l'estensione `pgaudit` installa i trigger evento per l'audit delle istruzioni DDL (Data Definition Language). 

   ```
   CREATE EXTENSION pgaudit;
   ```

1. Chiudi la sessione `psql`.

   ```
   labdb=> \q
   ```

1. Accedi alla Console di gestione AWS e apri la console Amazon RDS all'indirizzo [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Trova il parametro `pgaudit.log` nell'elenco e impostalo sul valore appropriato per il caso d'uso. Ad esempio, se si imposta il parametro `pgaudit.log` su `write` come mostrato nell'immagine seguente, gli inserimenti, gli aggiornamenti, le eliminazioni e alcuni altri tipi di modifiche vengono acquisiti nel registro.   
![\[Immagine del parametro pgaudit.log con l'impostazione.\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/AuroraUserGuide/images/rpg_set_pgaudit-log-level.png)

   Puoi anche scegliere uno dei seguenti valori per il parametro `pgaudit.log`.
   + none: valore predefinito. Non viene registrata alcuna modifica al database. 
   + all: registra tutto (read, write, function, role, ddl, misc). 
   + ddl: registra tutte le istruzioni DDL (Data Definition Language) non incluse nella classe `ROLE`.
   + function: registra le chiamate di funzione e blocchi `DO`.
   + misc: registra vari comandi come `DISCARD`, `FETCH`, `CHECKPOINT`, `VACUUM` e `SET`.
   + read: registra `SELECT` e `COPY` quando l'origine è una relazione (ad esempio una tabella) o una query.
   + role: registra le istruzioni correlate a ruoli e privilegi, ad esempio `GRANT`, `REVOKE`, `CREATE ROLE`, `ALTER ROLE` e `DROP ROLE`.
   + write: registra `INSERT`, `UPDATE`, `DELETE`, `TRUNCATE` e `COPY` quando la destinazione è una relazione (tabella).

1. Scegli **Save changes** (Salva modifiche).

1. Apri la console di Amazon RDS all'indirizzo [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Nell’elenco Database, scegli l’istanza di scrittura del cluster di database Aurora PostgreSQL.

## AWS CLI
<a name="Appendix.PostgreSQL.CommonDBATasks.pgaudit.basic-setup.CLI"></a>

**Per configurare pgAudit**

Per configurare pgAudit utilizzando AWS CLI, chiama l'operazione [modify-db-parameter-group](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-parameter-group.html) per modificare i parametri del registro di audit nel gruppo di parametri personalizzati, come illustrato nella procedura seguente.

1. Utilizza il seguente comando AWS CLI per aggiungere `pgaudit` al parametro `shared_preload_libraries`.

   ```
   aws rds modify-db-parameter-group \
      --db-parameter-group-name custom-param-group-name \
      --parameters "ParameterName=shared_preload_libraries,ParameterValue=pgaudit,ApplyMethod=pending-reboot" \
      --region aws-region
   ```

1. Utilizza il comando AWS CLI seguente per riavviare l'istanza di scrittura del cluster database Aurora PostgreSQL in modo che la libreria pgaudit venga inizializzata.

   ```
   aws rds reboot-db-instance \
       --db-instance-identifier writer-instance \
       --region aws-region
   ```

1. Quando l'istanza è disponibile, verifica che `pgaudit` sia stato inizializzato. Utilizza `psql` per connetterti all'istanza di scrittura del cluster database Aurora PostgreSQL, quindi esegui il comando seguente.

   ```
   SHOW shared_preload_libraries;
   shared_preload_libraries 
   --------------------------
   rdsutils,pgaudit
   (1 row)
   ```

   Con pgAudit inizializzato, puoi ora creare l'estensione.

   ```
   CREATE EXTENSION pgaudit;
   ```

1. Chiudi la sessione `psql` in modo da poter utilizzare AWS CLI.

   ```
   labdb=> \q
   ```

1. Utilizza il comando AWS CLI seguente per specificare le classi di istruzioni che desideri registrare mediante la registrazione di audit della sessione. L'esempio imposta il parametro `pgaudit.log` su `write`, che acquisisce inserimenti, aggiornamenti ed eliminazioni nel registro.

   ```
   aws rds modify-db-parameter-group \
      --db-parameter-group-name custom-param-group-name \
      --parameters "ParameterName=pgaudit.log,ParameterValue=write,ApplyMethod=pending-reboot" \
      --region aws-region
   ```

   Puoi anche scegliere uno dei seguenti valori per il parametro `pgaudit.log`.
   + none: valore predefinito. Non viene registrata alcuna modifica al database. 
   + all: registra tutto (read, write, function, role, ddl, misc). 
   + ddl: registra tutte le istruzioni DDL (Data Definition Language) non incluse nella classe `ROLE`.
   + function: registra le chiamate di funzione e blocchi `DO`.
   + misc: registra vari comandi come `DISCARD`, `FETCH`, `CHECKPOINT`, `VACUUM` e `SET`.
   + read: registra `SELECT` e `COPY` quando l'origine è una relazione (ad esempio una tabella) o una query.
   + role: registra le istruzioni correlate a ruoli e privilegi, ad esempio `GRANT`, `REVOKE`, `CREATE ROLE`, `ALTER ROLE` e `DROP ROLE`.
   + write: registra `INSERT`, `UPDATE`, `DELETE`, `TRUNCATE` e `COPY` quando la destinazione è una relazione (tabella).

   Riavvia l'istanza di scrittura del cluster database Aurora PostgreSQL utilizzando il comando AWS CLI seguente.

   ```
   aws rds reboot-db-instance \
       --db-instance-identifier writer-instance \
       --region aws-region
   ```