Registrazione di controllo Db2 - 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à.

Registrazione di controllo Db2

Con la registrazione di controllo Db2, Amazon RDS registra l'attività del database, inclusi gli utenti che accedono al database e le query eseguite sul database. RDScarica i log di controllo completati nel tuo bucket Amazon S3, utilizzando AWS Identity and Access Management il ruolo IAM () che fornisci.

Configurazione della registrazione di controllo Db2

Per abilitare la registrazione di controllo per un database Amazon RDS for Db2, abilita l'DB2_AUDITopzione sull'istanza DB RDS for Db2. Quindi, configura una politica di controllo per abilitare la funzionalità per il database specifico. Per abilitare l'opzione sull'istanza DB RDS for Db2, configurate le impostazioni dell'DB2_AUDITopzione. A tale scopo, fornisci Amazon Resource Names (ARNs) per il tuo bucket Amazon S3 e il IAM ruolo con le autorizzazioni per accedere al tuo bucket.

Per configurare la registrazione di controllo Db2 per un database RDS per Db2, completa i seguenti passaggi.

Fase 1: creazione di un bucket Amazon S3

Se non l'hai già fatto, crea un bucket Amazon S3 in cui Amazon RDS può caricare i tuoi file di log di controllo del database RDS per Db2. Per il bucket S3 utilizzato come destinazione dei file dell'audit valgono le seguenti restrizioni:

  • Deve essere uguale Regione AWS alla tua istanza DB RDS for Db2.

  • Non deve essere aperto al pubblico.

  • Non può utilizzare S3 Object Lock.

  • Il proprietario del bucket deve essere anche il proprietario del IAM ruolo.

Per informazioni su come creare un bucket Amazon S3, consulta Creating a bucket nella Amazon S3 User Guide.

Dopo aver abilitato la registrazione di controllo, Amazon invia RDS automaticamente i log dalla tua istanza DB alle seguenti posizioni:

  • Registri a livello di istanza DB: bucket_name/db2-audit-logs/dbi_resource_id/date_time_utc/

  • Registri a livello di database: bucket_name/db2-audit-logs/dbi_resource_id/date_time_utc/db_name/

Prendi nota dell'Amazon Resource Name (ARN) per il tuo bucket. Queste informazioni sono necessarie per completare i passaggi successivi.

Fase 2: Creare una IAM politica

Crea una IAM policy con le autorizzazioni necessarie per trasferire i file di log di controllo dall'istanza DB al bucket Amazon S3. Questo passaggio presuppone che tu disponga di un bucket S3.

Prima di creare la politica, raccogli le seguenti informazioni:

  • Il ARN per il tuo secchio.

  • La chiave ARN for your AWS Key Management Service (AWS KMS), se il bucket utilizza SSE-KMS la crittografia.

Crea una IAM politica che includa le seguenti autorizzazioni:

"s3:ListBucket", "s3:GetBucketACL", "s3:GetBucketLocation", "s3:PutObject", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload", "s3:ListAllMyBuckets"
Nota

Amazon RDS necessita dell's3:ListAllMyBucketsazione interna per verificare che lo stesso sia Account AWS proprietario sia del bucket S3 che dell'istanza DB RDS for Db2.

Se il tuo bucket utilizza la SSE-KMS crittografia, includi anche le seguenti autorizzazioni:

"kms:GenerateDataKey", "kms:Decrypt"

È possibile creare una IAM politica utilizzando AWS Management Console o il AWS Command Line Interface ()AWS CLI.

Per creare una IAM policy che consenta ad Amazon RDS di accedere al tuo bucket Amazon S3
  1. Accedi a AWS Management Console e apri la IAM console all'indirizzo. https://console.aws.amazon.com/iam/

  2. Nel riquadro di navigazione, seleziona Policy.

  3. Scegli Crea politica, quindi scegli JSON.

  4. In Aggiungi azioni, filtra per S3. Aggiungi accesso ListBucketGetBucketAcle GetBucketLocation.

  5. Per Aggiungi una risorsa, scegli Aggiungi. Per Tipo di risorsa, scegli bucket e inserisci il nome del bucket. Quindi, scegli Aggiungi risorsa.

  6. Scegli Aggiungi nuova dichiarazione.

  7. In Aggiungi azioni, filtra per S3. Aggiungi accesso PutObjectListMultipartUploadPartse AbortMultipartUpload.

  8. Per Aggiungi una risorsa, scegli Aggiungi. Per Tipo di risorsa, scegliete oggetto e immettete your bucket name/*. Quindi, scegli Aggiungi risorsa.

  9. Scegli Aggiungi nuova dichiarazione.

  10. In Aggiungi azioni, filtra per S3. Aggiungi accesso ListAllMyBuckets.

  11. Per Aggiungi una risorsa, scegli Aggiungi. Per Tipo di risorsa, scegli Tutte le risorse. Quindi, scegli Aggiungi risorsa.

  12. Se stai usando le tue KMS chiavi per crittografare i dati:

    1. Scegli Aggiungi nuova dichiarazione.

    2. In Aggiungi azioni, filtra perKMS. Aggiungi accesso GenerateDataKeye decrittografa.

    3. Per Aggiungi una risorsa, scegli Aggiungi. Per Tipo di risorsa, scegli Tutte le risorse. Quindi, scegli Aggiungi risorsa.

  13. Scegli Next (Successivo).

  14. Per Nome della politica, inserisci un nome per questa politica.

  15. (Facoltativo) In Descrizione, inserire una descrizione per questa politica.

  16. Scegli Create Policy (Crea policy).

Per creare una IAM policy che consenta ad Amazon RDS di accedere al tuo bucket Amazon S3
  1. Esegui il comando create-policy. Nell'esempio seguente, sostituisci iam_policy_name e amzn-s3-demo-bucket con un nome per la tua IAM policy e il nome del bucket Amazon S3 di destinazione.

    PerLinux, omacOS: Unix

    aws iam create-policy \ --policy-name iam_policy_name \ --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Sid": "Statement1", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketAcl", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket" ] }, { "Sid": "Statement2", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*" ] }, { "Sid": "Statement3", "Effect": "Allow", "Action": [ "s3:ListAllMyBuckets" ], "Resource": [ "*" ] }, { "Sid": "Statement4", "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": [ "*" ] } ] }'

    Per Windows:

    aws iam create-policy ^ --policy-name iam_policy_name ^ --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Sid": "Statement1", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketAcl", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket" ] }, { "Sid": "Statement2", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*" ] }, { "Sid": "Statement3", "Effect": "Allow", "Action": [ "s3:ListAllMyBuckets" ], "Resource": [ "*" ] }, { "Sid": "Statement4", "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": [ "*" ] } ] }'
  2. Dopo aver creato il criterio, annota ARN il criterio. Ti serve il ARN perFase 3: Crea un IAM ruolo e allega la tua IAM policy.

Per informazioni sulla creazione di una IAM politica, vedere Creazione IAM di politiche nella Guida IAM per l'utente.

Fase 3: Crea un IAM ruolo e allega la tua IAM policy

Questo passaggio presuppone che tu abbia creato la IAM politica inFase 2: Creare una IAM politica. In questo passaggio, crei un IAM ruolo per la tua istanza DB RDS for Db2 e quindi alleghi la tua IAM policy al ruolo.

Puoi creare un IAM ruolo per la tua istanza DB utilizzando la console o il AWS CLI.

Per creare un IAM ruolo e allegare ad esso la tua IAM policy
  1. Accedi a AWS Management Console e apri la IAM console all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel pannello di navigazione, seleziona Roles (Ruoli).

  3. Selezionare Create role (Crea ruolo).

  4. Per Tipo di entità attendibile, seleziona Servizio AWS.

  5. Per Servizio o caso d'uso RDS, seleziona, quindi seleziona RDS— Aggiungi ruolo al database.

  6. Scegli Next (Successivo).

  7. Per le politiche di autorizzazione, cerca e seleziona il nome della IAM politica che hai creato.

  8. Scegli Next (Successivo).

  9. In Role name, (Nome ruolo), inserisci un nome.

  10. (Facoltativo) In Description (Descrizione), inserisci una descrizione per il nuovo ruolo.

  11. Scegliere Crea ruolo.

Per creare un IAM ruolo e allegare ad esso la tua IAM politica
  1. Esegui il comando create-role. Nell'esempio seguente, sostituisci iam_role_name con un nome per il IAM ruolo.

    Per LinuxmacOS, oUnix:

    aws iam create-role \ --role-name iam_role_name \ --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }'

    Per Windows:

    aws iam create-role ^ --role-name iam_role_name ^ --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }'
  2. Dopo aver creato il ruolo, prendete nota ARN del ruolo. Ne hai bisogno ARN per il passaggio successivo,Fase 4: Configurare un gruppo di opzioni per la registrazione di controllo Db2.

  3. Esegui il comando attach-role-policy. Nell'esempio seguente, sostituisci iam_policy_arn con ARN la IAM politica in cui è stata creataFase 2: Creare una IAM politica. Replace (Sostituisci) iam_role_name con il nome del IAM ruolo che hai appena creato.

    Per LinuxmacOS, oUnix:

    aws iam attach-role-policy \ --policy-arn iam_policy_arn \ --role-name iam_role_name

    Per Windows:

    aws iam attach-role-policy ^ --policy-arn iam_policy_arn ^ --role-name iam_role_name

Per ulteriori informazioni, consulta Creazione di un ruolo per delegare le autorizzazioni a un IAM utente nella Guida per l'IAMutente.

Fase 4: Configurare un gruppo di opzioni per la registrazione di controllo Db2

Il processo per aggiungere l'opzione di registrazione di controllo Db2 a un'istanza di RDS For Db2 DB è il seguente:

  1. Creare un nuovo gruppo di opzioni oppure copiare o modificare un gruppo di opzioni esistente.

  2. Aggiungere e configurare tutte le opzioni necessarie.

  3. Associare il gruppo di opzioni a questa istanza database.

Dopo aver aggiunto l'opzione di audit logging Db2, non è necessario riavviare l'istanza DB. Non appena il gruppo di opzioni diventa attivo, è possibile creare audit e archiviarne i log nel bucket S3.

Per aggiungere e configurare la registrazione di controllo Db2 sul gruppo di opzioni di un'istanza DB
  1. Scegliere una delle seguenti opzioni:

    • Utilizzare un gruppo di opzioni esistente.

    • Crea un gruppo di opzioni DB personalizzato e usa quel gruppo di opzioni. Per ulteriori informazioni, consulta Creazione di un gruppo di opzioni.

  2. Aggiungi l'AUDITopzione DB2_ al gruppo di opzioni e configura le impostazioni delle opzioni. Per ulteriori informazioni sull'aggiunta di opzioni, consulta Aggiunta di un'opzione a un gruppo di opzioni.

    • Per IAM_ ROLE _ ARN, inserisci ARN il IAM ruolo in cui hai creatoFase 3: Crea un IAM ruolo e allega la tua IAM policy.

    • Per S3_ BUCKET _ ARN, inserisci il ARN bucket S3 da utilizzare per i log di controllo Db2. Il bucket deve trovarsi nella stessa regione dell'istanza database for Db2. RDS La politica associata al IAM ruolo inserito deve consentire le operazioni richieste su questa risorsa.

  3. Applicare il gruppo di opzioni a un'istanza database nuova o esistente. Scegliere una delle seguenti opzioni:

    • Se si sta creando una nuova istanza database, applicare il gruppo di opzioni quando viene avviata l'istanza.

    • In un'istanza database esistente, applicare il gruppo di opzioni modificando l'istanza e poi collegando il nuovo gruppo di opzioni. Per ulteriori informazioni, consulta Modifica di un'istanza Amazon RDS DB.

Fase 5: Configurare la politica di controllo

Per configurare la politica di controllo per il tuo database RDS for Db2, connettiti al rdsadmin database utilizzando il nome utente e la password principale per l'istanza DB RDS for Db2. Quindi, rdsadmin.configure_db_audit richiamate la stored procedure con il nome DB del database e i valori dei parametri applicabili.

L'esempio seguente si connette al database e configura una politica di controllo per testdb le categorieAUDIT,CHECKING,OBJMAINT, SECMAINTSYSADMIN, eVALIDATE. Il valore di status BOTH registra gli esiti positivi e negativi e, per impostazione predefinita, ERROR TYPE è NORMAL impostato su. Per ulteriori informazioni su come utilizzare questa stored procedure, vedere. rdsadmin.configure_db_audit

db2 "connect to rdsadmin user master_user using master_password" db2 "call rdsadmin.configure_db_audit('testdb', 'ALL', 'BOTH', ?)"

Fase 6: Verificare la configurazione di controllo

Per assicurarti che la tua politica di controllo sia impostata correttamente, controlla lo stato della configurazione di controllo.

Per verificare la configurazione, connettiti al rdsadmin database utilizzando il nome utente principale e la password principale per la tua istanza DB RDS for Db2. Quindi, esegui la seguente SQL istruzione con il nome DB del tuo database. Nell'esempio seguente, il nome del DB è testdb.

db2 "select task_id, task_type, database_name, lifecycle, varchar(bson_to_json(task_input_params), 500) as task_params, cast(task_output as varchar(500)) as task_output from table(rdsadmin.get_task_status(null,'testdb','CONFIGURE_DB_AUDIT'))" Sample Output TASK_ID TASK_TYPE DATABASE_NAME LIFECYCLE -------------------- -------------------- --------------- ------------- 2 CONFIGURE_DB_AUDIT DB2DB SUCCESS ... continued ... TASK_PARAMS -------------------------------------------------------- { "AUDIT_CATEGORY" : "ALL", "CATEGORY_SETTING" : "BOTH" } ... continued ... TASK_OUTPUT --------------------------------------------------- 2023-12-22T20:27:03.029Z Task execution has started. 2023-12-22T20:27:04.285Z Task execution has completed successfully.

Gestione della registrazione di controllo Db2

Dopo aver configurato la registrazione di controllo di Db2, è possibile modificare la politica di controllo per un database specifico o disabilitare la registrazione di controllo a livello di database o per l'intera istanza DB. Puoi anche modificare il bucket Amazon S3 in cui vengono caricati i file di registro.

Modifica di una politica di audit Db2

Per modificare la politica di controllo per un database specifico RDS per Db2, esegui la rdsadmin.configure_db_audit stored procedure. Con questa procedura memorizzata, è possibile modificare le categorie, le impostazioni delle categorie e la configurazione del tipo di errore della politica di controllo. Per ulteriori informazioni, consulta rdsadmin.configure_db_audit.

Modifica della posizione dei file di registro

Per modificare il bucket Amazon S3 in cui vengono caricati i file di registro, esegui una delle seguenti operazioni:

  • Modifica il gruppo di opzioni corrente collegato alla tua istanza database RDS for Db2: aggiorna l'S3_BUCKET_ARNimpostazione dell'DB2_AUDITopzione in modo che punti al nuovo bucket. Inoltre, assicuratevi di aggiornare la IAM politica associata al IAM ruolo specificato dall'IAM_ROLE_ARNimpostazione nel gruppo di opzioni allegato. Questa IAM politica deve fornire al nuovo bucket le autorizzazioni di accesso richieste. Per informazioni sulle autorizzazioni richieste nella IAM politica, consulta. Creare una IAM politica

  • Collega la tua istanza DB RDS for Db2 a un gruppo di opzioni diverso: modifica la tua istanza DB per cambiare il gruppo di opzioni ad essa associato. Assicurati che il nuovo gruppo di opzioni sia configurato con IAM_ROLE_ARN le impostazioni S3_BUCKET_ARN e i comandi corretti. Per informazioni su come configurare queste impostazioni per l'DB2_AUDITopzione, consultaConfigurare un gruppo di opzioni.

Quando modificate il gruppo di opzioni, assicuratevi di applicare immediatamente le modifiche. Per ulteriori informazioni, consulta Modifica di un'istanza Amazon RDS DB.

Disabilitazione della registrazione di controllo Db2

Per disabilitare la registrazione di controllo Db2, effettuate una delle seguenti operazioni:

  • Disattiva la registrazione di controllo RDS per l'istanza DB Db2: modifica l'istanza DB e rimuovi il gruppo di opzioni che contiene l'DB2_AUDITopzione. Per ulteriori informazioni, consulta Modifica di un'istanza Amazon RDS DB.

  • Disabilita la registrazione di controllo per un database specifico: interrompi la registrazione di controllo e rimuovi la politica di controllo rdsadmin.disable_db_audit chiamando il nome DB del tuo database. Per ulteriori informazioni, consulta rdsadmin.disable_db_audit.

    db2 "call rdsadmin.disable_db_audit( 'db_name')"

Visualizzazione dei log di audit

Dopo aver abilitato la registrazione di audit Db2, attendi almeno un'ora prima di visualizzare i dati di audit nel tuo bucket Amazon S3. Amazon invia RDS automaticamente i log dalla tua istanza DB RDS for Db2 alle seguenti posizioni:

  • Registri a livello di istanza DB: bucket_name/db2-audit-logs/dbi_resource_id/date_time_utc/

  • Registri a livello di database: bucket_name/db2-audit-logs/dbi_resource_id/date_time_utc/db_name/

La seguente schermata di esempio della console Amazon S3 mostra un elenco di cartelle RDS per i file di log a livello di istanza Db2 DB.

Console Amazon S3 con la scheda Oggetti selezionata, che mostra un elenco di cartelle RDS per i file di log a livello di istanza Db2 DB.

La seguente schermata di esempio della console Amazon S3 mostra i file di log a livello di database per RDS l'istanza DB for Db2.

Console Amazon S3 con la scheda Oggetti selezionata, che mostra i file di log a livello di database per l'istanza DB RDS for Db2.

Risoluzione dei problemi relativi alla registrazione di audit di Db2

Utilizzate le seguenti informazioni per risolvere i problemi più comuni relativi alla registrazione di controllo Db2.

Impossibile configurare la politica di controllo

Se la chiamata alla stored procedure rdsadmin.configure_db_audit restituisce un errore, è possibile che il gruppo di opzioni con l'DB2_AUDITopzione non sia associato all'istanza DB RDS for Db2. Modifica l'istanza DB per aggiungere il gruppo di opzioni, quindi prova a chiamare nuovamente la stored procedure. Per ulteriori informazioni, consulta Modifica di un'istanza Amazon RDS DB.

Nessun dato nel bucket Amazon S3

Se nel bucket Amazon S3 mancano dati di registrazione, verifica quanto segue:

  • Il bucket Amazon S3 si trova nella stessa regione dell'istanza database RDS per Db2.

  • Il ruolo specificato nell'impostazione dell'IAM_ROLE_ARNopzione è configurato con le autorizzazioni necessarie per caricare i log nel bucket Amazon S3. Per ulteriori informazioni, consulta Creare una IAM politica.

  • Le impostazioni ARNs for the IAM_ROLE_ARN and S3_BUCKET_ARN option sono corrette nel gruppo di opzioni associato all'istanza database RDS for Db2. Per ulteriori informazioni, consulta Configurare un gruppo di opzioni.

È possibile verificare lo stato delle attività della configurazione della registrazione di controllo collegandosi al database ed eseguendo un'SQListruzione. Per ulteriori informazioni, consulta Verificare la configurazione dell'audit.

Puoi anche controllare gli eventi per scoprire di più sul motivo per cui i log potrebbero mancare. Per informazioni su come visualizzare gli eventi, consultaVisualizzazione di log, eventi e stream nella console Amazon RDS.