整合 Google 表單與 Google SecOps
本文說明如何將 Google 表單與 Google Security Operations (Google SecOps) 整合。
整合版本:1.0
事前準備
在 Google SecOps 中設定 Google 表單整合功能之前,請先完成下列必要步驟:
建立服務帳戶
如要建立服務帳戶,請完成下列步驟:
前往 Google Cloud 控制台的「憑證」頁面。
選取「add_2」add_2「建立憑證」>「服務帳戶」。
在「服務帳戶詳細資料」下方,於「服務帳戶名稱」欄位中輸入名稱。
選用:編輯服務帳戶 ID。
按一下 [完成]。
建立 JSON 金鑰
如要建立 JSON 金鑰,請完成下列步驟:
- 選取服務帳戶,然後前往「金鑰」。
- 依序點選「新增金鑰」>「建立新的金鑰」。
- 金鑰類型請選取「JSON」,然後按一下「建立」。系統會顯示「已將私密金鑰儲存至您的電腦中」對話方塊,並將私密金鑰副本下載到您的電腦。
為專案啟用必要的 API
在 Google Cloud 控制台中,前往「API 和服務」。
點選「啟用 API 和服務」。
為專案啟用下列 API:
- Admin SDK API
- Google Forms API
為整合項目建立自訂角色
- 在 Google 管理控制台中,依序前往「帳戶」>「管理員角色」。
- 按一下 [建立新角色]。
- 為新的自訂角色命名,然後按一下「繼續」。
- 在「選取權限」頁面中,前往「Admin API」權限部分。
在「Admin API privileges」(Admin API 權限) 下方,選取下列權限:
- 機構單位
- 使用者
- 網路論壇
按一下「繼續」。
如要建立新的自訂角色,請按一下「建立角色」。
為使用者指派自訂角色
- 如要建立新使用者,請前往「目錄」>「使用者」頁面。
- 新增與服務帳戶相關聯的使用者。
- 開啟新建立的使用者設定。系統會開啟使用者帳戶分頁。
- 按一下 [管理員角色與權限]。
- 按一下「編輯」。
- 選取您建立的自訂角色。
- 針對所選角色,將切換鈕切換為「已指派」。
將全網域授權委派給服務帳戶
- 在網域的 Google 管理控制台中,依序前往「主選單」 「安全性」「存取權與資料控管」「API 控制項」。
- 在「全網域委派」窗格中,選取「管理全網域委派設定」。
- 按一下「新增」。
- 在「用戶端 ID」欄位中,輸入從先前服務帳戶建立步驟取得的用戶端 ID。
在「OAuth 範圍」欄位中,輸入下列以半形逗號分隔的範圍清單,這些範圍是應用程式的必要範圍:
https://mail.google.com/, https://www.googleapis.com/auth/admin.directory.customer.readonly, https://www.googleapis.com/auth/admin.directory.domain.readonly, https://www.googleapis.com/auth/admin.directory.group, https://www.googleapis.com/auth/admin.directory.group.member, https://www.googleapis.com/auth/admin.directory.orgunit, https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly, https://www.googleapis.com/auth/admin.directory.user, https://www.googleapis.com/auth/admin.directory.user.alias, https://www.googleapis.com/auth/apps.groups.settings, https://www.googleapis.com/auth/cloud-platform, https://www.googleapis.com/auth/forms.body.readonly, https://www.googleapis.com/auth/forms.responses.readonly
按一下 [授權]。
整合參數
整合 Google 表單時,需要下列參數:
參數 | 說明 |
---|---|
Delegated Email |
必要 用於模擬和存取控制的電子郵件地址。 |
Service Account JSON |
必要 服務帳戶金鑰 JSON 檔案的內容。 |
Verify SSL |
必要 如果選取這個選項,整合服務會驗證連線至 Google 表單的 SSL 憑證是否有效。 (此為預設選項)。 |
如需在 Google SecOps 中設定整合功能的操作說明,請參閱「設定整合功能」。
如有需要,您之後可以變更。設定整合執行個體後,您就可以在劇本中使用該執行個體。如要進一步瞭解如何設定及支援多個執行個體,請參閱「支援多個執行個體」。
動作
如要進一步瞭解動作,請參閱「從工作區回覆待處理動作」和「執行手動動作」。
乒乓
使用 Ping 動作測試與 Google 表單的連線。
這項操作不會在 Google SecOps 實體上執行。
動作輸入內容
無
動作輸出內容
「Ping」動作會提供下列輸出內容:
動作輸出類型 | 可用性 |
---|---|
案件總覽附件 | 無法使用 |
案件總覽連結 | 無法使用 |
案件訊息牆表格 | 無法使用 |
補充資訊表格 | 無法使用 |
JSON 結果 | 無法使用 |
輸出訊息 | 可用 |
指令碼結果 | 可用 |
輸出訊息
「Ping」動作可能會傳回下列輸出訊息:
輸出訊息 | 訊息說明 |
---|---|
Successfully connected to the Google Forms server with the
provided connection parameters! |
動作成功。 |
Failed to connect to the Google Forms server! Error is
ERROR_REASON |
動作失敗。 檢查伺服器的連線、輸入參數或憑證。 |
指令碼結果
下表列出使用「Ping」動作時,指令碼結果輸出的值:
指令碼結果名稱 | 值 |
---|---|
is_success |
True 或False |
連接器
如需在 Google SecOps 中設定連接器的詳細操作說明,請參閱「擷取資料 (連接器)」。
Google 表單 - 回覆連接器
使用 Google 表單 - 回覆連接器從 Google 表單提取回覆。
Google 表單 - 回覆連接器需要下列參數:
參數 | 說明 |
---|---|
Product Field Name |
必要 儲存產品名稱的欄位名稱。 預設值為 |
Event Field Name |
必要 用於判斷事件名稱 (子類型) 的欄位名稱。 預設值為 |
Environment Field Name |
選填
儲存環境名稱的欄位名稱。 如果找不到環境欄位,系統會將環境設為預設環境。 預設值為 |
Environment Regex Pattern |
選填
要在 使用預設值 如果規則運算式模式為空值或空白,或環境值為空值,最終環境結果就是預設環境。 |
Script Timeout (Seconds) |
必要 Python 處理程序執行目前指令碼的逾時限制 (以秒為單位)。 預設值為 300 秒。 |
Delegated Email |
必要 用於模擬和存取控制的電子郵件地址。 |
Service Account JSON |
必要 服務帳戶金鑰 JSON 檔案的內容。 |
Form IDs To Track |
必要 以半形逗號分隔的 Google 表單 ID 清單,用來追蹤回覆。 如要擷取表單的專屬 ID,請在表單編輯器中開啟表單 (不是公開回應連結),然後複製瀏覽器列中顯示完整地址時, |
Alert Severity |
選用 要指派給連接器根據擷取的 Google 表單回覆建立的所有快訊的嚴重程度。 可能的值如下:
預設值為 |
Max Hours Backwards |
必要 在第一次連接器疊代前,要從中擷取回應的小時數。這個參數適用於首次啟用連接器後的初始連接器疊代,或過期連接器時間戳記的回溯值。 預設值為 1 小時。 |
Max Responses To Fetch |
必要 每次連接器疊代要處理的回應數量上限。 最多 100 個。 |
Disable Overflow |
選用 如果選取這個選項,連接器會在建立快訊時忽略 Google SecOps 溢位機制。 預設為未選取。 |
Verify SSL |
必要 如果選取這個選項,整合服務會驗證連線至 Google 表單的 SSL 憑證是否有效。 預設為未選取。 |
Proxy Server Address |
選用 要使用的 Proxy 伺服器位址。 |
Proxy Username |
選用 用於驗證的 Proxy 使用者名稱。 |
Proxy Password |
選用 用於驗證的 Proxy 密碼。 |
連接器規則
Google 表單 - 回覆連接器支援 Proxy。
連接器事件
以下範例顯示 Google Forms - Responses Connector 產生的 Google SecOps 事件 JSON 輸出內容:
{
"responseId": "RESPONSE_ID",
"createTime": "2024-09-05T11:43:13.892Z",
"lastSubmittedTime": "2024-09-05T11:43:13.892123Z",
"event_type": "Question",
"questionId": "78099fe3",
"textAnswers": {
"answers": [
{
"value": "Option 1"
}
]
}
}
還有其他問題嗎?向社群成員和 Google SecOps 專業人員尋求答案。