本文說明如何啟動安全指揮中心發現項目的隨選大量匯出作業,將資料匯出至 BigQuery。
BigQuery 是 Google Cloud的全代管 PB 級數據分析資料倉儲,不僅具成本效益,還能近乎即時地分析大量資料。如要進一步瞭解 BigQuery,請參閱 BigQuery 說明文件。
總覽
這項功能會提供特定時間點的調查結果快照。 這項功能可與持續匯出至 BigQuery 功能互補,提供完整的分析和報表。
使用大量匯出功能,您可以執行下列操作:
資料集結構
系統會將調查結果匯出至 BigQuery,做為 findings
資料表中的資料列,並依 source_id
、finding_id
和 event_time
分類。
每個資料集都包含 findings
資料表,其中含有下列欄位:
欄位 | 說明 |
---|---|
source_id |
Security Command Center 指派給
發現項目來源的專屬 ID。舉例來說,Cloud 異常偵測來源的所有發現項目都具有相同的 範例: |
finding_id |
代表調查結果的專屬 ID。在機構的來源中不得重複。為英數字元,且長度不得超過 32 個字元。 |
event_time |
事件發生時間或發現項目更新時間。舉例來說,如果發現項目代表開放的防火牆,則 範例: |
bulk_export_id |
如果是大量匯出 (預覽版),則為 UUID。 如果是持續匯出作業,這個欄位會是空的。 |
finding |
評估資料記錄,例如安全性、風險、健康狀態或隱私權,這些資料會匯入 Security Command Center 以供呈現、通知、分析、政策測試和強制執行。舉例來說,App Engine 應用程式中的跨網站指令碼攻擊 (XSS) 安全漏洞就是一項發現。
如要進一步瞭解巢狀欄位,請參閱
|
resource |
與這項發現項目相關聯的 Google Cloud 資源資訊。
如要進一步瞭解巢狀欄位,請參閱
|
費用
將資料儲存到 BigQuery 時,系統會向您收取與這項功能相關的 BigQuery 費用。詳情請參閱 BigQuery 儲存空間定價一文。
事前準備
您必須先完成這些步驟,才能啟用這項功能。
設定權限
如要完成本指南,您必須具備下列 Identity and Access Management (IAM) 角色:
在要匯出發現項目的機構中,執行下列其中一項操作:
- 安全中心 BigQuery 匯出項目編輯者
(
roles/securitycenter.bigQueryExportsEditor
) - 安全中心管理員
(
roles/securitycenter.admin
)
如要進一步瞭解 Security Command Center 角色,請參閱存取權控管。
- 安全中心 BigQuery 匯出項目編輯者
(
在 BigQuery 資料集上,BigQuery 資料擁有者 (
roles/bigquery.dataOwner
)如要進一步瞭解 BigQuery 角色,請參閱「BigQuery IAM 角色和權限」。
在目的地 BigQuery 資料集所屬的專案中,ProjectIAMAdmin (
roles/resourcemanager.projectIamAdmin
)
建立 BigQuery 資料集
按照「建立資料集」一文中的步驟建立 BigQuery 資料集。
啟用 Security Command Center API
如要匯出發現項目,請按照下列步驟啟用 Security Command Center API:
前往 Google Cloud 控制台的「API 程式庫」頁面。
選取要啟用 Security Command Center API 的專案。
在「搜尋」欄位中輸入
Security Command Center
,然後點選搜尋結果中的「Security Command Center」。在隨即顯示的 API 頁面中,按一下「啟用」。
專案已啟用 Security Command Center API。
在 VPC Service Controls 中授予範圍存取權
如果您使用 VPC Service Controls,請參閱「在 VPC Service Controls 中授予範圍存取權」,並視需要採取這些步驟。
如果使用者要為特定服務周邊建立大量匯出作業,就必須為每位使用者重複這個步驟。
為新的 BigQuery 大量匯出作業建立連入規則
如果您使用 VPC Service Controls,請參閱「為匯出至 BigQuery 的新資料建立連入規則」,並視需要採取這些步驟。
BigQuery 大量匯出作業的限制
建立 BigQuery 大量匯出作業時,請注意下列限制:
- 單一機構一次只能進行三項大量匯出作業。
- 如果您要求將多個非並行的大量匯出作業匯出至同一個 BigQuery 資料集,匯出作業中較新的發現項目會附加至 BigQuery
findings
資料表。發現項目不會遭到覆寫。
建立 BigQuery 大量匯出作業
只能在機構層級大量匯出調查結果。
如要大量匯出發現項目至 BigQuery 執行個體,請使用 gcloud CLI 並按照下列步驟操作:
前往 Google Cloud 控制台。
選取您已啟用 Security Command Center API 的專案。
按一下「啟用 Cloud Shell」。
如要建立新的匯出設定,請執行下列指令:
gcloud scc findings export-to-bigquery PARENT \ --dataset=DATASET_NAME \ [--location=LOCATION; default="global"] \
更改下列內容:
PARENT
:匯出範圍的相對名稱。 格式範例:organizations/ORGANIZATION_ID
DATASET_NAME
:BigQuery 資料集的名稱。格式範例:projects/PROJECT_ID/datasets/DATASET_ID
LOCATION
: 要建立匯出設定的Security Command Center 位置;如果已啟用資料落地功能,請使用eu
、sa
或us
;否則請使用global
值。 這個變數為選用變數。舉例來說,如要大量匯出所有調查結果,請執行下列指令:
gcloud scc findings export-to-bigquery organizations/123 --dataset=projects/123/datasets/DATASET
就資料所在地而言,上述範例會呼叫全域端點。
如要為
eu
端點建立相同的批次匯出作業,請執行下列指令:gcloud scc findings export-to-bigquery organizations/123 --dataset=projects/123/datasets/DATASET --location=locations/eu
這項指令會傳回長時間執行的作業物件,其中包含追蹤匯出狀態時所需的 name
字串。如要追蹤這項 BigQuery 大量匯出作業的狀態,請參閱「查看大量匯出作業的狀態」。
如要查看調查結果,請參閱「查看調查結果」。
查詢
如需可用於分析發現項目資料的各種查詢,請參閱「實用查詢」。
查看大量匯出作業的狀態
如要查看大量匯出作業的狀態,您需要long running operation name
在建立大量匯出作業時收到的字串。
前往 Google Cloud 控制台。
選取您已啟用 Security Command Center API 的專案。
按一下「啟用 Cloud Shell」。
如要驗證大量匯出設定的詳細資料,請執行下列指令:
gcloud scc operations describe LONG_RUNNING_OPERATION_NAME \ --organization=ORGANIZATION_ID
更改下列內容:
LONG_RUNNING_OPERATION_NAME
:建立大量匯出作業時傳回的name
字串。ORGANIZATION_ID
舉例來說,如要查看大量匯出要求 (從機構傳回
name: "long-running-operation-name"
,且機構 ID 設為123
) 的狀態,請執行下列指令:gcloud scc operations describe long-running-operation-name \ --organization=123
- 如果匯出作業成功,回應會包含
done: true
。 - 如果匯出失敗,回應會包含錯誤代碼。
- 如果匯出作業仍在進行中,回應不會包含
done: true
,也不會包含錯誤代碼。
BigQuery 大量匯出和持續匯出
如要在同一個 BigQuery 資料集同時使用大量和持續 BigQuery 匯出功能,有兩種做法:
請先建立持續匯出作業,然後再以大量匯出作業回填資料。
設定持續匯出至 BigQuery 資料集。成功建立匯出作業後,您就會開始即時接收 Security Command Center 發現項目。
使用相同的目的地 BigQuery 資料集建立大量匯出作業。系統會將匯出時的所有 Security Command Center 發現項目快照,匯出至所選資料集。
大量匯出作業需要時間執行。因此,如果持續匯出作業是在 T1 建立,大量匯出作業是在 T2 觸發,而大量匯出作業的調查結果快照是在 T3 完成,那麼 T1 和 T3 之間可能會出現重複記錄。不過,沒有發現任何缺口。
請先建立大量匯出作業,然後再建立持續匯出作業。
建立大量匯出作業。系統會將匯出作業執行時的所有 Security Command Center 發現項目快照,匯出至所選的 BigQuery 資料集。
設定持續匯出至同一個目的地 BigQuery 資料集。成功建立匯出作業後,您就會開始即時接收 Security Command Center 發現項目。
如果大量匯出作業是在 T1 建立,大量匯出作業的發現項目快照會在 T2 完成,而持續匯出作業會在 T3 觸發,則 BigQuery 資料集可能會缺少 T2 和 T3 之間的發現項目。