整合 Cloud Asset Inventory 與 Google SecOps

本文說明如何將 Cloud Asset Inventory 與 Google Security Operations 整合。

用途

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

  • 擴充 Google Cloud 資源:使用完整資源名稱,自動擷取雲端資源的詳細中繼資料,為安全性警示提供背景資訊。

  • 擷取資源快照:取得資源設定和狀態的時間點檢視畫面,協助進行鑑識調查和變更分析。

  • 稽核服務帳戶權限:列出與服務帳戶相關聯的角色和專屬權限,找出權限過高的身分,並維持最小權限原則。

  • 盤點多雲端資產:存取Google Cloud 和連結外部環境的資源詳細資料,集中查看調查中的資產。

事前準備

在 Google SecOps 中設定 Cloud Asset Inventory 整合之前,請先完成下列必要步驟:

  1. 建立服務帳戶。

  2. 建立自訂 IAM 角色。

  3. 將必要角色授予服務帳戶。

  4. 選擇並設定下列其中一種驗證方式:

    • 方法 1:Workload Identity (建議):這個方法會使用服務帳戶模擬功能,產生短期臨時存取權杖,因此不需要儲存任何密鑰。

    • 方法 2:服務帳戶 JSON 金鑰:這個方法仰賴靜態、長期有效的密鑰檔案。只有在環境不支援 Workload Identity 時,才應使用這個方法。

建立服務帳戶

如要建立服務帳戶,請完成下列步驟:

  1. 前往 Google Cloud 控制台的「Credentials」(憑證)。

    前往「憑證」

  2. 在「建立憑證」選單中,選取「服務帳戶」。

  3. 在「Service account name」(服務帳戶名稱) 欄位中輸入名稱,然後點選「Create and continue」(建立並繼續)。

  4. 依序點選 「Continue」(繼續) >「Done」(完成),略過選用的角色指派和主體存取權畫面。

  5. 複製服務帳戶電子郵件地址,以便在設定步驟中使用。

建立自訂 IAM 角色

如要為整合項目提供必要的搜尋功能,請建立自訂角色:

  1. 在 Google Cloud 控制台,依序前往 「IAM & Admin」(IAM 與管理) >「Roles」(角色)。

    前往「Roles」(角色)

  2. 按一下「Create role」(建立角色),然後提供「Title」(標題) (例如「SecOps Asset Searcher」) 和專屬「ID」。

  3. 將「Role launch stage」(角色推出階段) 設為「General Availability」(正式發布)。

  4. 按一下「新增權限」,然後新增 cloudasset.assets.searchAllResources。

  5. 點選「建立」。

將角色授予服務帳戶

如要允許整合服務存取資源,請將下列角色授予服務帳戶:

  1. 在 Google Cloud 控制台,依序前往 「IAM & Admin」(IAM 與管理) >「IAM」。

  2. 找出服務帳戶,然後按一下「edit」(編輯)「Edit principal」(編輯主體)。

  3. 按一下「Add another role」(新增其他角色),然後選取下列項目:

    • 上一步建立的自訂 IAM 角色。

    • 雲端資產檢視者。

    • 服務使用情形消費者 (僅在使用Quota Project ID時需要)。

  4. 按一下 [儲存]。

設定 Workload Identity 憑證

請選擇這個方法或 JSON 金鑰方法,驗證整合。Workload Identity 是建議採用的做法,安全性也較高,因為這項功能會使用服務帳戶模擬功能,產生短期臨時存取權杖,因此不必儲存或輪替長期密鑰。

找出專屬執行個體身分

如要使用 Workload Identity 進行驗證,您必須授予 Google SecOps 執行個體權限,允許其模擬服務帳戶。這樣一來,執行個體就能安全存取 Google Cloud 資源。

  1. 在 Google SecOps 中,依序前往 「Content Hub」 >「Response Integrations」。

  2. 選取「Cloud Asset Inventory」整合,然後在 Workload Identity Email 中輸入服務帳戶電子郵件地址。

  3. 依序點選「儲存」 > 「測試」。測試預計會失敗。

  4. 按一下「Test」(測試) 右側的 close_small,然後在錯誤訊息中搜尋以 gke-init-python@... 或 soar-python@... 開頭的身分電子郵件。

  5. 複製這個專屬電子郵件地址。

在 Google Cloud中授權執行個體身分

取得 Google SecOps 執行個體的專屬身分後,您必須授權該執行個體存取Google Cloud 資源。這個步驟會啟用服務帳戶模擬功能,讓平台產生短期權杖,並代表您執行操作,不需使用靜態金鑰。

  1. 在 Google Cloud 控制台,依序前往 「IAM & Admin」(IAM 與管理) >「Service Accounts」(服務帳戶)。

    前往「Service Accounts」(服務帳戶)

  2. 選取目標服務帳戶,然後依序前往 「Permissions」(權限) >「Grant Access」(授予存取權)。

  3. 將不重複的電子郵件地址貼到「New principals」(新增主體) 欄位,並指派「Service Account Token Creator」(服務帳戶權杖建立者) 角色 (roles/iam.serviceAccountTokenCreator)。

授予配額專案存取權

使用 Workload Identity 驗證時,您必須在整合設定中指定Quota Project ID,以便追蹤 API 使用情形和帳單。

如要授權,您必須在指定的配額專案中,將下列角色授予服務帳戶:

  1. 在 Google Cloud 控制台,依序前往「IAM & Admin」>「IAM」,然後選取專案。

    前往「IAM」(身分與存取權管理) 頁面

  2. 在主體清單中找出服務帳戶,然後按一下該帳戶的「edit」(編輯) (編輯主體)。

  3. 按一下「Add another role」(新增其他角色),然後選取「Service Usage Consumer」(服務使用情形消費者) 角色 (roles/serviceusage.serviceUsageConsumer)。

  4. 按一下 [儲存]。

設定 JSON 金鑰

請選擇這個方法或 Workload Identity 方法,驗證整合。只有在環境不支援 Workload Identity 時,才應使用 JSON 金鑰方法。建議您採用 Workload Identity,這種做法更安全。這個方法仰賴靜態、長期有效的密鑰檔案,需要手動管理及輪替。

請按照下列程序產生 JSON 金鑰檔案,用於驗證整合:

  1. 在 Google Cloud 控制台中,依序前往 「IAM & Admin」(IAM 與管理) >「Service Accounts」(服務帳戶),然後選取您建立的服務帳戶 。

    前往「Service Accounts」(服務帳戶)

  2. 前往「金鑰」分頁。

  3. 依序點選「新增金鑰」>「建立新的金鑰」。

  4. 選取「JSON」做為金鑰類型,然後按一下「建立」。JSON 檔案會下載到您的電腦。

  5. 複製這個檔案的完整內容,並在整合設定期間貼到 User's Service Account。

整合參數

Cloud Asset Inventory 整合功能需要下列參數:

參數 說明
API Root 必要

Cloud Asset Inventory 執行個體的 API 根目錄。

預設值為 https://cloudasset.googleapis.com。

Organization ID 選用

要在 Cloud Asset Inventory 整合中使用的組織 ID。

Project ID 選用

要用於 Cloud Asset Inventory 整合的專案 ID。如未提供值,整合會從 User's Service Account 參數提供的 JSON 檔案內容中擷取專案 ID。

User's Service Account 必要

服務帳戶 JSON 金鑰檔案的完整內容。

Quota Project ID 選用

用於 Google Cloud API 和計費的 Google Cloud 專案 ID。您必須將 Service Usage Consumer 角色授予服務帳戶,才能使用這項參數。

如未提供值,整合功能會從 Google Cloud 服務帳戶擷取專案 ID。

Workload Identity Email 選用。

用於 Workload Identity 模擬的服務帳戶用戶端電子郵件地址。

Verify SSL 必要

如果選取,整合項目會在連線至 Cloud Asset Inventory 伺服器時驗證 SSL 憑證。

(預設為啟用)。

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

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

動作

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

充實資源

使用「Enrich Resource」(充實資源) 動作,透過 Cloud Asset Inventory 充實 Google Cloud資源的相關資訊。

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

動作輸入內容

如要設定「Enrich Resource」動作,請使用下列參數:

參數 說明
Resource Names 必要

以半形逗號分隔的清單,包含要擷取詳細資料的資源名稱。

如要設定這項參數,請以下列格式輸入完整的中繼資料資源名稱://cloudresourcemanager.googleapis.com/projects/PROJECT_ID。

Fields To Return 選用

以半形逗號分隔的清單,列出要傳回的欄位。

預設值為 *。

值範例如下:assetType、project、folders、organization、displayName、description、location、labels、networkTags、kmsKeys、createTime、updateTime、state、additionalAttributes、parentFullResourceName、parentAssetType。

這項動作一律會傳回 displayName 欄位。

您也可以選擇設定進階篩選器。舉例來說,如要從 additionalAttributes 傳回特定金鑰,請輸入 additionalAttributes.{key}。如要從 additionalAttributes 中排除特定鍵,請輸入 -additionalAttributes.{key}。

動作輸出內容

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

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

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

[
  {
    "Entity": "//iam.googleapis.com/projects/PROJECT/serviceAccounts/SERVICE_ACCOUNT/keys/KEY_ID",
    "EntityResult": {
      "additionalAttributes": {
        "email": "email@example.iam.gserviceaccount.com",
        "uniqueId": 123456789
      },
      "name": "//iam.googleapis.com/projects/PROJECT/serviceAccounts/SERVICE_ACCOUNT/keys/KEY_ID",
      "assetType": "iam.googleapis.com/ServiceAccountKey",
      "project": "projects/PROJECT",
      "displayName": "projects/PROJECT/serviceAccounts/SERVICE_ACCOUNT@PROJECT.iam.gserviceaccount.com/keys/KEY_ID",
      "createTime": "2022-05-26T17:35:07Z",
      "versionedResources": [
        {
          "version": "v1",
          "resource": {
            "keyAlgorithm": "KEY_ALG_RSA_2048",
            "keyOrigin": "GOOGLE_PROVIDED",
            "keyType": "USER_MANAGED",
            "name": "projects/PROJECT/serviceAccounts/SERVICE_ACCOUNT@PROJECT.iam.gserviceaccount.com/keys/KEY_ID",
            "validAfterTime": "2022-05-26T17:35:07Z",
            "validBeforeTime": "9999-12-31T23:59:59Z"
          }
        }
      ],
      "organization": "organizations/ORGANIZATION",
      "parentFullResourceName": "//iam.googleapis.com/projects/PROJECT/serviceAccounts/SERVICE_ACCOUNT@PROJECT.iam.gserviceaccount.com",
      "parentAssetType": "iam.googleapis.com/ServiceAccount"
    }
  }
]
輸出訊息

「Enrich Resource」動作可能會傳回下列輸出訊息:

輸出訊息 訊息說明

Successfully enriched the following resources using information from Google Cloud Asset Inventory: ASSET_IDENTIFIER

Action wasn't able to enrich the following resources using information from Google Cloud Asset Inventory: ASSET_IDENTIFIER

None of the provided resources were enriched.

動作成功。
Error executing action "Enrich resources". Reason: ERROR_REASON

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

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

指令碼結果名稱 值
is_success True或False

取得資源快照

使用「Get Resource Snapshot」(取得資源快照) 動作,透過 Cloud Asset Inventory 取得資源相關資訊。

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

動作輸入內容

如要設定「Get Resource Snapshot」動作,請使用下列參數:

參數 說明
Resource Names 必要

以半形逗號分隔的資源清單,用於擷取詳細資料。

如要設定這項參數,請以下列格式輸入完整的中繼資料資源名稱://cloudresourcemanager.googleapis.com/projects/PROJECT_ID。

Fields To Return 選用

以半形逗號分隔的清單,列出要傳回的欄位。

請按照下列格式輸入每個欄位:

assets.FIELD

值範例如下:assets.asset.name, assets.asset.assetType, assets.asset.resource.data。

這項動作一律會傳回 assets.asset.name 欄位。

預設值為 *。

動作輸出內容

「Get Resource Snapshot」(取得資源快照) 動作會提供下列輸出內容:

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

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

Google Cloud的 JSON 結果
    [
 {
   "Entity": "//compute.googleapis.com/projects/example-project/zones/us-central1-a/instances/example-instance",
   "EntityResult": {
     "window": {
       "startTime": "2023-08-14T19:43:41.805828Z",
       "endTime": "2262-04-11T23:47:16.854775807Z"
     },
     "asset": {
       "name": "//compute.googleapis.com/projects/example-project/zones/us-central1-a/instances/example-instance",
       "assetType": "compute.googleapis.com/Instance",
       "resource": {
         "version": "v1",
         "discoveryDocumentUri": "https://www.googleapis.com/discovery/v1/apis/compute/v1/rest",
         "discoveryName": "Instance",
         "parent": "//cloudresourcemanager.googleapis.com/projects/example-project-id",
         "data": {
           "description": "",
           "serviceAccounts": [
             {
               "email": "user@example.com",
               "scopes": [
                 "https://www.googleapis.com/auth/devstorage.read_only",
                 "https://www.googleapis.com/auth/logging.write",
                 "https://www.googleapis.com/auth/monitoring.write",
                 "https://www.googleapis.com/auth/servicecontrol",
                 "https://www.googleapis.com/auth/service.management.readonly",
                 "https://www.googleapis.com/auth/trace.append"
               ]
             }
           ],
           "lastStartTimestamp": "2022-05-26T01:44:52.756-07:00",
           "deletionProtection": false,
           "name": "example-name",
           "keyRevocationActionType": "NONE_ON_KEY_REVOCATION",
           "canIpForward": false,
           "shieldedInstanceIntegrityPolicy": {
             "updateAutoLearnPolicy": true
           },
           "zone": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a",
           "resourceStatus": {},
           "scheduling": {
             "onHostMaintenance": "MIGRATE",
             "preemptible": false,
             "provisioningModel": "STANDARD",
             "automaticRestart": true
           },
           "machineType": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/machineTypes/e2-micro",
           "confidentialInstanceConfig": {
             "enableConfidentialCompute": false
           },
           "selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instances/example-instance",
           "id": "example-id",
           "fingerprint": "example-fingerprint",
           "startRestricted": false,
           "networkInterfaces": [
             {
               "network": "https://www.googleapis.com/compute/v1/projects/example-project/global/networks/example-network",
               "stackType": "IPV4_ONLY",
               "name": "example",
               "subnetwork": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/subnetworks/example-network-subnet",
               "accessConfigs": [
                 {
                   "type": "ONE_TO_ONE_NAT",
                   "name": "External NAT",
                   "natIP": "192.0.2.1",
                   "networkTier": "PREMIUM"
                 }
               ],
               "fingerprint": "example-fingerprint",
               "networkIP": "203.0.113.2"
             }
           ],
           "allocationAffinity": {
             "consumeAllocationType": "ANY_ALLOCATION"
           },
           "labelFingerprint": "example-label",
           "shieldedInstanceConfig": {
             "enableSecureBoot": false,
             "enableVtpm": true,
             "enableIntegrityMonitoring": true
           },
           "cpuPlatform": "Intel Broadwell",
           "creationTimestamp": "2022-05-26T01:44:40.323-07:00",
           "status": "RUNNING",
           "disks": [
             {
               "guestOsFeatures": [
                 {
                   "type": "VIRTIO_SCSI_MULTIQUEUE"
                 },
                 {
                   "type": "SEV_CAPABLE"
                 },
                 {
                   "type": "UEFI_COMPATIBLE"
                 },
                 {
                   "type": "GVNIC"
                 }
               ],
               "interface": "SCSI",
               "shieldedInstanceInitialState": {
                 "dbxs": [
                   {
                     "content": "2gcDBhMRFQAAAAAAAAAAABENAAAAAvEOndK",
                     "fileType": "BIN"
                   }
                 ],
                 "dbx": [
                   {
                     "fileType": "BIN",
                     "content": "2gcDBhMRFQAAAAAAAAAAABENAAAAAvEOndK"
                   }
                 ]
               },
               "diskSizeGb": "10",
               "deviceName": "example-device-name",
               "type": "PERSISTENT",
               "source": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/disks/example-instance",
               "boot": true,
               "licenses": [
                 "https://www.googleapis.com/compute/v1/projects/example-project/global/licenses"
               ],
               "index": 0,
               "autoDelete": true,
               "mode": "READ_WRITE"
             }
           ],
           "tags": {
             "items": [
               "http-server"
             ],
             "fingerprint": "example-fingerprint"
           },
           "displayDevice": {
             "enableDisplay": false
           },
           "reservationAffinity": {
             "consumeReservationType": "ANY_ALLOCATION"
           }
         },
         "location": "us-central1-a"
       },
       "ancestors": [
         "projects/example-project-id",
         "organizations/example-org-id"
       ],
       "updateTime": "2023-08-14T19:43:41.805828Z"
     }
   }
 },
 {
   "Entity": "//iam.googleapis.com/projects/example-project/serviceAccounts/example-account-id",
   "EntityResult": {
     "window": {
       "startTime": "2023-12-22T13:37:50Z",
       "endTime": "2262-04-11T23:47:16.854775807Z"
     },
     "asset": {
       "name": "//iam.googleapis.com/projects/example-project/serviceAccounts/example-account-id",
       "assetType": "iam.googleapis.com/ServiceAccount",
       "resource": {
         "version": "v1",
         "discoveryDocumentUri": "https://iam.googleapis.com/$discovery/rest",
         "discoveryName": "ServiceAccount",
         "parent": "//cloudresourcemanager.googleapis.com/projects/example-project-id",
         "data": {
           "name": "projects/example-project/serviceAccounts/cloud-asset-inventory-auto@example-project.iam.gserviceaccount.com",
           "projectId": "example-project",
           "email": "cloud-asset-inventory-auto@example-project.iam.gserviceaccount.com",
           "uniqueId": "example-account-id",
           "displayName": "Cloud Asset Inventory Automation",
           "oauth2ClientId": "example-account-id"
         }
       },
       "ancestors": [
         "projects/example-project-id",
         "organizations/example-org-id"
       ],
       "updateTime": "2023-12-22T13:37:50Z"
     }
   }
 }
]
AWS 的 JSON 結果
[
   {
       "Entity": "//cloudasset.googleapis.com/organizations/example-org-id/otherCloudConnections/aws/arn:aws:s3:::aps-max-test-bucket",
       "EntityResult": {
           "assets": [
               {
                   "window": {
                       "startTime": "2024-01-24T17:51:03.412233028Z",
                       "endTime": "2262-04-11T23:47:16.854775807Z"
                   },
                   "asset": {
                       "name": "//cloudasset.googleapis.com/organizations/example-org-id/otherCloudConnections/aws/arn:aws:s3:::aps-max-test-bucket",
                       "assetType": "cloudasset.googleapis.com/AWS::S3::Bucket",
                       "resource": {
                           "version": "v1",
                           "discoveryDocumentUri": "n/a",
                           "discoveryName": "n/a",
                           "data": {
                               "dataSourceProvider": "AMAZON_WEB_SERVICES",
                               "supplementaryConfigurations": {
                                   "PublicAccessBlockConfiguration": {
                                       "BlockPublicPolicy": true,
                                       "RestrictPublicBuckets": true,
                                       "BlockPublicAcls": true,
                                       "IgnorePublicAcls": true
                                   },
                                   "TagSet": [
                                       {
                                           "Key": "my-key2",
                                           "Value": "my-value2"
                                       },
                                       {
                                           "Key": "my-key1",
                                           "Value": "my-value1"
                                       }
                                   ],
                                   "ServerSideEncryptionConfiguration": {
                                       "Rules": [
                                           {
                                               "ApplyServerSideEncryptionByDefault": {
                                                   "SSEAlgorithm": "AES256"
                                               },
                                               "BucketKeyEnabled": true
                                           }
                                       ]
                                   },
                                   "AccessControlPolicy": {
                                       "Grants": [
                                           {
                                               "Grantee": {
                                                   "DisplayName": "example",
                                                   "ID": "example-id",
                                                   "Type": "CanonicalUser"
                                               },
                                               "Permission": "FULL_CONTROL"
                                           }
                                       ],
                                       "Owner": {
                                           "DisplayName": "example",
                                           "ID": "example-id"
                                       }
                                   }
                               },
                               "configuration": {
                                   "Name": "aps-max-test-bucket",
                                   "CreationDate": "2023-12-04T15:29:50+00:00"
                               },
                               "tags": {
                                   "my-key2": "my-value2",
                                   "my-key1": "my-value1"
                               },
                               "originalResourceName": "arn:aws:s3:::aps-max-test-bucket",
                               "awsAccount": "arn:aws:organizations::example-id:account/example-account/example-account-id"
                           },
                           "location": "global"
                       },
                       "ancestors": [
                           "organizations/example-org-id"
                       ],
                       "updateTime": "2024-01-24T17:51:03.412233028Z"
                   }
               }
           ]
       }
   }
]
輸出訊息

Get Resource Snapshot 動作可傳回下列輸出訊息:

輸出訊息 訊息說明
Successfully returned information about the following resources using Google Cloud Asset Inventory: ASSET_IDENTIFIER

Action wasn't able to return information about the following resources using Google Cloud Asset Inventory: ASSET_IDENTIFIER.

No information was found for the provided resources.

動作成功。
Error executing action "Get Resource Snapshot". Reason: ERROR_REASON

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

指令碼執行結果

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

指令碼結果名稱 值
is_success True或False

列出服務帳戶角色

使用「List Service Account Roles」(列出服務帳戶角色) 動作,透過 Cloud Asset Inventory 列出與 Google Cloud 服務帳戶相關的角色。

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

動作輸入內容

如要設定「List Service Account Roles」(列出服務帳戶角色) 動作,請使用下列參數:

參數 說明
Service Accounts 必要

以半形逗號分隔的服務帳戶清單,用於擷取詳細資料。

Check Roles 選用

逗號分隔的清單,用於檢查與服務帳戶相關聯的角色,例如 roles/cloudasset.owner。

Check Permissions 選用

以半形逗號分隔的清單,列出要檢查的服務帳戶相關權限,例如 cloudasset.assets.listResource 。

Expand Permissions 選用

如果選取,這項動作會傳回與資源相關的所有不重複權限資訊。

預設為未選取。

Max Roles To Return 必要

要傳回與服務帳戶相關的角色數量。

預設值為 100。

Max Permissions To Return 必要

要傳回與服務帳戶相關的權限數量。

動作輸出內容

「List Service Account Roles」(列出服務帳戶角色) 動作會提供下列輸出內容:

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

以下範例顯示使用「List Service Account Roles」(列出服務帳戶角色) 動作時,收到的 JSON 結果輸出內容:

{
   "roles": ["role1", "role2"],
   "unique_permissions": ["permission1", "permission2"]
}
輸出訊息

List Service Account Roles 動作可傳回下列輸出訊息:

輸出訊息 訊息說明

Successfully enriched for the following service accounts using information from Google Cloud Asset Inventory: ASSET_IDENTIFIER

Action wasn't able to enrich the following service accounts using information from Google Cloud Asset Inventory: ASSET_IDENTIFIER

None of the service accounts were enriched.

動作成功。
Error executing action "List Service Account Roles". Reason: ERROR_REASON

動作失敗。

請檢查伺服器連線、輸入參數或憑證。

乒乓

使用 Ping 動作,測試與 Cloud Asset Inventory 的連線能力。

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

動作輸入內容

無

動作輸出內容

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

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

Ping 動作可能會傳回下列輸出訊息:

輸出訊息 訊息說明
Successfully connected to the Google Cloud Asset Inventory server with the provided connection parameters! 動作成功。
Failed to connect to the Google Cloud Asset Inventory server! 動作失敗。
指令碼執行結果

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

指令碼結果名稱 值
is_success True或False

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