使用 SNC 部署適用於 SAP 的 Microsoft Sentinel 資料連接器

本文說明如何使用安全網路通訊,透過安全連線部署適用於 SAP 的 Microsoft Sentinel 資料連接器,以擷取 NetWeaver/ABAP 記錄。

SAP 資料連接器代理程式通常會使用 RFC 連線連接到 SAP ABAP 伺服器,並以使用者的使用者名稱和密碼進行驗證。

不過,某些環境可能需要透過加密通道進行連線,而用戶端憑證則用於驗證。 在這些情況下,您可以針對此目的使用 SAP 安全網路通訊,且必須依照本文所述採取適當的步驟。

先決條件

  • SAP 密碼編譯程式庫下載 SAP 密碼編譯程式庫
  • 網路連線能力。 SNC 會使用連接埠 48xx (其中 xx 是 SAP 執行個體號碼) 連線至 ABAP 伺服器。
  • 設定為支援 SNC 驗證的 SAP 伺服器。
  • 用於使用者驗證的自我簽署或企業 CA 發行的憑證。

注意

本指南是設定 SNC 的範例案例。 在生產環境中,強烈建議諮詢 SAP 系統管理員以設計部署計畫。

設定您的 SNC 部署

匯出伺服器憑證

  1. 登入您的 SAP 用戶端並執行 STRUST 交易。

  2. 瀏覽並展開左側窗格中的 [SNC SAPCryptolib] 區段。

  3. 選取系統,然後選取 [主旨] 欄位的值。

    伺服器憑證資訊將會顯示在頁面底部的 [憑證] 區段中。

  4. 選取頁面底部的 [匯出憑證] 按鈕。

    螢幕擷取畫面顯示如何匯出伺服器憑證。

  5. 在 [匯出憑證] 對話方塊中,選取 [Base64] 作為檔案格式,接著選取 [檔案路徑] 欄位旁邊的雙方塊圖示,然後選取要匯出憑證的檔案名稱,最後選取綠色核取記號以匯出憑證。

匯入您的憑證

本節說明如何匯入憑證,使其受到 ABAP 伺服器信任。 請務必瞭解哪些憑證需要匯入 SAP 系統。 在任何情況下,只需要將憑證的公開金鑰匯入 SAP 系統。

  • 如果使用者憑證是自我簽署的:匯入使用者憑證。

  • 如果使用者憑證是由企業 CA 所發行:匯入企業 CA 憑證。 如果使用根和次級 CA 伺服器,請匯入根和次級 CA 公開憑證。

  1. 執行 STRUST 交易。

  2. 選取 [顯示]<-[變更]>

  3. 選取頁面底部的 [匯入憑證]。

  4. 在 [匯入憑證] 對話方塊中,選取 [檔案路徑] 欄位旁的雙方塊圖示,然後找出憑證。

    1. 找出包含憑證的檔案 (公開金鑰),然後選取綠色核取記號以匯入憑證。

      憑證資訊會顯示在 [憑證] 區段中。

    2. 選取 [新增至憑證清單]。

      憑證會出現在 [憑證清單] 區域中。

建立憑證與使用者帳戶的關聯

  1. 執行 SM30 交易。

  2. 在 [資料表/檢視] 欄位中,輸入 USRACLEXT,然後選取 [維護]。

  3. 檢閱輸出,識別目標使用者是否已經有相關聯的 SNC 名稱。 如果沒有,請選取 [新增項目]。

    螢幕擷取畫面顯示如何在 USRACLEXT 資料表中建立新項目。

  4. 在 [使用者] 欄位中輸入目標使用者的使用者名稱,並在 [SNC 名稱] 欄位中輸入前面加上 p: 的使用者憑證主體名稱,然後選取 [儲存]。

    螢幕擷取畫面顯示如何在 USRACLEXT 資料表中建立新使用者。

使用憑證授與登入權限

  1. 執行 SM30 交易。

  2. 在 [資料表/檢視] 欄位中,輸入 VSNCSYSACL,然後選取 [維護]。

  3. 確認資料表在出現的參考提示中是跨用戶端。

  4. 在 [ACL 項目類型] 欄位的 [決定工作區域:項目] 中輸入類型 E,然後選取綠色核取記號。

  5. 檢閱輸出,識別目標使用者是否已經有相關聯的 SNC 名稱。 如果沒有,請選取 [新增項目]。

    螢幕擷取畫面顯示如何在 VSNCSYSACL 資料表中建立新項目。

  6. 使用 p: 前置詞輸入您的系統識別碼和使用者憑證主體名稱。

    螢幕擷取畫面顯示如何在 VSNCSYSACL 資料表中建立新使用者。

  7. 確定已 [啟動 RFC 的項目],以及 [啟動憑證的項目] 核取方塊已標示,然後選取 [儲存]。

將 ABAP 服務提供者的使用者對應至外部使用者識別碼

  1. 執行 SM30 交易。

  2. 在 [ 資料表/檢視] 欄位中,輸入 VUSREXTID,然後選取 [ 維護]。

  3. 在 [ 決定工作區域:輸入] 頁面中,選取 [DN 識別碼類型] 作為 [工作區域]。

  4. 輸入下列詳細資料:

    • 外部識別碼CN=SentinelC=US
    • Seq. No000
    • 使用者SENTINEL
  5. 選取 [儲存 ] 並 輸入

    設定 SAP VUSREXTID 資料表的螢幕擷取畫面。

設定容器

注意

如果您透過 UI 設定 SAP 資料連線器代理程式容器,請勿執行本節中的步驟。 請改為在 連接器頁面中 繼續設定連接器。

  1. libsapcrypto.sosapgenpse 檔案傳送至將建立容器的目標系統。

  2. 將用戶端憑證 (私人和公開金鑰) 傳送至將建立容器的目標系統。

    用戶端憑證和金鑰可以是 .p12、.pfx 或 Base-64 .crt 和 .key 格式。

  3. 將伺服器憑證 (僅限公開金鑰) 傳送至將建立容器的目標系統。

    伺服器憑證必須是 Base-64 .crt 格式。

  4. 如果用戶端憑證是由企業憑證授權單位單位所發行,請將發行 CA 和根 CA 憑證轉移至將建立容器的目標系統。

  5. 從 Microsoft Sentinel GitHub 存放庫擷取啟動指令碼:

    wget https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/Solutions/SAP/sapcon-sentinel-kickstart.sh
    
  6. 變更指令碼的權限,使其成為可執行檔:

    chmod +x ./sapcon-sentinel-kickstart.sh
    
  7. 執行指令碼,並指定下列基底參數:

    ./sapcon-sentinel-kickstart.sh \
    --use-snc \
    --cryptolib <path to sapcryptolib.so> \
    --sapgenpse <path to sapgenpse> \
    --server-cert <path to server certificate public key> \
    

    如果用戶端憑證採用 .crt/.key 格式,請使用下列參數:

    --client-cert <path to client certificate public key> \
    --client-key <path to client certificate private key> \
    

    如果用戶端憑證採用 .pfx 或 .p12 格式:

    --client-pfx <pfx filename>
    --client-pfx-passwd <password>
    

    如果用戶端憑證是由企業 CA 所發行,請針對信任鏈結中的每個 CA 新增此參數:

    --cacert <path to ca certificate>
    

    例如:

    ./sapcon-sentinel-kickstart.sh \
    --use-snc \
    --cryptolib /home/azureuser/libsapcrypto.so \
    --sapgenpse /home/azureuser/sapgenpse \
    --client-cert /home/azureuser/client.crt \
    --client-key /home/azureuser/client.key \
    --cacert /home/azureuser/issuingca.crt
    --cacert /home/azureuser/rootca.crt
    --server-cert /home/azureuser/server.crt \
    

如需有關啟動指令碼中可用選項的其他資訊,請檢閱參考:啟動指令碼

下一步

深入瞭解適用于 SAP® 應用程式的 Microsoft Sentinel 解決方案:

疑難排解:

參考檔案:

如需詳細資訊,請參閱 Microsoft Sentinel 解決方案