遷移前驗證指南

支援的國家/地區:

本文將逐步說明如何有系統地診斷問題,以便在 SOAR 遷移作業前,驗證 Google Security Operations 執行個體和驗證設定。本指南著重於用於使用者驗證和授權的 SAML 標準。

驗證 Chronicle API 設定

如要檢查 Google Cloud 專案中的 Chronicle API 設定是否正確,請按照下列步驟操作:

  1. 登入 Google Cloud 控制台,然後從頂端導覽列的 Google Cloud 「專案」清單中選取正確的專案。
  2. 開啟「導覽選單」 (≡),依序前往「API 和服務」>「已啟用的 API 和服務」
  3. 前往「已啟用的 API 和服務」清單,找出 Chronicle API
  4. 如果列出該 API:表示 API 已啟用。

    如果未列出:按一下頂端的「+ 啟用 API 和服務」,搜尋 Chronicle API,然後按一下「啟用」

如要確認服務帳戶是否已建立,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「IAM」頁面。
  2. 顯示隱藏帳戶 (重要步驟):請務必選取篩選列右側的方塊,也就是「包含 Google 提供的角色授予項目」
  3. 搜尋代理程式:在篩選列中輸入 chronicle。您要尋找符合以下特定模式的電子郵件地址: service-[PROJECT_NUMBER]@gcp-sa-chronicle.iam.gserviceaccount.com
  4. 確認權限:確認服務帳戶具備「Chronicle 服務代理」角色。如果找不到該角色,請依序點選「編輯」「編輯」,然後重新新增。

驗證工作流程架構

瞭解要求流程是找出任何失敗點的關鍵。下圖說明成功登入的循序路徑。

驗證工作流程架構

逐步疑難排解程序

如要有效診斷及追蹤 SAML 驗證程序,可以使用下列各節列出的網頁工具。

雖然 Google 不會推薦任何特定產品,但據瞭解,下列工具可協助排解程序問題:

第 1 階段:準備環境

開始前,請先執行下列步驟,確保瀏覽器環境已準備好擷取網路流量:

  1. 開啟新的空白瀏覽器分頁。
  2. 開啟「開發人員工具」(按下 F12 鍵或 Ctrl + Shift + I 鍵 (Windows /Linux) 或 Cmd + Option + I 鍵 (macOS)),然後前往「Network」分頁。
  3. 選取「保留記錄」方塊,確保在重新導向期間不會遺失任何資料。

    保留記錄

  4. 前往 Google SecOps 環境網址,啟動登入流程。完成適用於 SOAR 獨立客戶的遷移階段 1 步驟 5 中的 Google SecOps 設定後,您會收到這組網址的電子郵件。電子郵件主旨為「YourGoogle SecOps instance is ready」。

階段 2:驗證傳送至 IdP 的 SAML 要求

這個步驟會驗證 Google Cloud 傳送給您識別資訊提供者 (IDP) 的初始訊息。

  1. 找出要求:在「網路」分頁的篩選器列中,搜尋 saml

    找出要求

  2. 擷取資料:選取要求,然後按一下「酬載」分頁標籤。找出標示為 SAMLRequest 的查詢字串參數。

    擷取資料

  3. 解碼:複製要求值,並貼到 SAML 驗證 工具 (samltool.io) 中解碼。

    Decode

  4. 驗證:

    • 檢查「要求目的地」
    • 確認這個網址與 IDP 內的設定相符。

階段 3:驗證 IDP 的 SAML 回應

這個步驟會驗證 IDP 在驗證後傳回的屬性。 Google Cloud

  1. 找出回應:在「網路」分頁的篩選器列中,搜尋 signin-callback

    找出回覆

  2. 擷取資料:選取要求,然後按一下「酬載」分頁標籤。找出 SAMLResponse 資料。

    找出 SAML 回應資料

  3. 解碼:複製回應值,並貼到 SAML 驗證工具中。

  4. 驗證:

    • 查看傳回的聲明 (屬性),例如 groupsfirst namelast nameemail
    • 重要:請確保這些屬性與 Google Cloud中「工作團隊集區」設定的屬性相符。
    • 確認嘗試登入的特定使用者值是否正確。

      工作團隊集區設定

下圖顯示屬性對應:

attribute-mapping

圖片中的對應關係如下:

  • google.subject = assertion.subject
  • attribute.last_name = assertion.attributes.last_name[0]
  • attribute.user_email = assertion.attributes.user_email[0]
  • attribute.first_name = assertion.attributes.first_name[0]
  • google.groups = assertion.attributes.groups

左側部分一律相同,這是 Google 語法。右側則根據 SAML 回應中顯示的聲明屬性鍵。

[0] 對於所述特定屬性 (last_nameuser_emailfirst_name) 至關重要,但與 subjectgroups 無關。

階段 4:驗證 Google SecOps 驗證

這個步驟會驗證 Google Cloud 是否正在驗證使用者登入 Google SecOps SOAR。

  1. 在使用者瀏覽器中找出權杖:在「網路」分頁的篩選器列中,搜尋端點 auth/siem

    在使用者瀏覽器中找出權杖

  2. 擷取資料:選取要求,然後查看「酬載」分頁標籤。找出 jwt 字串。

  3. 解碼:複製 JWT 字串,然後貼到 JWT 檢查工具 (jwt.io)。

    複製並貼上 JWT 字串

  4. 驗證:

    • 比較 given_namefamily_nameemailidpgroups 的已解碼聲明。
    • 比對確認:這些值必須與第 3 階段 (SAML 回應) 驗證的屬性完全相符
    • 如果值相符但您仍無法存取,請檢查 IAM 中的角色指派。請務必使用正確的主體格式,為身分設定 (Google 受管理帳戶的員工身分聯盟或 Cloud Identity) 中的所有使用者指派其中一個 Chronicle 預先定義角色。

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