部署 SAP 變更要求並設定授權

本文示範如何部署準備安裝 SAP 代理程式環境的 SAP 變更要求 (CR),使其可以正確地連線至 SAP 系統。

重要

  • 本文呈現部署相關 CR 的逐步指南。 推薦給可能不一定是 SAP 專家的 SOC 工程師或實作工具。
  • 熟悉 CR 部署程序的資深 SAP 系統管理員可能偏好直接從指南的 SAP 環境驗證步驟一節取得適當的 CR 並加以部署。 請注意,NPLK900271 CR 會部署範例角色,而系統管理員可能會偏好根據下方必要 ABAP 授權一節中的資訊來手動定義角色。

必要和選擇性 CR

本文討論下列 CR 的安裝:

CR 必要條件/選擇性 描述
NPLK900271 必要 此 CR 會建立並設定角色。 或者,您可以直接從檔案載入授權。 檢閱如何建立和設定角色
NPLK900201 或 NPLK900202 選擇性 從 SAP 擷取其他資訊。 您可以根據您的 SAP 版本選取其中一個 CR。

必要條件

  1. 開始部署程序之前,請確定您已複製 SAP 系統版本系統識別碼 (SID)系統號碼用戶端號碼IP 位址系統管理使用者名稱密碼的詳細資料。 針對下列範例,假設有下列詳細資料:

    • SAP 系統版本:SAP ABAP Platform 1909 Developer edition
    • SID:A4H
    • 系統號碼:00
    • 用戶端號碼:001
    • IP 位址:192.168.136.4
    • 系統管理員使用者:a4hadm,然而,SAP 系統的 SSH 連線是使用 root 使用者認證所建立。
  2. 檢閱 SAP 環境驗證步驟,以判斷要安裝的 CR。

  3. 如果您已安裝用來擷取其他資訊的 NPLK900202 選擇性 CR,請確定您已安裝相關 SAP 附註

部署里程碑

透過此系列文章追蹤 SAP 解決方案部署旅程:

  1. 部署概觀

  2. 部署必要條件

  3. 跨多個工作區使用解決方案 , (PREVIEW)

  4. 準備 SAP 環境 (「現在位置」)

  5. 設定稽核

  6. 從內容中樞部署解決方案內容

  7. 部署資料連線器代理程式

  8. 設定 SAP® 應用程式的 Microsoft Sentinel 解決方案

  9. 選用部署步驟

若要部署 CR,請遵循以下所述步驟。 下列步驟可能會根據 SAP 系統的版本而有所不同,因此應該只考慮示範用途。

部署 CR

注意

「強烈建議」由資深的 SAP 系統管理員執行 SAP CR 的部署。

設定檔案

  1. 使用 SSH 登入 SAP 系統。

  2. 將 CR 檔案傳輸至 SAP 系統。 深入瞭解此步驟中的 CR

    或者,您也可以直接從 SSH 提示將檔案下載至 SAP 系統。 使用下列命令:

    • 下載 NPLK900271 (必要)

      wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/CR/K900271.NPL
      wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/CR/R900271.NPL
      

      或者,您可以直接從檔案載入授權

    • 下載 NPLK900202 (選擇性)

      wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/CR/K900202.NPL
      wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/CR/R900202.NPL
      
    • 下載 NPLK900201 (選擇性)

      wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/CR/K900201.NPL
      wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/CR/R900201.NPL
      

    請注意,每個 CR 都是由兩個檔案所組成,一個開頭為 K,另一個開頭為 R。

  3. 將檔案的擁有權變更為使用者 <sid>adm 與群組 sapsys。 (以 SAP 系統識別碼代入 <sid>。)

    chown <sid>adm:sapsys *.NPL
    

    在我們的範例中:

    chown a4hadm:sapsys *.NPL
    
  4. 將 cofiles (開頭為 K) 複製到 /usr/sap/trans/cofiles 資料夾。 在複製時保留權限,搭配 -p 參數一起使用 cp 命令。

    cp -p K*.NPL /usr/sap/trans/cofiles/
    
  5. 將資料檔案 (開頭為 R) 複製到 /usr/sap/trans/data 資料夾。 在複製時保留權限,搭配 -p 參數一起使用 cp 命令。

    cp -p R*.NPL /usr/sap/trans/data/
    

匯入 CR

  1. 啟動 SAP Logon 應用程式並登入 SAP GUI 主控台。

  2. 執行 STMS_IMPORT 交易:

    SAP Easy Access 畫面的左上角欄位中鍵入 STMS_IMPORT,然後按 Enter 鍵。

    執行 STMS 匯入交易的螢幕擷取畫面。

  3. 在出現的 [Import Queue] \(匯入佇列\) 視窗中,選取 [More > Extras > Other Requests > Add] \(更多 > 額外項目 > 其他要求 > 新增\)。

    新增匯入佇列的螢幕擷取畫面。

  4. 在出現的 [Add Transport Requests to Import Queue] \(將傳輸要求新增至匯入佇列\) 快顯視窗中,選取 [Transp. Request] \(傳輸要求\) 欄位。

  5. [傳輸要求] 視窗隨即出現,並顯示可供部署的 CR 清單。 選取 CR,然後選取綠色核取記號按鈕。

  6. 返回 [Add Transport Requests to Import Queue] \(將傳輸要求新增至匯入佇列\) 視窗中,選取 [繼續] (綠色核取記號) 或按 Enter 鍵。

  7. 在 [Add Transport Request] \(新增傳輸要求\) 確認對話方塊中,選取 [是]。

  8. 如果您打算部署更多 CR,請針對剩餘的 CR 重複上述 5 個步驟中的程序。

  9. 在 [Import Queue] \(匯入佇列\) 視窗中,選取一次相關的傳輸要求,然後選取 F9選取/取消選取要求圖示。

  10. 若您有剩餘的傳輸要求要新增至部署,請重複步驟 9。

  11. 選取匯入要求圖示:

    匯入所有要求的螢幕擷取畫面。

  12. 在 [開始匯入] 視窗中,選取 [目標用戶端] 欄位。

  13. [Input Help..] \(輸入說明..\) 對話方塊隨即出現。 選取您要部署 CR 的用戶端數目 (範例中的 001),然後選取綠色核取記號以確認。

  14. 返回 [開始匯入] 視窗,選取 [選項] 索引標籤,並標記 [Ignore Invalid Component Version] \(忽略無效元件版本\) 核取方塊,然後選取綠色核取記號以確認。

    [開始匯入] 視窗的螢幕擷取畫面。

  15. 在 [開始匯入] 確認對話方塊中,選取 [是] 以確認匯入。

  16. 返回 [Import Queue] \(匯入佇列\) 視窗,選取 [重新整理],等到匯入作業完成且匯入佇列會顯示為空白。

  17. 若要檢閱匯入狀態,請在 [Import Queue] \(匯入佇列\) 視窗中選取 [More > Go To > Import History] \(更多 > 移至 > 匯入記錄\)。

    匯入記錄的螢幕擷取畫面。

  18. 如果您部署 NPLK900202 CR,則預期會顯示警告。 選取項目以確認顯示的警告類型為「資料表 <資料表名稱> 已啟用」。

    下列螢幕擷取畫面中的 CR 和版本可能會根據您的已安裝 CR 版本而變更。

    匯入狀態顯示的螢幕擷取畫面。

    匯入警告訊息顯示的螢幕擷取畫面。

設定 Sentinel 角色

部署 NPLK900271 CR 之後,系統會在 SAP 中建立 /MSFTSEN/SENTINEL_CONNECTOR 角色。 若手動建立角色,其可能會有不同的名稱。

在此顯示的範例中,我們將使用角色名稱 /MSFTSEN/SENTINEL_CONNECTOR

下一個步驟是產生供 Microsoft Sentinel 使用的使用中角色設定檔。

  1. 執行 PFCG 交易:

    SAP Easy Access 畫面的左上角欄位中鍵入 PFCG,然後按 Enter 鍵。

  2. 在 [Role Maintenance] \(角色維護\) 視窗的 [角色] 欄位中鍵入角色名稱 /MSFTSEN/SENTINEL_CONNECTOR,然後選取 [變更] 按鈕 (鉛筆)。

    選擇所要變更角色的螢幕擷取畫面。

  3. 在出現的 [變更角色] 視窗中,選取 [授權] 索引標籤。

  4. 在 [授權] 索引標籤中,選取 [Change Authorization Data] \(變更授權資料\)。

    變更授權資料的螢幕擷取畫面。

  5. 在 [資訊] 快顯視窗中,讀取訊息,然後選取綠色核取記號以確認。

  6. 在 [Change Role: Authorizations] \(變更角色:授權\) 視窗中,選取 [產生]。

    產生授權的螢幕擷取畫面。

    查看 [狀態] 欄位已從 [未變更] 變更為 [已產生]。

  7. 選取 [返回] (回到畫面頂端 SAP 標誌的左側)。

  8. 返回 [變更角色] 視窗中,確認 [授權] 索引標籤顯示綠色方塊,然後選取 [儲存]。

    儲存已變更角色的螢幕擷取畫面。

建立使用者

適用于 SAP® 應用程式的 Microsoft Sentinel 解決方案需要使用者帳戶才能連線到您的 SAP 系統。 使用下列指示來建立使用者帳戶,並將其指派給您在上一個步驟中建立的角色。

在此顯示的範例中,我們將使用角色名稱 /MSFTSEN/SENTINEL_CONNECTOR

  1. 執行 SU01 交易:

    SAP Easy Access 畫面的左上角欄位中鍵入 SU01,然後按 Enter 鍵。

  2. 在 [User Maintenance: Initial Screen] \(使用者維護:初始畫面\) 畫面的 [使用者] 欄位中鍵入新使用者的名稱,然後從按鈕列選取 [建立技術使用者]。

  3. 在 [Maintain Users] \(維護使用者\) 畫面的 [使用者類型] 下拉式清單中選取 [系統]。 在 [新密碼] 與 [確認密碼] 欄位中建立並輸入複雜的密碼,然後選取 [角色] 索引標籤。

  4. 在 [角色] 索引標籤的 [角色指派] 區段中,輸入角色的完整名稱 (範例中為 /MSFTSEN/SENTINEL_CONNECTOR),然後按 Enter

    Enter 鍵之後,請確認在 [角色指派] 區段的右側填入資料,例如變更開始日期

  5. 選取 [設定檔] 索引標籤,並確認角色的設定檔出現在 [Assigned Authorization Profiles] \(指派的授權設定檔\) 下,然後選取 [儲存]。

必要的 ABAP 授權

下列資料表列出確保 Microsoft Sentinel 的 SAP 資料連接器所使用帳戶可以正確擷取 SAP 記錄所需的 ABAP 授權。

必要的授權會依記錄類型列出。 只需要針對您規劃內嵌至 Microsoft Sentinel 的記錄類型而列出的授權。

提示

若要建立具有所有必要授權的角色,請在 SAP 系統上部署 SAP NPLK900271 CR,或從 MSFTSEN_SENTINEL_CONNECTOR_ROLE_V0.0.27.SAP 檔案載入角色授權。 此 CR 會建立 /MSFTSEN/SENTINEL_CONNECTOR 角色,該角色具有資料連接器運作的所有必要權限。 或者,您可藉由部署 NPLK900268 CR,或從 MSFTSEN_SENTINEL_AGENT_BASIC_ROLE_V0.0.1.SAP 檔案載入角色授權,以建立具有最低權限的角色。 此 CR 或授權檔案會建立 /MSFTSEN/SENTINEL_AGENT_BASIC 角色。 此角色具有資料連線器運作所需的最低必要權限。 請注意,如果您選擇部署此角色,則可能需要經常加以更新。

授權物件 欄位
所有記錄
S_RFC RFC_TYPE 函式模組
S_RFC RFC_NAME /OSP/SYSTEM_TIMEZONE
S_RFC RFC_NAME DDIF_FIELDINFO_GET
S_RFC RFC_NAME RFCPING
S_RFC RFC_NAME RFC_GET_FUNCTION_INTERFACE
S_RFC RFC_NAME RFC_READ_TABLE
S_RFC RFC_NAME RFC_SYSTEM_INFO
S_RFC RFC_NAME SUSR_USER_AUTH_FOR_OBJ_GET
S_RFC RFC_NAME TH_SERVER_LIST
S_RFC ACTVT 執行
S_TCODE TCD SM51
S_TABU_NAM ACTVT 顯示
S_TABU_NAM TABLE T000
選擇性 - 只有在實作 Sentinel 解決方案 CR 時
S_RFC RFC_NAME /MSFTSEN/*
ABAP 應用程式記錄檔
S_RFC RFC_NAME BAPI_XBP_APPL_LOG_CONTENT_GET
S_RFC RFC_NAME BAPI_XMI_LOGOFF
S_RFC RFC_NAME BAPI_XMI_LOGON
S_RFC RFC_NAME BAPI_XMI_SET_AUDITLEVEL
S_TABU_NAM TABLE BALHDR
S_XMI_PROD EXTCOMPANY Microsoft
S_XMI_PROD EXTPRODUCT Azure Sentinel
S_XMI_PROD INTERFACE XBP
S_APPL_LOG ALG_OBJECT *
S_APPL_LOG ALG_SUBOBJ *
S_APPL_LOG ACTVT 顯示
ABAP變更文件記錄檔
S_TABU_NAM TABLE CDHDR
S_TABU_NAM TABLE CDPOS
ABAP CR 記錄檔
S_RFC RFC_NAME CTS_API_READ_CHANGE_REQUEST
S_TABU_NAM TABLE E070
S_TRANSPRT TTYPE *
S_TRANSPRT ACTVT 顯示
ABAP DB 資料表資料記錄檔
S_TABU_NAM TABLE DBTABLOG
S_TABU_NAM TABLE SACF_ALERT
S_TABU_NAM TABLE SOUD
S_TABU_NAM TABLE USR41
S_TABU_NAM TABLE TMSQAFILTER
ABAP 工作記錄檔
S_RFC RFC_NAME BAPI_XBP_JOB_JOBLOG_READ
S_RFC RFC_NAME BAPI_XMI_LOGOFF
S_RFC RFC_NAME BAPI_XMI_LOGON
S_RFC RFC_NAME BAPI_XMI_SET_AUDITLEVEL
S_TABU_NAM TABLE TBTCO
S_XMI_PROD EXTCOMPANY Microsoft
S_XMI_PROD EXTPRODUCT Azure Sentinel
S_XMI_PROD INTERFACE XBP
ABAP 多工緩衝處理記錄
S_TABU_NAM TABLE TSP01
S_ADMI_FCD S_ADMI_FCD SPOS (使用交易 SP01 (所有系統))
ABAP 工作流程記錄檔
S_TABU_NAM TABLE SWWLOGHIST
S_TABU_NAM TABLE SWWWIHEAD
ABAP 安全性稽核記錄
S_RFC RFC_NAME BAPI_USER_GET_DETAIL
S_RFC RFC_NAME BAPI_XMI_LOGOFF
S_RFC RFC_NAME BAPI_XMI_LOGON
S_RFC RFC_NAME BAPI_XMI_SET_AUDITLEVEL
S_RFC RFC_NAME BAPI_SYSTEM_MTE_GETMLHIS
S_RFC RFC_NAME BAPI_SYSTEM_MTE_GETTREE
S_RFC RFC_NAME BAPI_SYSTEM_MTE_GETTIDBYNAME
S_RFC RFC_NAME BAPI_SYSTEM_MS_GETLIST
S_RFC RFC_NAME BAPI_SYSTEM_MON_GETLIST
S_RFC RFC_NAME BAPI_SYSTEM_MON_GETTREE
S_RFC RFC_NAME BAPI_SYSTEM_MTE_GETPERFCURVAL
S_RFC RFC_NAME BAPI_SYSTEM_MT_GETALERTDATA
S_RFC RFC_NAME BAPI_SYSTEM_ALERT_ACKNOWLEDGE
S_ADMI_FCD S_ADMI_FCD AUDD (基礎稽核顯示驗證)
S_SAL SAL_ACTVT SHOW_LOG (評估檔案型記錄檔)
S_USER_GRP CLASS SUPER
S_USER_GRP ACTVT 顯示
S_USER_GRP CLASS SUPER
S_USER_GRP ACTVT 鎖定
S_XMI_PROD EXTCOMPANY Microsoft
S_XMI_PROD EXTPRODUCT Azure Sentinel
S_XMI_PROD INTERFACE XAL
使用者資料
S_TABU_NAM TABLE ADCP
S_TABU_NAM TABLE ADR6
S_TABU_NAM TABLE AGR_1251
S_TABU_NAM TABLE AGR_AGRS
S_TABU_NAM TABLE AGR_DEFINE
S_TABU_NAM TABLE AGR_FLAGS
S_TABU_NAM TABLE AGR_PROF
S_TABU_NAM TABLE AGR_TCODES
S_TABU_NAM TABLE AGR_USERS
S_TABU_NAM TABLE DEVACCESS
S_TABU_NAM TABLE USER_ADDR
S_TABU_NAM TABLE USGRP_USER
S_TABU_NAM TABLE USR01
S_TABU_NAM TABLE USR02
S_TABU_NAM TABLE USR05
S_TABU_NAM TABLE USR21
S_TABU_NAM TABLE USRSTAMP
S_TABU_NAM TABLE UST04
設定歷程記錄
S_TABU_NAM TABLE PAHI
SNC 資料
S_TABU_NAM TABLE SNCSYSACL
S_TABU_NAM TABLE USRACL

如有需要,您可以 移除安裝在 ABAP 系統上的使用者角色和選擇性 CR

確認 PAHI 資料表 (系統、資料庫和 SAP 參數的歷程記錄,) 定期更新

SAP PAHI 資料表包含 SAP 系統、資料庫和 SAP 參數歷程記錄的資料。 在某些情況下,SAP 應用程式的 Microsoft Sentinel 解決方案無法定期監視 SAP® PAHI 資料表,因為遺漏或錯誤設定 (請參閱 SAP 附注 ,並詳細說明此問題) 。 請務必更新 PAHI 資料表,並經常監視它,讓 SAP® 應用程式的 Microsoft Sentinel 解決方案可以警示每天隨時可能發生的可疑動作。

深入瞭解適用于 SAP® 應用程式的 Microsoft Sentinel 解決方案如何監視 安全性參數的可疑設定變更

注意

為了獲得最佳結果,請在電腦的 systemconfig.ini 檔案中,于 區段下 [ABAP Table Selector] 啟用 PAHI_FULLPAHI_INCREMENTAL 參數。

若要確認 PAHI 資料表會定期更新

  1. 檢查 000 用戶端中的 DDIC 使用者是否 SAP_COLLECTOR_FOR_PERFMONITOR 根據 RSCOLL00 程式排程並每小時執行作業。
  2. 檢查 TCOLL 資料表中是否 RSHOSTPH 維護 、 RSSTATPHRSDB_PAR 報表名稱。
    • RSHOSTPH 報告:讀取作業系統核心參數,並將此資料儲存在 PAHI 資料表中。
    • RSSTATPH 報表:讀取 SAP 設定檔參數,並將此資料儲存在 PAHI 資料表中。
    • RSDB_PAR 報表:讀取資料庫參數,並將其儲存在 PAHI 資料表中。

如果作業存在且已正確設定,則不需要進一步的步驟。

如果作業不存在

  1. 在 000 用戶端中登入您的 SAP 系統。

  2. 執行 SM36 交易。

  3. [作業名稱] 底下,輸入 SAP_COLLECTOR_FOR_PERFMONITOR

    新增用來監視 SAP PAHI 資料表之作業的螢幕擷取畫面。

  4. 選取 [步驟 ] 並填入此資訊:

    • [使用者]底下,輸入 DDIC
    • [ABAP 程式名稱] 下,輸入 RSCOLL00
  5. 儲存組態。

    定義用來監視 SAP PAHI 資料表之作業的使用者螢幕擷取畫面。

  6. 選取 F3 返回上一個畫面。

  7. 選取 [開始條件 ] 以定義開始條件。

  8. 選取 [立即] 並選取 [定期作業 ] 核取方塊。

    定義用來以定期方式監視 SAP PAHI 資料表之作業的螢幕擷取畫面。

  9. 選取 [期間] 值 ,然後選取 [ 每小時]。

  10. 選取對話方塊內的 [ 儲存 ],然後選取底部的 [ 儲存 ]。

    定義用來以每小時方式監視 SAP PAHI 資料表之作業的螢幕擷取畫面。

  11. 若要釋放作業,請選取頂端的 [ 儲存 ]。

    發行用來以每小時方式監視 SAP PAHI 資料表之作業的螢幕擷取畫面。

後續步驟

您現在已完整備妥 SAP 環境。 已部署必要的 CR、佈建角色與設定檔,並已建立使用者帳戶及指派適當的角色設定檔。

現在您已準備好啟用和設定 Microsoft Sentinel 的 SAP 稽核。