將 Akeyless 與 Google SecOps 整合

本文說明如何將 Akeyless 與 Google Security Operations 整合。

用途

Akeyless 整合功能會使用 Google SecOps 功能,支援下列用途:

  • 同步整合憑證:使用 Akeyless 中儲存的密鑰,自動更新 Google SecOps 整合執行個體、連接器和工作中的憑證和敏感參數。

  • 在應對手冊中擷取密鑰:在執行應對手冊期間,視需要從 Akeyless 擷取靜態密鑰或特定密鑰版本,以便向外部服務進行驗證。

  • 自動輪換憑證:將參數對應至 latest 密鑰版本,即可將輪換後的 API 金鑰、權杖和密碼,從 Akeyless 傳播至 Google SecOps 整合項目、連接器和工作,避免因憑證過期而中斷。

  • 使用版本固定功能控管憑證更新:將整合、連接器或工作參數固定至 Akeyless 中的特定密鑰版本,以便驗證憑證變更,或在需要時復原至先前的版本。

  • 消除工作流程中的硬式編碼密鑰:將機密憑證集中儲存在 Akeyless,而不是直接嵌入應對手冊輸入內容或自訂指令碼,減少 SOC 工作流程中的憑證外洩。

事前準備

在 Google SecOps 平台設定整合功能前,請確認您具備下列項目:

  • API 金鑰憑證:用於驗證的 Akeyless 存取 ID 和存取金鑰。

    詳情請參閱「無金鑰 API 金鑰驗證」。

  • 存取權限:授予驗證方法的讀取權限,以便 Google SecOps 擷取密鑰。

    詳情請參閱「無金鑰角色式存取控管 (RBAC)」。

  • 網路連線:從 Google SecOps 執行個體或遠端代理,連至 Akeyless API Gateway 網址的網路存取權。

整合參數

Akeyless 整合需要下列參數:

參數 說明
API Gateway URL

選填。

Akeyless API Gateway 的網址。

預設值為 https://api.akeyless.io。

Access ID

必填。

Akeyless API 金鑰驗證方式的存取 ID。

Access Key

必填。

與 Akeyless 存取 ID 相關聯的存取金鑰。

Verify SSL

必填。

如果選取這個選項,整合服務會在連線至 Akeyless 伺服器時驗證 SSL 憑證。

(預設為啟用)。

如要瞭解如何在 Google SecOps 中設定整合功能,請參閱「設定整合功能」。

如有需要,您可以在後續階段進行變更。設定整合執行個體後,您就可以在教戰手冊中使用該執行個體。如要進一步瞭解如何設定及支援多個執行個體,請參閱「支援多個執行個體」。

動作

如要進一步瞭解動作,請參閱「 在『您的工作區』中回應待處理動作」和「執行手動動作」。

取得密鑰值

使用「Get Secret Value」(取得密鑰值) 動作,從 Akeyless 擷取密鑰值,以供劇本使用。

這項動作不會在 Google SecOps 實體上執行。

動作輸入內容

「Get Secret Value」動作需要下列參數:

參數 說明
Secret Name

必填。

要從 Akeyless 擷取的密鑰名稱或路徑。

如要擷取最新版本,請輸入 SECRET_NAME 或 SECRET_NAME:latest。

如要擷取特定版本,請輸入 SECRET_NAME:VERSION_NUMBER,其中 VERSION_NUMBER 是正整數 (例如 /prod/api-key:2)。

動作輸出內容

「Get Secret Value」動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件總覽表格 無法使用
補充資訊表格 無法使用
JSON 結果 可用
輸出訊息 可用
指令碼執行結果 可用
JSON 結果

以下範例顯示使用「Get Secret Value」動作時,收到的 JSON 結果輸出內容:

{
  "secret_name": "/secops/integrations/example-api-key",
  "version": "latest",
  "secret_value": "EXAMPLE_SECRET_VALUE"
}
輸出訊息

在「案件總覽」中,「取得密鑰值」動作會提供下列輸出訊息:

輸出訊息 訊息說明
Successfully retrieved secret 'SECRET_NAME' (version: 'SECRET_VERSION') from Akeyless Security. 動作已成功執行。
Failed to retrieve secret 'SECRET_NAME' (version: 'SECRET_VERSION') from Akeyless Security. Reason: ERROR_REASON

動作失敗。

確認 Akeyless 中有密鑰路徑和版本,且您的驗證憑證具備密鑰的讀取權限。

Error executing action 'Get Secret Value'. Reason: Invalid credential mapping format for value 'SECRET_NAME'. Expected format: 'secret_name' or 'secret_name:version' (where version is a positive integer or 'latest').

操作失敗。

確認 Secret Name 參數的格式。

指令碼結果

下表列出使用「Get Secret Value」動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

Ping

使用 Ping 動作,測試與 Akeyless 伺服器的連線能力。

這項動作不會在 Google SecOps 實體上執行。

動作輸入內容

無

動作輸出內容

「Ping」動作會提供下列輸出內容:

動作輸出類型 可用性
案件總覽附件 無法使用
案件總覽連結 無法使用
案件總覽表格 無法使用
補充資訊表格 無法使用
JSON 結果 無法使用
輸出訊息 可用
指令碼執行結果 可用
輸出訊息

在案件牆上,Ping 動作會提供下列輸出訊息:

輸出訊息 訊息說明
Successfully connected to the Akeyless server with the provided connection parameters! 動作已成功執行。
Failed to connect to the Akeyless server! Reason: ERROR_REASON

動作失敗。

驗證 API Gateway URL、Access ID、Access Key 和 SSL 設定。

指令碼結果

下表列出使用 Ping 動作時,指令碼結果輸出的值:

指令碼結果名稱 值
is_success true或false

工作

如要進一步瞭解工作,請參閱「 設定新工作」和「 進階排程」。

同步整合憑證工作

使用同步整合憑證工作,自動將儲存在 Akeyless 的密鑰,與設定的 Google SecOps 整合執行個體、連接器和工作同步。

工作參數

同步整合憑證工作需要下列參數:

參數 說明
API Gateway URL

選填。

Akeyless API Gateway 的網址。

預設值為 https://api.akeyless.io。

Access ID

必填。

Akeyless API 金鑰驗證方式的存取 ID。

Access Key

必填。

與 Akeyless 存取 ID 相關聯的存取金鑰。

Verify SSL

必填。

如果選取這個選項,整合服務會在連線至 Akeyless 伺服器時驗證 SSL 憑證。

(預設為啟用)。

Environment Name

必填。

設定目標整合執行個體、連接器和工作的 Google SecOps 環境。

預設值為 Default Environment。

Credential Mapping

必填。

JSON 或 YAML 字典,可將目標整合執行個體、連接器和工作,對應至含有其參數值的 Akeyless 密鑰。

在 integration_instances、connectors 或 jobs 鍵下方,加入至少一個對應參數。

如要查看範例,請參閱「Credential Mapping 範例」。

預設值為 {"integration_instances": {"Integration_Instance_Name": {"Parameter_Name": "Secret_Name"}}}。

範例 Credential Mapping

以下範例說明如何對應 Credential Mapping 參數中整合執行個體、連接器和工作的參數:

{
  "integration_instances": {
    "VirusTotal_Prod": {
      "API Key": "/secops/prod/virustotal-api-key"
    },
    "Jira_Instance_1": {
      "API Token": "/secops/prod/jira-api-token:2"
    }
  },
  "connectors": {
    "CrowdStrike Falcon Alerts Connector": {
      "Client Secret": "/secops/prod/crowdstrike-client-secret:latest"
    }
  },
  "jobs": {
    "ServiceNow Sync Closed Cases": {
      "Password": "/secops/prod/servicenow-password:1"
    }
  }
}

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