Integra Oracle Data Safe e OCI Logging Analytics con OCI IAM e Microsoft Entra ID
Introduzione
La protezione dei database Oracle in ambienti ibridi e multicloud richiede una visibilità completa sull'attività degli utenti, soprattutto quando l'autenticazione viene gestita esternamente da Microsoft Azure Entra ID e Oracle Cloud Infrastructure Identity and Access Management (OCI IAM). Questa esercitazione descrive un'integrazione critica che unifica i log di audit di Oracle Data Safe con metadati IAM OCI avanzati provenienti da questi provider di identità centralizzati. Il risultato è un'impronta utente completa, che offre una tracciabilità end-to-end senza precedenti per tutte le interazioni del database, indipendentemente dall'origine di autenticazione, migliorando così la sicurezza e semplificando la gestione degli accessi.
Perché abbiamo bisogno di questo?
I log di audit del database tradizionali spesso non dispongono del contesto di identità cruciale necessario per tracciare le azioni a utenti cloud specifici, in particolare quando l'autenticazione avviene tramite provider di identità esterni. Questa integrazione affronta direttamente questa lacuna. Collegando Oracle Data Safe e OCI Logging Analytics con i metadati IAM OCI di Microsoft Azure Entra ID e OCI IAM, le organizzazioni ottengono una maggiore trasparenza degli audit, una migliore tracciabilità degli utenti nei sistemi ibridi e un monitoraggio centralizzato delle attività di accesso. Questa registrazione unificata e basata sull'identità è fondamentale per rafforzare la postura della sicurezza, semplificare le indagini di audit e soddisfare rigorosi requisiti di conformità negli ambienti aziendali moderni.
Audience
- Professionisti di OCI IAM, amministratori di database, analisti e auditor della sicurezza.
Obiettivi
- Integra i log di audit di Oracle Data Safe con i metadati OCI IAM e Microsoft Entra ID e quindi visualizza questi dati arricchiti all'interno di OCI Logging Analytics. Questo processo migliora la trasparenza degli audit e consente una tracciabilità dettagliata degli utenti end-to-end negli ambienti cloud e di database.
Prerequisiti
-
Tenancy OCI: accesso e autorizzazioni per i servizi OCI Logging Analytics, Oracle Data Safe, OCI Compute e IAM OCI.
-
Tenant Microsoft Entra ID: accesso amministrativo.
-
Accesso a OCI IAM: autorizzazioni di configurazione necessarie.
-
Strumenti richiesti: OCI CLI, Azure CLI,
jq,csvkit,pandase LibreOffice (o simili). -
Impostazione di Logging Analytics: assicurarsi che OCI Logging Analytics sia abilitato e che il Management Agent sia installato e configurato. Per ulteriori informazioni, fare riferimento agli argomenti sotto riportati.
-
Istanza di computazione OCI: plugin Management Agent abilitato.
Task 1: creare un report di audit Oracle Data Safe personalizzato per gli utenti autenticati esternamente in tutti i database
-
Eseguire il login a OCI Console, andare a Oracle Databases, Data Safe - Audit attività e fare clic su Report di audit - Tutte le attività in Risorse correlate.

-
Fare clic su Gestisci colonne e selezionare le colonne necessarie.

-
In Crea report personalizzato, immettere i dettagli relativi a Nome visualizzato, Descrizione e Compartimento.

-
In Gestisci schedulazione report selezionare Giornaliero nell'elenco a discesa Frequenza schedulazione e fare clic su Salva schedulazione.

Task 2: Impostare l'istanza di OCI Compute per la raccolta e la correlazione dei dati
In questo task, imposteremo l'istanza di OCI Compute per recuperare i dettagli dell'identità utente da Microsoft Entra ID e OCI IAM e per elaborare i report di audit di Oracle Data Safe. L'obiettivo finale è correlare gli ID utente esterni nei log di audit con metadati di identità integrati, fornendo un footprint utente completo.
Nota: scaricare gli script seguenti da qui:
scripts.
-
Recupera utenti Microsoft Entra ID.
Eseguire i comandi riportati di seguito per recuperare le informazioni utente da Microsoft Entra ID utilizzando l'API Microsoft Graph (
fetch_azure_ad_users.sh)../fetch_azure_ad_users.shOutput:
[oracle@linux-bastion:~]$ ./fetch_azure_ad_users.sh Fetching Access Token... Calling Graph API for users list... Parsing users and converting to CSV... Users list saved to: azure_ad_users.csvhead -3 azure_ad_users.csvOutput:
[oracle@linux-bastion:~]$ head -3 azure_ad_users.csv "id","displayName","userPrincipalName","mail" "b41b0688-c07xxxxxxx3-e9b0db0c1107","Alex Kovuru","akovuruxxxxxxjtripaigmail.onmicrosoft.com","alex.xxxuru@gmail.com" "7eb35b90-dc0xxxxxxxxxx-bc0b-48789368e9cf","Anuj Tripathi","anujtxxxxxai_gmail.com#EXT#@anujtripaigmaixxmicrosoft.com","anujtrxxx@gmail.com" -
Recuperare gli utenti IAM OCI.
Eseguire i comandi riportati di seguito per ottenere i dettagli utente da IAM OCI utilizzando l'interfaccia CLI OCI (
oci_user_list_to_csv.sh)../oci_user_list_to_csv.sh head -3 oci_iam_users.csvOutput:
[oracle@linux-bastion:~]$ ./oci_user_list_to_csv.sh CSV file generated: oci_iam_users.csv [oracle@linux-bastion:~]$ head -3 oci_iam_users.csv id,name,email "ocid1.user.oc1..aaaaaaaaqv3tai2mxxxxxxxxxxepkk5hrfinedvj67ieb7phkirwxfeupv3cbq","alexk",alex.kovuxxx@oracle.com "ocid1.user.oc1..aaaaaaaaoq7ypwb5xxxxxxxxx2l5i6yjlnsedvkcni3dxdjdkkw5lyf73lma","ag-admin","anujtripaxxxx2@gmail.com" [oracle@linux-bastion:~]$ -
Unisci dati utente.
Consolida i dati utente recuperati da entrambe le origini in un unico file CSV standardizzato (
merge_users_csv.sh)../merge_users_csv.sh head -3 merged_users.csvOutput:
[oracle@linux-bastion:~]$ ./merge_users_csv.sh Merged CSV created: merged_users.csv [oracle@linux-bastion:~]$ head -3 merged_users.csv id,displayName,userPrincipalName,mail,source "7eb35b90-dc0d-4135-bc0b-48789368e9cf","Anuj Tripathi","anujtrip.ai_xxx.com#EXT#@anujtripaigmail.onmicrosoft.com","anujtrixxxx@gmail.com",AzureAD "ocid1.user.oc1..aaaaaaaaqv3tai2miu6vtgxxxxxxxxxxxfinedvj67ieb7phkirwxfeupv3cbq","alexk",null,"alex.kovxxxxu@oracle.com",OCI [oracle@linux-bastion:~]$ -
Elaborare il report di audit Data Safe.
Scarica, converte, pulisce e standardizza il report di audit più recente da Oracle Data Safe (
process_data_safe_report.sh)../process_data_safe_report.sh head -3 cleaned_audit_records_final.csvOutput:
[oracle@linux-bastion:~]$ ./process_data_safe_report.sh Downloading report from OCI Data Safe... Converting XLS to CSV... convert /home/oracle/DS_AZ_OCI_Custom_External_User_Report_202507240745.xls -> /home/oracle/DS_AZ_OCI_Custom_External_User_Report_202507240745.csv using filter : Text - txt - csv (StarCalc) Cleaning the CSV file... Extracting specific columns... Post-processing the final CSV... Final post-processing complete. [oracle@linux-bastion:~]$ head -3 cleaned_audit_records_final.csv Target,DB user,OS user,Client host,Client ip,Event,Operation status,Operation time,External user DBS23AZPDB,ALLUSERS,oracle,linux-bastion,129.146.107.120,LOGOFF BY CLEANUP,SUCCESS,2025-07-10T21:07:37Z,b41b0688-c07e-416d-bf13-xxxxxxxxxc1107 DBS23AZPDB,ALLUSERS,oracle,linux-bastion,129.146.107.120,CREATE TABLE,SUCCESS,2025-07-10T19:59:07Z,b41b0688-c07e-416d-bf13-xxxxxxxx0c1107 [oracle@linux-bastion:~]$ -
Correla dati
Arricchire i log di audit di Oracle Data Safe correlando gli ID utente esterni con i dati utente IAM OCI uniti (
DataSafe_External_Users_Audit_Dashboard.sh)../DataSafe_External_Users_Audit_Dashboard.sh head -3 DataSafe_External_Users_Audit_Dashboard.csvOutput:
[oracle@linux-bastion:~]$ ./DataSafe_External_Users_Audit_Dashboard.sh Correlated Data : DataSafe_External_Users_Audit_Dashboard.csv [oracle@linux-bastion:~]$ head -3 DataSafe_External_Users_Audit_Dashboard.csv Target,DB user,OS user,Client host,Client ip,Event,Operation status,Operation time,External user,displayName,mail,source DBS23OCI,ANUJ,oracle,linux-bastion,10.0.0.124,LOGON,FAILURE,2025-07-02T17:38:58Z,ocid1.user.oc1..aaaaaaaaam4ulylhebm4zwtiaqsy4xxxxxxxwu6imevy3lihnkejs7h43nlknkywq,anuj.t.tripaxxxx@oracle.com,anuj.t.tripaxxxx@oracle.com,OCI DBS23AZPDB,ALLUSERS,oracle,linux-bastion,129.146.107.120,COMMIT,SUCCESS,2025-07-10T19:34:38Z,b41b0688-c07e-416d-bf13-e9b0dbxxx107,Alex Kovuru,alex.kovuruxx@gmail.com,AzureAD [oracle@linux-bastion:~]$Si utilizzerà un insieme di script della shell forniti per automatizzare questi processi. Assicurarsi che questi script vengano scaricati nell'istanza di OCI Compute. Per garantire aggiornamenti quotidiani dei dashboard, pianificare questi script da eseguire tramite un job cron nell'istanza di OCI Compute. L'esecuzione di questo job deve essere pianificata dopo l'ora di generazione del report Oracle Data Safe personalizzato.
Task 3: Configura OCI Logging Analytics
-
Preparare l'host a trasmettere i log a OCI Logging Analytics.
Eseguire il comando seguente per assicurarsi che i log possano essere letti da oracle-cloud-agent.
sudo -u oracle-cloud-agent /bin/bash -c "head -3 /home/oracle/DataSafe_External_Users_Audit_Dashboard.csv"Output previsto:
Target,DB user,OS user,Client host,Client ip,Event,Operation status,Operation time,External user,displayName,mail,source DBS23OCI,GLOBAL_USER,labuser,clienthost,49.37.181.25,LOGOFF BY CLEANUP,SUCCESS,2025-07-17T15:26:10Z,ocid1.user.oc1..aaaa...,alexk,alexxxx@example.com,OCI DBS23OCI,GLOBAL_USER,labuser,clienthost,49.37.181.25,COMMIT,SUCCESS,2025-07-17T15:15:02Z,ocid1.user.oc1..aaaa...,alexk,alexxxxxx@example.com,OCI -
Creare un parser delimitato per il file CSV di audit.
Creeremo un parser che converte ogni riga CSV in campi di log strutturati, OCI Logging Analytics può filtrare, arricchire e visualizzare.
-
Andare a OCI Console, andare a Observability & Management, Logging Analytics, Amministrazione, Parser, Crea parser e immettere le informazioni necessarie come mostrato nell'immagine seguente.

-
Fare clic su Campi e mappare la colonna intestazione al nome dei campi di OCI Logging Analytics.
Per ogni colonna CSV, selezionare un campo esistente o creare un campo definito dall'utente (UDF) se non esiste alcun campo adatto. Utilizzare l'icona + per creare in base alle proprie esigenze.

-
Fare clic su Test parser e attenersi alla procedura riportata di seguito.
-
Passare a Test parser.
-
Assicurarsi che l'analisi delle linee campione sia riuscita. La griglia di anteprima deve mostrare ogni colonna mappata al campo selezionato.
-
Verificare che la colonna Indicatore orario venga risolta correttamente (nessun errore di analisi; data/fuso orario corretti).
-
Fare clic su Crea parser per salvare.

-
-
-
Creare un'origine file che utilizzi il parser.
Un'origine indica a OCI Logging Analytics dove trovare i log (modelli di percorso, metodo di raccolta) e come interpretarli (parser e metadati).
Andare a OCI Console, andare a Osservabilità e gestione, Logging Analytics, Amministrazione, Origini, Crea origine e immettere le informazioni necessarie come mostrato nell'immagine riportata di seguito, quindi fare clic su Crea origine.

-
Associa l'origine alle entità e al gruppo di log.
Le associazioni attivano il processo di raccolta: l'origine è collegata a entità specifiche (ad esempio gli host) e i log raccolti vengono instradati a un gruppo di log designato.
-
Andare a OCI Console, andare a Logging Analytics, Amministrazione e fare clic su Origini.

-
Nella pagina dei dettagli Origine, selezionare Compartimento contenente le entità che si desidera associare.
-
Fare clic su Entità non associate per elencare le entità del tipo corretto disponibili o idonee per l'associazione.

-
Selezionare quella in Entità non associate e fare clic su Aggiungi associazione.
-
Selezionare un gruppo di file di log esistente, se disponibile. In questa esercitazione verrà creato il nuovo gruppo di log facendo clic su Crea gruppo di log.


-
Fare clic su Sottometti.

-
-
Una volta avviata l'inclusione, verificare che i record siano ricercabili e che i campi vengano popolati come previsto.

Visualizza Log Explorer:

Task 4: Esplora i log e crea un dashboard con tre widget
Utilizza OCI Logging Analytics per visualizzare i log di audit di Oracle Data Safe arricchiti con metadati di identità esterni. Crea un dashboard con Microsoft Azure User Footprint Pie Chart, OCI User Footprint Pie Chart e una vista dettagliata della tabella di audit.
-
Creazione del widget Grafico a torta impronte utente di Azure.
Eseguire la query Log Explorer seguente:
'Log Source' = Demo_AZ_OCI_DS_Source | where Source = AzureAD | stats count as Azure_Events by 'External User' | sort -Azure_Events
Fare clic su Azioni e fare clic su Salva per eseguire la ricerca come mostrato nell'immagine seguente e aggiungerla al dashboard. Se il dashboard non esiste, creare un nuovo dashboard.

-
Crea widget Grafico a torta impronta utente OCI.
Eseguire la query Log Explorer seguente:
'Log Source' = Demo_AZ_OCI_DS_Source | where Source = OCI | stats count as OCI_Events by 'External User' | sort -OCI_Events
Fare clic su Azioni, Salva la ricerca come mostrato nell'immagine seguente e aggiungerla al dashboard esistente.

-
Vista Crea tabella audit dettagliata.
Eseguire la query Log Explorer seguente:
'Log Source' = Demo_AZ_OCI_DS_Source | fields 'Target Name', db_user, OS_user, Client, 'Host IP Address (Client)', Event, Operation_status, externalId, 'External User', mail, Source, -Entity, -'Entity Type', -'Host Name (Server)', -'Problem Priority', -Label, -'Log Source'
Fare clic su Azioni, Salva la ricerca come mostrato nell'immagine seguente e aggiungerla al dashboard esistente.

-
Visualizza il dashboard salvato.
Andare a OCI Console, andare a Logging Analytics, Amministrazione e Dashboard e fare clic sul dashboard creato (
Demo_AZ_OCI_DS_DashBoard).
Collegamenti correlati
Conferme
-
Autori - Alex Kovuru (Principal Cloud Architect), Anuj Tripathi (Principal Solution Architect)
-
Contributore - Indiradarshni Balasundaram (ingegnere senior cloud)
Altre risorse di apprendimento
Esplora altri laboratori su docs.oracle.com/learn o accedi a più contenuti di formazione gratuiti sul canale YouTube di Oracle Learning. Inoltre, visitare education.oracle.com/learning-explorer per diventare Oracle Learning Explorer.
Per la documentazione del prodotto, visitare Oracle Help Center.
Integrate Oracle Data Safe and OCI Logging Analytics with OCI IAM and Microsoft Entra ID
G39710-02
Copyright ©2025, Oracle and/or its affiliates.