將 Oracle Data Safe 和 OCI 日誌記錄分析與 OCI IAM 和 Microsoft Entra ID 整合
簡介
保護混合雲和多雲區域中的 Oracle 資料庫需要完整檢視使用者活動,尤其是在 Microsoft Azure Entra ID 和 Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) 外部管理認證時。本教學課程概述將 Oracle Data Safe 稽核日誌與這些集中式身分識別提供者的豐富 OCI IAM 描述資料整合的重要整合。這樣一來,無論認證來源為何,都能為所有資料庫互動提供無與倫比的端對端追蹤功能,從而增強安全性並簡化存取管理。
為什麼我們需要這個?
傳統資料庫稽核日誌通常缺乏追蹤動作回溯至特定雲端使用者所需的重要身分識別相關資訊環境,尤其是透過外部身分識別提供者進行認證時。此整合可直接解決此差距。透過將 Oracle Data Safe 和 OCI Logging Analytics 與 Microsoft Azure Entra ID 和 OCI IAM 的 OCI IAM 描述資料關聯,組織可以提高稽核透明度、改善混合系統的使用者可追溯性,以及集中監控存取活動。這種統一的身分識別感知記錄功能對於強化安全態勢、簡化稽核調查,以及滿足現代企業環境中的嚴格規範需求至關重要。
適用對象
- OCI IAM 專業人員、資料庫管理員、安全性分析師和稽核人員。
目標
- 將 Oracle Data Safe 稽核日誌與 OCI IAM 和 Microsoft Entra ID 描述資料整合,然後在 OCI Logging Analytics 中將此強化的資料視覺化。此流程最終增強了稽核透明度,並實現跨雲端和資料庫環境的詳細端對端使用者可追蹤性。
必備條件
-
OCI 租用戶: OCI Logging Analytics、Oracle Data Safe、OCI Compute 及 OCI IAM 服務的存取和權限。
-
Microsoft Entra ID 租用戶:管理存取。
-
OCI IAM 存取:必要的組態權限。
-
必要工具: OCI CLI、Azure CLI、
jq、csvkit、pandas和 LibreOffice (或類似版本)。 -
日誌記錄分析設定: 確定已啟用 OCI 日誌記錄分析,並且已安裝並設定管理代理程式。請參閱下列主題以取得詳細資訊:
-
OCI Compute 執行處理: 已啟用管理代理程式 Plugin。
工作 1:為所有資料庫的外部認證使用者建立自訂 Oracle Data Safe 稽核報表
-
登入 OCI 主控台,瀏覽至 Oracle 資料庫、資料安全 – 活動稽核,然後按一下相關資源下的稽核報表 – 所有活動。

-
按一下管理資料欄,然後選取必要的資料欄。

-
在建立自訂報表中,輸入顯示名稱、描述和區間詳細資訊。

-
在管理報表排程中,從排程頻率下拉式清單中選取每日,然後按一下儲存排程。

工作 2:設定用於資料收集和關聯的 OCI Compute 執行處理
在這項任務中,我們將設定您的 OCI Compute 執行處理,從 Microsoft Entra ID 和 OCI IAM 擷取使用者識別詳細資訊,以及處理 Oracle Data Safe 稽核報表。最終目標是將稽核日誌中的外部使用者 ID 與增強的識別描述資料建立關聯,以提供完整的使用者足跡。
注意:請從此處下載下列命令檔:
scripts。
-
擷取 Microsoft Entra ID 使用者。
執行下列命令,以使用 Microsoft Graph API (
fetch_azure_ad_users.sh) 從 Microsoft Entra ID 擷取使用者資訊。./fetch_azure_ad_users.sh輸出:
[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.csv輸出:
[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" -
擷取 OCI IAM 使用者。
請使用 OCI CLI (
oci_user_list_to_csv.sh) 執行下列命令,從 OCI IAM 取得使用者詳細資訊。./oci_user_list_to_csv.sh head -3 oci_iam_users.csv輸出:
[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:~]$ -
合併使用者資料。
將從兩個來源擷取的使用者資料合併成單一的標準化 CSV 檔案 (
merge_users_csv.sh)。./merge_users_csv.sh head -3 merged_users.csv輸出:
[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:~]$ -
處理資料安全稽核報表。
從 Oracle Data Safe (
process_data_safe_report.sh) 下載、轉換、清除及標準化最新的稽核報表。./process_data_safe_report.sh head -3 cleaned_audit_records_final.csv輸出:
[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:~]$ -
關聯資料
將外部使用者 ID 與合併的 OCI IAM 使用者資料 (
DataSafe_External_Users_Audit_Dashboard.sh) 建立關聯,以強化 Oracle Data Safe 稽核日誌。./DataSafe_External_Users_Audit_Dashboard.sh head -3 DataSafe_External_Users_Audit_Dashboard.csv輸出:
[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:~]$您將使用一組提供的 Shell 命令檔來自動化這些處理作業。請確定這些命令檔已下載至您的 OCI Compute 執行處理。為了確保每日更新儀表板,請將這些命令檔排定在 OCI Compute 執行處理上透過 cron 工作執行。此工作應排定在自訂 Oracle Data Safe 報表產生時間之後執行。
工作 3:設定 OCI 日誌記錄分析
-
準備主機以將日誌傳輸至 OCI 日誌記錄分析。
執行下列命令,確定 oracle-cloud-agent 可以讀取日誌。
sudo -u oracle-cloud-agent /bin/bash -c "head -3 /home/oracle/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,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 -
建立稽核 CSV 的分隔剖析器。
我們會建立一個將每個 CSV 行轉換為結構化日誌欄位的剖析器,OCI 日誌記錄分析可以進行篩選、強化及視覺化。
-
前往 OCI 主控台,瀏覽至 Observability & Management 、 Logging Analytics 、管理、剖析器、建立剖析器,然後輸入必要的資訊,如下圖所示。

-
按一下欄位,然後將表頭資料欄對應至 OCI 日誌記錄分析欄位名稱。
針對每個 CSV 資料欄,選取現有欄位,或建立使用者定義的欄位 (UDF) (如果沒有適當的欄位)。可視需要使用 + 圖示來建立。

-
按一下剖析器測試,然後依照下列步驟進行:
-
切換至剖析器測試。
-
請確定已順利剖析範例行。預覽方格應顯示對應至所選欄位的每個資料欄。
-
確認時戳資料欄的解析正確 (沒有剖析錯誤;正確的日期 / 時區)。
-
按一下建立剖析器以儲存。

-
-
-
建立使用剖析器的檔案來源。
來源告訴 OCI 日誌記錄分析在何處尋找日誌 (路徑樣式、收集方法) 以及如何解譯日誌 (剖析器和描述資料)。
前往 OCI 主控台,瀏覽至 Observability & Management 、 Logging Analytics 、管理、來源、建立來源,然後輸入所需的資訊,如下圖所示,然後按一下建立來源。

-
將來源與實體和日誌群組建立關聯。
關聯會啟用收集處理作業:來源會連結至特定實體 (例如主機),而收集的日誌會遞送至指定的日誌群組。
-
前往 OCI 主控台,瀏覽至 Logging Analytics 、管理,然後按一下來源。

-
在來源詳細資訊頁面中,選取包含要關聯之實體的區間。
-
按一下未關聯的實體,即可列出可關聯或可關聯的正確類型實體。

-
在未關聯的實體中選取一個實體,然後按一下新增關聯。
-
選取現有的日誌群組 (如果有的話)。在本教學課程中,我們將按一下建立日誌群組來建立新的日誌群組。


-
按一下送出。

-
-
攝取開始後,請確認記錄可供搜尋,並如預期般植入欄位。

檢視日誌總管:

工作 4:瀏覽日誌並建立含有三個小工具的儀表板
利用 OCI 日誌記錄分析將使用外部識別描述資料強化的 Oracle Data Safe 稽核日誌視覺化。使用 Microsoft Azure 使用者足跡圓餅圖、OCI 使用者足跡圓餅圖以及詳細稽核表格檢視建置儀表板。
-
建立 Azure 使用者足跡圓餅圖小工具。
執行下列日誌總管查詢:
'Log Source' = Demo_AZ_OCI_DS_Source | where Source = AzureAD | stats count as Azure_Events by 'External User' | sort -Azure_Events
按一下動作並儲存搜尋 (如下圖所示),然後新增至儀表板 (如果儀表板不存在,則建立新儀表板 )。

-
建立 OCI 使用者足跡圓餅圖小工具。
執行下列日誌總管查詢:
'Log Source' = Demo_AZ_OCI_DS_Source | where Source = OCI | stats count as OCI_Events by 'External User' | sort -OCI_Events
按一下動作,儲存搜尋,如下圖所示,並新增至現有儀表板。

-
建立詳細稽核表格檢視。
執行下列日誌總管查詢:
'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'
按一下動作,儲存搜尋,如下圖所示,並新增至現有儀表板。

-
檢視儲存的儀表板。
前往 OCI 主控台,瀏覽至 Logging Analytics 、管理、儀表板,然後按一下建立的儀表板 (
Demo_AZ_OCI_DS_DashBoard)。
相關連結
確認
-
Authors - Alex Kovuru (首席雲端架構師),Anuj Tripathi (首席解決方案架構師)
-
貢獻者 - Indiradarshni Balasundaram (資深雲端工程師)
其他學習資源
在 docs.oracle.com/learn 上探索其他實驗室,或在 Oracle Learning YouTube 頻道上存取更多免費學習內容。此外,請造訪 education.oracle.com/learning-explorer 以成為 Oracle Learning Explorer。
如需產品文件,請造訪 Oracle Help Center 。
Integrate Oracle Data Safe and OCI Logging Analytics with OCI IAM and Microsoft Entra ID
G39714-02
Copyright ©2025, Oracle and/or its affiliates.