

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

# Monitoraggio di Amazon RDS tramite i flussi di attività del database
<a name="DBActivityStreams"></a><a name="das"></a>

Con Flussi di attività del database puoi monitorare pressoché in tempo reale i flussi di attività del database.

**Topics**
+ [Panoramica dei flussi di attività di database](#DBActivityStreams.Overview)
+ [Configurazione della verifica unificata per Oracle Database](DBActivityStreams.configuring-auditing.md)
+ [Configurazione della policy di audit per Amazon RDS per Microsoft SQL Server](DBActivityStreams.configuring-auditing-SQLServer.md)
+ [Avvio di un flusso di attività di database](DBActivityStreams.Enabling.md)
+ [Modifica di un flusso di attività del database per Amazon RDS](DBActivityStreams.Modifying.md)
+ [Recupero dello stato di un flusso di attività del database](DBActivityStreams.Status.md)
+ [Arresto di un flusso di attività di database](DBActivityStreams.Disabling.md)
+ [Monitoraggio di flussi di attività di database](DBActivityStreams.Monitoring.md)
+ [Esempi di policy IAM per flussi di attività del database](DBActivityStreams.ManagingAccess.md)

## Panoramica dei flussi di attività di database
<a name="DBActivityStreams.Overview"></a>

Come amministratore del database Amazon RDS, devi proteggere il database e soddisfare i requisiti normativi e di conformità. Una strategia consiste nell'integrare i flussi di attività del database con gli strumenti di monitoraggio. In questo modo, puoi monitorare e impostare gli allarmi per l’attività di audit nel database.

Le minacce alla sicurezza sono sia esterne che interne. Per proteggersi dalle minacce interne, è possibile controllare l'accesso degli amministratori ai flussi di dati configurando la funzionalità flussi di attività del database. Amazon RDS DBAs non ha accesso alla raccolta, trasmissione, archiviazione ed elaborazione degli stream.

**Contents**
+ [Come funzionano i flussi di attività del database](#DBActivityStreams.Overview.how-they-work)
+ [Verifica nel database Oracle Database e Microsoft SQL Server](#DBActivityStreams.Overview.auditing)
  + [Verifica unificata in Oracle Database](#DBActivityStreams.Overview.unified-auditing)
  + [Verifica in Microsoft SQL Server](#DBActivityStreams.Overview.SQLServer-auditing)
  + [Campi di verifica non nativi per Oracle Database e SQL Server](#DBActivityStreams.Overview.unified-auditing.non-native)
  + [Sovrascrittura di un gruppo parametri del database](#DBActivityStreams.Overview.unified-auditing.parameter-group)
+ [Modalità asincrona per i flussi di attività del database](#DBActivityStreams.Overview.sync-mode)
+ [Requisiti e limitazioni per flussi di attività del database](#DBActivityStreams.Overview.requirements)
+ [Disponibilità di regioni e versioni](#DBActivityStreams.RegionVersionAvailability)
+ [Classi di istanza database supportate per i flussi di attività di database](#DBActivityStreams.Overview.requirements.classes)

### Come funzionano i flussi di attività del database
<a name="DBActivityStreams.Overview.how-they-work"></a>

Amazon RDS inserisce le attività in un flusso di dati Amazon Kinesis pressoché in tempo reale. Il flusso Kinesis viene creato automaticamente. Da Kinesis, puoi configurare AWS servizi come Amazon Data Firehose e consumare lo stream e AWS Lambda archiviare i dati.

**Importante**  
L'utilizzo della funzionalità Flussi di attività del database in Amazon RDS è gratuito, ma Amazon Kinesis addebita i costi del flusso di dati. Per ulteriori informazioni, consulta [Prezzi di Amazon Kinesis Data Streams](https://aws.amazon.com/kinesis/data-streams/pricing/).

Puoi configurare le applicazioni per la gestione della conformità affinché attingano dai flussi di attività del database. Tali applicazioni possono utilizzare il flusso per generare avvisi e attività di verifica per il database.

Amazon RDS supporta i flussi di attività del database nelle implementazioni multi-AZ. In questo caso, i flussi di attività del database controllano sia le istanze primarie che quelle di stand-by.

### Verifica nel database Oracle Database e Microsoft SQL Server
<a name="DBActivityStreams.Overview.auditing"></a>

La verifica è il monitoraggio e la registrazione delle azioni del database configurate. Amazon RDS non acquisisce le attività del database per impostazione predefinita. Puoi creare e gestire autonomamente le policy di verifica nel database.

**Topics**
+ [Verifica unificata in Oracle Database](#DBActivityStreams.Overview.unified-auditing)
+ [Verifica in Microsoft SQL Server](#DBActivityStreams.Overview.SQLServer-auditing)
+ [Campi di verifica non nativi per Oracle Database e SQL Server](#DBActivityStreams.Overview.unified-auditing.non-native)
+ [Sovrascrittura di un gruppo parametri del database](#DBActivityStreams.Overview.unified-auditing.parameter-group)

#### Verifica unificata in Oracle Database
<a name="DBActivityStreams.Overview.unified-auditing"></a>

In un database Oracle, una *policy di verifica unificata* è un gruppo denominato di impostazioni di verifica che è possibile utilizzare per controllare un aspetto del comportamento dell'utente. Una policy può essere semplice come controllare le attività di un singolo utente. È inoltre possibile creare policy di verifica complesse che utilizzano condizioni.

Un database Oracle scrive record di verifica, inclusi i record di verifica `SYS`, sul *percorso di verifica unificato*. Ad esempio, se si verifica un errore durante un'istruzione `INSERT`, la verifica standard indica il numero di errore e l'istruzione SQL eseguita. Il percorso di verifica si trova in una tabella di sola lettura nello schema `AUDSYS`. Per accedere a questi record, esegui una query nella vista del dizionario dei dati `UNIFIED_AUDIT_TRAIL`.

In genere, è possibile configurare i flussi di attività del database come segue:

1. Crea una policy di verifica Oracle Database utilizzando il comando `CREATE AUDIT POLICY`.

   Oracle Database genera record di verifica.

1. Attiva la policy di verifica utilizzando il comando `AUDIT POLICY`.

1. Configurazione dei flussi di attività di database

   Solo le attività che corrispondono alle policy di verifica Oracle Database vengono acquisite e inviate a Amazon Kinesis Data Stream. Quando i flussi di attività del database sono abilitati, un amministratore di database Oracle non può modificare le policy di verifica o rimuovere i log di verifica.

Per ulteriori informazioni sulle policy di verifica unificate, consulta [Informazioni sulle attività di verifica con policy di verifica unificate e AUDIT](https://docs.oracle.com/en/database/oracle/oracle-database/19/dbseg/configuring-audit-policies.html#GUID-2435D929-10AD-43C7-8A6C-5133170074D0) nella *Guida alla sicurezza di Oracle Database*.

#### Verifica in Microsoft SQL Server
<a name="DBActivityStreams.Overview.SQLServer-auditing"></a>

Database Activity Stream utilizza la SQLAudit funzionalità per controllare il database SQL Server.

L'istanza RDS per SQL Server contiene:
+ Verifica del server: la verifica di SQL Server raccoglie una singola istanza di azioni a livello di server o database e un gruppo di azioni da monitorare. Le verifiche `RDS_DAS_AUDIT` e `RDS_DAS_AUDIT_CHANGES` a livello di server sono gestite da RDS.
+ Specifica di verifica del server: la specifica di verifica del server registra gli eventi a livello di server. È possibile modificare la specifica `RDS_DAS_SERVER_AUDIT_SPEC`. Questa specifica è collegata alla verifica del server `RDS_DAS_AUDIT`. La specifica `RDS_DAS_CHANGES_AUDIT_SPEC` è gestita da RDS.
+ Specifica di verifica del database: la specifica di verifica del database registra gli eventi a livello di database. È possibile creare una specifica di verifica del database `RDS_DAS_DB_<name>` e collegarla alla verifica del server `RDS_DAS_AUDIT`.

È possibile configurare i flussi di attività del database utilizzando la console o la CLI. In genere, è possibile configurare i flussi di attività del database come segue:

1. (Facoltativo) Crea una specifica di verifica del database con il comando `CREATE DATABASE AUDIT SPECIFICATION` e collegala alla verifica del server `RDS_DAS_AUDIT`. 

1. (Facoltativo) Modifica la specifica di verifica del server con il comando `ALTER SERVER AUDIT SPECIFICATION` e definisci le policy. 

1. Attiva le policy di verifica del database e del server. Esempio:

   `ALTER DATABASE AUDIT SPECIFICATION [<Your database specification>] WITH (STATE=ON)`

   `ALTER SERVER AUDIT SPECIFICATION [RDS_DAS_SERVER_AUDIT_SPEC] WITH (STATE=ON)`

1. Configurazione dei flussi di attività di database

   Solo le attività che corrispondono alle policy di verifica del server e del database vengono acquisite e inviate al flusso di dati Amazon Kinesis. Quando i flussi di attività del database sono abilitati e le policy sono bloccate, un amministratore di database non può modificare le policy di verifica o rimuovere i log di verifica. 
**Importante**  
Se la specifica di verifica di un database specifico è abilitata e la policy è bloccata, il database non può essere eliminato.

Per ulteriori informazioni sulla verifica di SQL Server, consulta [Componenti di verifica di SQL Server](https://learn.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-database-engine?view=sql-server-ver16) nella *documentazione di Microsoft SQL Server*.



#### Campi di verifica non nativi per Oracle Database e SQL Server
<a name="DBActivityStreams.Overview.unified-auditing.non-native"></a>

Quando si avvia un flusso di attività del database, ogni evento del database genera un evento del flusso di attività corrispondente. Ad esempio, un utente di database potrebbe eseguire le istruzioni `SELECT` e `INSERT`. Il database controlla questi eventi e li invia a un Amazon Kinesis Data Stream.

Gli eventi sono rappresentati nel flusso come oggetti JSON. Un oggetto JSON contiene un `DatabaseActivityMonitoringRecord`, che contiene una matrice `databaseActivityEventList`. I campi predefiniti nella matrice includono `class`, `clientApplication` e `command`.

Per impostazione predefinita, un flusso di attività non include campi di verifica nativi del motore. È possibile configurare Amazon RDS per Oracle e SQL Server in modo che includano questi campi aggiuntivi nell'oggetto JSON `engineNativeAuditFields`.

In Oracle Database, la maggior parte degli eventi nel percorso di verifica unificato esegue la mappatura ai campi nel flusso di attività dei dati RDS. Ad esempio, il campo `UNIFIED_AUDIT_TRAIL.SQL_TEXT` nelle mappe di verifica unificate al campo `commandText` in un flusso di attività di database. Tuttavia, i campi di verifica di Oracle Database come `OS_USERNAME` non mappano a campi predefiniti in un flusso di attività di database.

In SQL Server, la maggior parte dei campi dell'evento registrati dalla SQLAudit mappa ai campi del flusso di attività del database RDS. Ad esempio, il campo `code` in `sys.fn_get_audit_file` nella verifica viene mappato al campo `commandText` in un flusso di attività del database. Tuttavia, i campi di verifica del database SQL Server come `permission_bitmask` non vengono mappati ai campi predefiniti in un flusso di attività del database.

Per ulteriori informazioni su databaseActivityEvent List, vedere[Array JSON databaseActivityEventList per flussi di attività del database](DBActivityStreams.AuditLog.databaseActivityEventList.md).

#### Sovrascrittura di un gruppo parametri del database
<a name="DBActivityStreams.Overview.unified-auditing.parameter-group"></a>

In genere, è possibile attivare la verifica unificata in RDS per Oracle allegando un gruppo di parametri. Tuttavia, i flussi di attività del database richiedono una configurazione aggiuntiva. Per migliorare l'esperienza del cliente, Amazon RDS effettua le seguenti operazioni:
+ Se attivi un flusso di attività, RDS per Oracle ignora i parametri di verifica nel gruppo di parametri.
+ Se disattivi un flusso di attività, RDS per Oracle smette di ignorare i parametri di verifica.

Il flusso di attività del database per SQL Server è indipendente da qualsiasi parametro impostato nell'opzione di verifica di SQL.

### Modalità asincrona per i flussi di attività del database
<a name="DBActivityStreams.Overview.sync-mode"></a>

I flussi di attività in Amazon RDS sono sempre asincroni. Quando una sessione di database genera un evento del flusso di attività, vengono ripristinate immediatamente le normali attività della sessione. In background, Amazon RDS rende l'evento di flusso di attività un record persistente.

Se si verifica un errore nell'attività in background, Amazon RDS genera un evento. Questo indica l'inizio e la fine di qualsiasi finestra temporale in cui i record dell'evento del flusso di attività potrebbero essere stati persi. La modalità asincrona favorisce le prestazioni del database rispetto alla precisione del flusso di attività.

### Requisiti e limitazioni per flussi di attività del database
<a name="DBActivityStreams.Overview.requirements"></a>

In RDS, i flussi di attività del database hanno i requisiti e le limitazioni riportati di seguito:
+ I flussi di attività del database richiedono l'utilizzo di Amazon Kinesis.
+ AWS Key Management Service (AWS KMS) è necessaria per i flussi di attività del database perché sono sempre crittografati.
+ L'applicazione di una crittografia aggiuntiva al flusso di dati di Amazon Kinesis è incompatibile con i flussi di attività del database, che sono già crittografati con la tua chiave. AWS KMS 
+ Puoi creare e gestire autonomamente le policy di verifica. A differenza di Amazon Aurora, RDS per Oracle non acquisisce le attività del database per impostazione predefinita.
+ Puoi creare e gestire autonomamente le policy o le specifiche di verifica. A differenza di Amazon Aurora, Amazon RDS non acquisisce le attività del database per impostazione predefinita.
+ In un'implementazione multi-AZ, avvia il flusso di attività del database solo sull'istanza database primaria. Il flusso di attività controlla automaticamente sia l'istanza DB principale che quelle in stand-by. Durante un failover non sono richiesti passaggi aggiuntivi.
+ La ridenominazione di un'istanza database non crea un nuovo flusso Kinesis.
+ CDBs non sono supportati per RDS for Oracle.
+ Le repliche di lettura non sono supportate.

### Disponibilità di regioni e versioni
<a name="DBActivityStreams.RegionVersionAvailability"></a>

Il supporto varia a seconda delle versioni specifiche di ciascun motore di database e a seconda delle Regioni AWS. Per ulteriori informazioni sulla disponibilità di versioni e regioni con flussi di attività del database, consulta [Regioni e motori di database supportati per flussi di attività del database in Amazon RDS](Concepts.RDS_Fea_Regions_DB-eng.Feature.DBActivityStreams.md).

### Classi di istanza database supportate per i flussi di attività di database
<a name="DBActivityStreams.Overview.requirements.classes"></a>

In RDS per Oracle è possibile utilizzare i flussi di attività del database con le seguenti classi di istanza database:
+ db.m4.\$1large
+ db.m5.\$1large
+ db.m5d.\$1large
+ db.m6i.\$1large
+ db.r4.\$1large
+ db.r5.\$1large
+ db.r5.\$1large.tpc\$1.mem\$1x
+ db.r5b.\$1large
+ db.r5b.\$1large.tpc\$1.mem\$1x
+ db.r5d.\$1large
+ db.r6i.\$1large
+ db.r6i.\$1large.tpc\$1.mem\$1x
+ db.x2idn.\$1large
+ db.x2iedn.\$1large
+ db.x2iezn.\$1large
+ db.z1d.\$1large

In RDS per SQL Server è possibile utilizzare i flussi di attività del database con le seguenti classi di istanza database:
+ db.m4.\$1large
+ db.m5.\$1large
+ db.m5d.\$1large
+ db.m6i.\$1large
+ db.r4.\$1large
+ db.r5.\$1large
+ db.r5b.\$1large
+ db.r5d.\$1large
+ db.r6i.\$1large
+ db.x1e.\$1large
+ db.x2iedn.\$1large
+ db.z1d.\$1large

Per ulteriori informazioni sulle classi di istanza, consulta [Classi di istanze DB ](Concepts.DBInstanceClass.md).