收集 Microsoft Dynamics 365 使用者活動記錄

支援的國家/地區:

本文說明如何使用 Microsoft Azure Blob 儲存體 V2 設定 Google SecOps 資訊提供,以收集 Microsoft Dynamics 365 使用者活動記錄。

Microsoft Dynamics 365 是雲端式商務應用程式平台,結合了 CRM 和 ERP 功能。使用者活動記錄會擷取使用者在 Dynamics 365 應用程式中執行的動作和事件,包括實體作業、資料存取權和管理活動。Dynamics 365 建構於 Microsoft Dataverse,透過 Microsoft Purview 統一稽核記錄提供全方位的稽核記錄。

事前準備

請確認您已完成下列事前準備事項:

  • Google SecOps 執行個體
  • 具備下列權限的 Microsoft Azure 入口網站特殊存取權:
    • 建立儲存空間帳戶
    • 設定 Azure Synapse Link for Dataverse
    • 管理存取金鑰
  • 包含 Dynamics 365 的 Microsoft 365 訂閱方案
  • Dynamics 365 環境中的系統管理員安全角色
  • Power Platform 管理中心的全球管理員或 Power Platform 管理員存取權

啟用 Dataverse 稽核功能

匯出 Dynamics 365 使用者活動記錄前,請先在 Power Platform 管理中心啟用稽核功能。

  1. 登入 Power Platform 系統管理中心
  2. 在導覽窗格中,選取「環境」
  3. 選取包含 Dynamics 365 部署作業的環境。
  4. 在指令列中選取「設定」
  5. 展開「稽核和記錄」,然後選取「稽核設定」
  6. 在「稽核」下方,啟用下列選項:
    • 開始稽核:啟用環境稽核功能。
    • 記錄存取權:追蹤使用者登入情形。
    • 讀取記錄:擷取大部分的使用者活動和事件。
  7. 根據需求設定稽核記錄的資料保留政策
  8. 選取「儲存」即可套用變更。

啟用資料表層級稽核

  1. 登入 Power Apps,然後選取環境。
  2. 在指令列中,依序選取「設定」>「進階設定」
  3. 依序前往「設定」>「個人化」>「自訂系統」
  4. 在導覽窗格的「Components」下方,展開「Entities」並選取要稽核的實體 (例如「Account」)。
  5. 向下捲動至「資料服務」,然後勾選「稽核」核取方塊。
  6. 在「稽核」下方,啟用下列選項:
    • 單一記錄稽核。開啟時記錄。
    • 稽核多筆記錄。記錄開啟頁面中顯示的所有記錄。
  7. 依序選取「儲存」和「發布」
  8. 針對要稽核的每個表格,重複執行步驟 4 到 7。

詳情請參閱「Microsoft Dataverse 和模型導向應用程式活動記錄」。

設定 Azure 儲存體帳戶

建立儲存空間帳戶

  1. Azure 入口網站中,搜尋「儲存體帳戶」
  2. 點選「+ 建立」
  3. 請提供下列設定詳細資料:

    設定
    訂閱項目 選取 Azure 訂閱項目
    資源群組 選取現有資料庫或建立新資料庫
    儲存體帳戶名稱 輸入不重複的名稱 (例如 secopsd365logs)
    區域 選取與 Dataverse 環境相同的區域
    效能 標準 (建議)
    備援功能 GRS (異地備援儲存空間) 或 LRS (本機備援儲存空間)
  4. 選取「進階」分頁標籤,然後啟用「階層命名空間」選項。

  5. 按一下「Review + create」

  6. 查看帳戶總覽,然後按一下「建立」

  7. 等待部署作業完成。

取得儲存空間帳戶憑證

  1. 前往您剛建立的「儲存空間帳戶」
  2. 在左側導覽中,選取「Security + networking」(安全性 + 網路) 下方的「Access keys」(存取金鑰)
  3. 按一下「顯示金鑰」
  4. 複製並儲存下列項目,以供日後使用:
    • 儲存體帳戶名稱secopsd365logs
    • 金鑰 1金鑰 2:共用存取金鑰 (採用 Base64 編碼的 512 位元隨機字串)

取得 Blob 服務端點

  1. 在同一個儲存空間帳戶中,選取左側導覽列的「Endpoints」(端點)
  2. 複製並儲存「Blob service」端點網址。
    • 範例:https://secopsd365logs.blob.core.windows.net/

授予儲存空間帳戶權限

將權限授予要設定 Azure Synapse Link 的 Power Platform 管理員:

  1. 在「儲存空間帳戶」中,選取左窗格中的「存取控管 (IAM)」
  2. 依序點選「+ 新增」>「新增角色指派」。
  3. 將下列角色指派給 Power Platform 管理員:
    • 儲存空間 Blob 資料參與者
    • 儲存空間 Blob 資料擁有者

Azure Synapse Link for Dataverse 會將 Dataverse 稽核資料表匯出至 Azure Data Lake Storage Gen2,與 Azure Blob Storage V2 資訊提供相容。

建立 Azure Synapse 工作區

  1. Azure 入口網站中,搜尋 Synapse Analytics
  2. 點選「+ 建立」
  3. 請提供下列設定詳細資料:
    • 訂閱項目:選取您建立儲存空間帳戶的訂閱項目。
    • 資源群組:選取與儲存空間帳戶相同的資源群組。
    • 工作區名稱:輸入專屬名稱 (例如 synapse-d365-secops)。
    • 「區域」:選取與 Dataverse 環境相同的區域。
    • 「Storage account name」(儲存空間帳戶名稱):選取您先前建立的儲存空間帳戶 (secopsd365logs)。
    • 檔案系統名稱:按一下「建立新檔案」,然後輸入名稱 (例如 d365-audit)。
  4. 依序點選「檢閱 + 建立」和「建立」
  5. 等待部署作業完成。

建立 Apache Spark 集區

  1. Azure 入口網站中,前往您建立的 Synapse 工作區。
  2. 按一下「+ New Apache Spark pool」(+ 新增 Apache Spark 集區)。
  3. 請提供下列設定詳細資料:
    • Apache Spark 集區名稱:輸入名稱 (例如 sparkpoold365)。
    • 節點數量:輸入 5
  4. 選取「其他設定」分頁,然後在「閒置分鐘數」中輸入 5
  5. 依序點選「檢閱 + 建立」和「建立」

將 Dataverse 稽核資料表連結至 Synapse 工作區

  1. 登入 Power Apps,然後選取包含 Dynamics 365 部署作業的環境。
  2. 在左側導覽窗格中,選取「Azure Synapse Link」。如果看不到這個項目,請依序選取「更多」> 探索所有,然後找出「Azure Synapse Link」
  3. 按一下「新增連結」
  4. 在「新增連結」頁面中:
    • 選取「Connect to your Azure Synapse Analytics workspace」(連結至 Azure Synapse Analytics 工作區) 選項。
    • 訂閱項目:選取 Azure 訂閱項目。
    • 資源群組:選取包含 Synapse 工作區的資源群組。
    • 儲存空間帳戶:選取儲存空間帳戶 (secopsd365logs)。
    • 選取「Use Spark pool for Delta Lake data conversion job」(使用 Spark 集區執行 Delta Lake 資料轉換工作) 選項
    • Spark 集區:選取您建立的 Spark 集區 (sparkpoold365)。
    • 儲存空間帳戶:選取相同的儲存空間帳戶。
  5. 點選「下一步」
  6. 展開「進階」分頁,然後在「時間間隔」欄位中輸入 480 分鐘。
  7. 在資料表清單下方,選取「稽核」和「使用者」資料表。
  8. 按一下 [儲存]

詳情請參閱「使用 Azure Synapse Link 和 Power BI 存取稽核資料」。

在 Google SecOps 中設定資訊提供,擷取 Microsoft Dynamics 365 使用者活動記錄

  1. 依序前往「SIEM 設定」>「動態饋給」
  2. 按一下「新增動態消息」
  3. 在下一個頁面中,按一下「設定單一動態饋給」
  4. 在「動態饋給名稱」欄位中輸入動態饋給名稱 (例如 Microsoft Dynamics 365 User Activity)。
  5. 選取「Microsoft Azure Blob Storage V2」做為「來源類型」
  6. 選取「Microsoft Dynamics 365」做為「記錄類型」
  7. 點選「下一步」
  8. 指定下列輸入參數的值:

    • Azure URI:輸入 Blob 服務端點網址和容器路徑:
    https://secopsd365logs.blob.core.windows.net/d365-audit/
    

    更改下列內容:

    • secopsd365logs:您的 Azure 儲存體帳戶名稱。
    • d365-audit:在 Synapse 工作區中設定的檔案系統 (容器) 名稱。
    • 來源刪除選項:根據偏好設定選取刪除選項:
    • 永不:轉移後一律不刪除任何檔案。
    • 刪除已轉移的檔案:成功轉移檔案後刪除檔案。
    • 刪除已轉移的檔案和空白目錄:成功轉移後刪除檔案和空白目錄。
    • 檔案存在時間上限:包含在過去天數內修改的檔案 (預設為 180 天)
    • 共用金鑰:輸入您先前從儲存空間帳戶擷取的共用金鑰值 (存取金鑰)
    • 資產命名空間資產命名空間
    • 擷取標籤:要套用至這個動態饋給事件的標籤
  9. 點選「下一步」

  10. 在「Finalize」(完成) 畫面中檢查新的動態饋給設定,然後按一下「Submit」(提交)

設定 Azure 儲存空間防火牆 (如已啟用)

如果 Azure 儲存體帳戶使用防火牆,您必須新增 Google SecOps IP 範圍。

  1. Azure 入口網站中,前往「儲存體帳戶」
  2. 選取「Security + networking」(安全性 + 網路) 下方的「Networking」(網路)
  3. 在「防火牆和虛擬網路」下方,選取「從所選虛擬網路和 IP 位址啟用」
  4. 在「防火牆」部分的「位址範圍」下方,按一下「+ 新增 IP 範圍」
  5. 以 CIDR 標記法新增每個 Google SecOps IP 範圍。

    如要取得目前的 IP 範圍,請按照下列步驟操作:

  6. 按一下 [儲存]

UDM 對應表

記錄欄位 UDM 對應 邏輯
BuildNumber about.labels 如果 about_BuildNumber 不為空白,則與鍵「BuildNumber」和值合併
RECORD_IDENTIFIER additional.fields 如果不是空白,則會與從各個欄位建立的標籤合併
LastProcessedChange_DateTime additional.fields
DataLakeModified_DateTime additional.fields
Application_Object_Server_node additional.fields
ClientType additional.fields
LogoutDateTime additional.fields
LOGOUTDATETIMETZID additional.fields
TerminatedOk additional.fields
類型 additional.fields
Alive additional.fields
PARTITION additional.fields
has_user metadata.event_type 如果 has_user 為 true,則設為「GENERIC_EVENT」,然後設為「USER_UNCATEGORIZED」;如果 has_principal 為 true,則設為「STATUS_UPDATE」
has_principal metadata.event_type
RECVERSION metadata.product_version 如果值不是空白,則直接複製
SessionId network.session_id 如果值不是空白,則直接複製
LOG_SEQUENCE_NUMBER security_result.detection_fields 如果 LOG_SEQUENCE_NUMBER 不為空白,則將 LOG_SEQUENCE_NUMBER_label 與鍵「LOG_SEQUENCE_NUMBER」和值合併
UserId target.user.userid 如果值不是空白,則直接複製
時間戳記 時間戳記 如果不是空白,則使用符合 ISO8601 或 RFC 3339 格式的日期比對進行剖析
metadata.product_name metadata.product_name 設為「MICROSOFT_DYNAMICS_365」
metadata.vendor_name metadata.vendor_name 設為「MICROSOFT_DYNAMICS_365」

變更記錄

查看這個剖析器的變更記錄

還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求答案。