建立自訂整合項目

支援的國家/地區:

本文說明如何在整合式開發環境 (IDE) 中建立自訂整合,並使用與商業整合相同的結構。您可以在 Google Security Operations Marketplace 中,為各種環境尋找及設定自訂整合。接著,您就能在應對手冊、手動動作和遠端代理程式中使用這些動作。系統也支援匯入及匯出功能,與其他 IDE 項目類似。

在 IDE 中建立自訂整合項目

您可以為 Armis 產品建立自訂整合,並建立管理員和 Ping 動作。本程序假設您瞭解 Python 和物件導向程式設計。

使用案例:建構自訂 Armis 整合

如要在 IDE 中建立自訂整合,請按照下列步驟操作:

  1. 在主選單中,依序前往「回應」>「IDE」
  2. 按一下「Create New Item」(建立新項目),然後選取「Integration」(整合)
  3. 輸入名稱並按一下 [建立]

整合項目現在會列出「設定」 選項,表示這是自訂整合項目。

依序點選「設定」 「設定」,即可顯示整合設定,您可以在其中定義圖示、說明、Python 依附元件和整合參數。

建立自訂管理員

管理員是第三方工具 API 的包裝函式。雖然這並非必要,但如果整合項目會與外部工具互動,我們建議您使用這些方法。管理員不應從 SDK 匯入。建立後,將其匯入連接器、動作和工作。

如要建立自訂管理員,請按照下列步驟操作:

  1. 在 IDE 中,按一下「Create New Item」(建立新項目),然後選取「Manager」(管理員)
  2. 選取「Armis」整合服務,然後輸入管理員名稱。
  3. 編輯並執行下列指令碼:
import requests


class ArmisManager:
   def init(self, api_root, api_token):
       self.api_root = api_root
       self.api_token - api_token
       self.session = requests.session()
       self.session.headers = {"Accept": "application/json"}


   def auth(self):
       endpoint = "{}/api/vi/access_token/*"
       params = {"secret_key" : self.api_token}
       response = self.session.post(endpoint.format(self.api_root), params=params)
       self.validate_response(response)
       access_token = response.json()["data"]["access_token"]
       self.session.headers.update({"Authorization": access_token})
       return True


   def get_device_by_ip(self, device_ip):
       endpoint = "{}/api/vi/devices/"
       params = {"ip": device_ip}
       response = self.session.get(endpoint.format(self.api_root), params=params)
       self.validate_response(response)
       return response.json()["data"]["data"]


   @staticmethod
   def validate_response(res, error_msg="An error occurred"):
       """Validate a response


       :param res: (requests. Response) The response to validate
       :param error_msg: (str) The error message to display
       """
       try:
           res.raise_for_status()
       except requests.HTTPError as error:
           raise Exception("(error_msg): (error) (text)".format(
               error_msg=error_msg,
               error=error,
               text=error.response.content
           ))

參數、Google SecOps Marketplace 設定和 Ping 動作

整合設定中定義的參數會顯示在 Google SecOps Marketplace 設定中。參數包括:

  • API 根目錄:您要連線的服務基準網址。
  • API 密鑰:用於向服務驗證應用程式的機密金鑰。
  • 「驗證 SSL」核取方塊:啟用後,系統會驗證連線至 Armis 伺服器的 SSL 憑證是否有效。
  • 「遠端執行」核取方塊:這項設定可決定程式碼或工作是在遠端伺服器上執行,還是在本機執行。啟用這項選項後,系統會將必要的指令和資料傳送至專用伺服器進行處理。

如要更新參數,請按照下列步驟操作:

  1. 請輸入正確的憑證。
  2. 依序按一下「儲存」>「測試」

如果缺少「Ping」動作,「測試」按鈕會失敗,並顯示紅色「X」

實作 Ping 動作

Ping 動作的邏輯與驗證成功類似。

如要實作 Ping 動作,請按照下列步驟操作:

  1. 在 IDE 中,於名為 Ping 的 Armis 整合中建立新的「動作」
  2. 使用 ArmisManager auth 方法驗證。

啟用整合功能

如要啟用整合功能,請按照下列步驟操作:

  1. 在「回應」> IDE 中,將「啟用/停用」切換鈕設為「開啟」
  2. 按一下 [儲存]。如果看到綠色切換按鈕,即代表操作正確。系統會將 Marketplace 的憑證傳遞至 ArmisManager。如果 auth 完成時沒有錯誤,「測試」按鈕會顯示綠色勾號。

使用 extract_configuration_param 方法從整合設定匯入參數。或者,您可以使用 extract_action_param 在動作本身中定義參數。不過,Ping 動作一律應使用設定參數,因為這些參數會經過 Marketplace 測試。

查看自訂整合項目

前往 Google SecOps Marketplace,搜尋您建立的自訂整合服務。如果未在初始設定期間建立圖片,系統會為其指派預設的自訂圖片。請注意,Google SecOps Marketplace 更新不會覆寫或刪除任何自訂整合項目。

在 IDE 中匯出及匯入

請執行下列其中一項動作:

  • 如要匯入整合,請按照下列步驟操作:
    1. 上傳資料夾結構正確的 ZIP 檔案,整合功能就會顯示在 IDE 和 Google SecOps Marketplace 中。
    2. 按一下 [匯入]。整合項目會同時顯示在 IDE 和 Marketplace 中。
    3. 系統會產生 ZIP 檔案,內含定義、指令碼和設定。系統不會自動加入「管理員」資料夾。
  • 如要匯出整合,請按照下列步驟操作:
    • 按一下「匯出」即可下載檔案包。

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