Visualización de registros de auditoría
Sus registros de auditoría se almacenan en D:\rdsdbdata\SQLAudit.
Una vez que SQL Server termina de escribir en un archivo de registro de auditoría (cuando el archivo alcanza su límite de tamaño), Amazon RDS lo carga en su bucket de S3. Si se habilita la retención, Amazon RDS mueve el archivo a la carpeta de retención: D:\rdsdbdata\SQLAudit\transmitted.
Para obtener información acerca de cómo configurar la retención, consulte Incorporación de SQL Server Audit a las opciones de instancia de base de datos.
Los registros de auditoría se conservan en la instancia de base de datos hasta que se carga el archivo de registro de auditoría. Puede ver los registros de auditoría ejecutando el siguiente comando.
SELECT * FROM msdb.dbo.rds_fn_get_audit_file ('D:\rdsdbdata\SQLAudit\*.sqlaudit' , default , default )
Puede usar el mismo comando para ver los registros de auditoría en su carpeta de retención cambiando el filtro a D:\rdsdbdata\SQLAudit\transmitted\*.sqlaudit.
SELECT * FROM msdb.dbo.rds_fn_get_audit_file ('D:\rdsdbdata\SQLAudit\transmitted\*.sqlaudit' , default , default )
Visualización de registros de auditoría en CloudWatch
Si elige cargar los registros de auditoría en CloudWatch, puede acceder a los registros (en formato JSON) siguiendo estos pasos.
Visualización de los registros de auditoría en CloudWatch
-
Abra la consola de CloudWatch en https://console.aws.amazon.com/cloudwatch/
. -
En el panel de navegación izquierdo, elija Registros, Administración de registros.
-
Ingrese el nombre de la instancia de base de datos en el cuadro de búsqueda de grupos de registros.
-
Elija el grupo de registro adecuado.
-
En la pestaña Flujos de registro, elija el flujo de registro.
También puede utilizar la CLI de AWS para consultar el flujo de registro. En el ejemplo siguiente, se extraen los eventos de registro de auditoría y se exportan a un archivo CSV.
# Parameters # ----------- LOG_GROUP="/aws/rds/instance/<your-db-instance-id>/sqlaudit" START_DATE="2026-06-18" END_DATE="2026-06-19" OUTPUT_FILE="sql_audit_extract.csv" # Convert dates to epoch milliseconds # ----------------------------------- START_TIME=$(date -d "${START_DATE}" +%s)000 END_TIME=$(date -d "${END_DATE}" +%s)000 # Fetch log events # ---------------- # Note: --no-paginate returns all results in a single call. # For large result sets, consider using --page-size or manual pagination. RESPONSE=$(aws logs filter-log-events \ --log-group-name "${LOG_GROUP}" \ --start-time "${START_TIME}" \ --end-time "${END_TIME}" \ --output json \ --no-paginate) # Parse and export to CSV # Extract the 'message' field from each event (JSON formatted messages), # then convert to CSV using jq. # Get CSV headers from the first record # ------------------------------------- HEADERS=$(echo "${RESPONSE}" | jq -r ' [.events[0].message | fromjson | keys[]] | @csv ') # Write headers to output file # ---------------------------- echo "${HEADERS}" > "${OUTPUT_FILE}" # Write all records to output file # -------------------------------- echo "${RESPONSE}" | jq -r ' .events[].message | fromjson | [.[]] | @csv ' >> "${OUTPUT_FILE}" # Script execution summary # ------------------------- RECORD_COUNT=$(echo "${RESPONSE}" | jq '.events | length') echo "Exported ${RECORD_COUNT} records to ${OUTPUT_FILE}"