剖析機構或資料夾中的 Cloud SQL 資料

本頁面說明如何在組織或資料夾層級設定 Cloud SQL 資料探索。如要剖析專案,請參閱「剖析單一專案中的 Cloud SQL 資料」。

如要進一步瞭解探索服務,請參閱「資料設定檔」。

運作方式

以下是剖析 Cloud SQL 資料的高階工作流程:

  1. 建立掃描設定。

    建立掃描設定後,Sensitive Data Protection 會開始識別 Cloud SQL 執行個體,並為每個執行個體建立預設連線。視探索範圍內的執行個體數量而定,這項程序可能需要幾小時才能完成。您可以退出Google Cloud 控制台,稍後再查看連線。

  2. 將必要的 IAM 角色授予與掃描設定相關聯的服務代理。

  3. 預設連線準備就緒後,請更新各個連線,提供適當的資料庫使用者憑證,讓 Sensitive Data Protection 存取 Cloud SQL 執行個體。您可以提供現有的資料庫使用者帳戶,或建立資料庫使用者。

  4. 建議做法:提高 Sensitive Data Protection 可用於剖析資料的連線數量上限。增加連線數量可加快探索速度。

支援的服務

這項功能支援下列項目:

  • MySQL 適用的 Cloud SQL
  • PostgreSQL 適用的 Cloud SQL

不支援 SQL Server 適用的 Cloud SQL。

處理和儲存區域

Sensitive Data Protection 是區域性和多區域性服務,不區分可用區。Sensitive Data Protection 剖析 Cloud SQL 執行個體時,會在資料目前的區域處理資料,但不一定是在目前的可用區。舉例來說,如果 Cloud SQL 執行個體儲存在 us-central1-a 可用區,Sensitive Data Protection 會在 us-central1 區域處理及儲存資料剖析檔。

詳情請參閱「資料落地注意事項」。

事前準備

  1. 確認您具備在組織層級設定資料剖析檔所需的 IAM 權限。

    即使沒有組織管理員 (roles/resourcemanager.organizationAdmin) 或安全管理員 (roles/iam.securityAdmin) 角色,您仍可建立掃描設定。不過,建立掃描設定後,具備上述任一角色的人員必須為服務代理授予資料剖析存取權。

  2. 每個要剖析資料的區域都必須有檢查範本。如要將單一範本用於多個區域,可以使用儲存在 global 區域的範本。如果組織政策禁止您在 global 區域建立檢查範本,則必須為每個區域設定專屬檢查範本。詳情請參閱「資料落地注意事項」。

    這項工作只能在 global 區域建立檢查範本。如需一或多個區域的專屬檢查範本,請先建立這些範本,再執行這項工作。

  3. 如要在特定事件發生時 (例如 Sensitive Data Protection 剖析新資料表時) 將 Pub/Sub 通知傳送至主題,請先建立 Pub/Sub 主題,再執行這項工作。

  4. 您可以設定 Sensitive Data Protection,自動為資源附加標記。這項功能可讓您根據計算出的機密程度,有條件地授予這些資源的存取權。如要使用這項功能,請先完成「根據資料機密程度控管 IAM 資源存取權」中的工作。

  5. 您可以設定 Sensitive Data Protection,根據探索深入分析,自動將切面附加至已剖析的 Cloud SQL 資源。如要使用這項功能,您必須在 MySQL 適用的 Cloud SQL 執行個體或 PostgreSQL 適用的 Cloud SQL 執行個體啟用通用目錄整合功能。

如要產生資料剖析檔,您需要服務代理容器和其中的服務代理。這項工作可讓您自動建立這些資源。

建立掃描設定

  1. 前往「建立掃描設定」頁面。

    前往「Create scan configuration」(建立掃描設定)

  2. 前往貴機構。按一下工具列中的專案選取器,然後選取組織。

下列各節將進一步說明「Create scan configuration」(建立掃描設定) 頁面中的步驟。在每個部分結束時,按一下「繼續」。

選取探索類型

選取「Cloud SQL」。

選取範圍

執行下列其中一個步驟:

  • 如要在組織層級設定剖析,請選取「Scan entire organization」(掃描整個組織)。
  • 如要在資料夾層級設定剖析,請選取「Scan selected folder」(掃描所選資料夾)。按一下「瀏覽」,然後選取資料夾。

管理時間表

如果預設剖析頻率符合需求,您可以略過「Create scan configuration」(建立掃描設定) 頁面的這個部分。

設定這個部分的原因如下:

  • 精細調整所有資料或特定資料子集的剖析頻率。
  • 指定不想剖析的資料表。
  • 指定不重複剖析的資料表。

如要精細調整剖析頻率,請按照下列步驟操作:

  1. 按一下「新增時間表」。
  2. 在「Filters」(篩選器) 區段中,您可以定義一或多個篩選器,指定排程範圍內的資料表。如果資料表符合至少一項定義的篩選條件,就會視為在排程範圍內。

    如要設定篩選器,請至少指定下列其中一項:

    • 專案 ID 或規則運算式,用於指定一或多個專案。
    • 指定一或多個執行個體的執行個體 ID 或規則運算式。
    • 資料庫 ID 或規則運算式,用於指定一或多個資料庫。
    • 指定一或多個資料表的資料表 ID 或規則運算式。在「Database resource name or regular expression」(資料庫資源名稱或規則運算式) 欄位中輸入這個值。

    規則運算式必須遵循 RE2 語法。

    舉例來說,如要將資料庫中的所有資料表納入篩選器,請在「Database ID」(資料庫 ID) 欄位中輸入資料庫 ID。

    資料表必須符合篩選器中指定的所有規則運算式,才算符合篩選條件。

    如要新增更多篩選器,請按一下「新增篩選器」,然後重複這個步驟。

  3. 按一下「頻率」。

  4. 在「Frequency」(頻率) 部分,指定探索服務是否應剖析所選資料表,以及剖析頻率:

    • 如果不想剖析資料表,請關閉「Do profile this data」(剖析這項資料)。

    • 如要至少剖析資料表一次,請將「剖析這項資料」設為開啟。

      在本節的後續欄位中,您可以指定系統是否應重新剖析資料,以及哪些事件應觸發重新剖析作業。詳情請參閱「資料剖析檔的產生頻率」。

      1. 在「On a schedule」(依排程) 部分,指定重新剖析資料表的頻率。無論資料表是否經過任何變更,都會重新剖析。
      2. 在「When schema changes」(結構定義變更時) 部分,指定 Sensitive Data Protection 應多久檢查一次所選資料表在上次剖析後是否有結構定義變更。系統只會重新剖析結構定義有變的資料表。
      3. 在「Types of schema change」(結構定義變更類型) 部分,指定哪些類型的結構定義變更應觸發重新剖析作業。選擇下列其中一種做法:
        • 新資料欄:重新剖析新增資料欄的資料表。
        • 移除的資料欄:重新剖析已移除資料欄的資料表。

        舉例來說,假設您有每天都會新增資料欄的資料表,且每次都需要剖析其內容。您可以將「結構定義變更時」設為「每日重新剖析」,並將「結構定義變更類型」設為「新資料欄」。

      4. 在「When inspect template changes」(檢查範本變更時) 部分,指定是否要在相關聯的檢查範本更新時重新剖析資料,以及重新剖析的頻率。

        發生下列任一情況時,系統會偵測到檢查範本變更:

        • 掃描設定中的檢查範本名稱有所變更。
        • 檢查範本的 updateTime 發生變更。

      5. 舉例來說,如果您為 us-west1 區域設定檢查範本,並更新該檢查範本,則只有 us-west1 區域中的資料會重新剖析。

  5. 按一下 [條件]。

    在「Conditions」(條件) 部分,指定要剖析的資料庫資源類型。根據預設,Sensitive Data Protection 會剖析所有支援的資料庫資源類型。Sensitive Data Protection 日後擴大支援範圍時,新支援的資料庫資源類型也會自動納入剖析。

  6. 選用:如要明確設定要剖析的資料庫資源類型,請按照下列步驟操作:

    1. 按一下「資料庫資源類型」欄位。
    2. 選取要剖析的資料庫資源類型。

    如果 Sensitive Data Protection 日後擴大探索支援範圍,納入更多 Cloud SQL 資料庫資源類型,您必須返回這份清單並選取這些類型,系統才會剖析。

  7. 按一下「完成」。

  8. 選用:如要新增更多排程,請按一下「Add schedule」(新增排程),然後重複上述步驟。

  9. 如要指定時間表的優先順序,請使用向上箭頭 和向下箭頭 重新排序。

    時間表的順序會指定如何解決時間表之間的衝突。如果資料表符合兩個不同排程的篩選條件,系統會根據排程清單中較高的排程,決定該資料表的剖析頻率。

  10. 選用:編輯或關閉「Catch-all schedule」。

    清單中的最後一個時間表是通用時間表。這項排程涵蓋所選範圍內不符合任何已建立排程的資料表。通用排程會遵循系統預設剖析頻率。

    • 如要調整全面涵蓋時間表,請按一下 「Edit schedule」(編輯時間表),然後視需要調整設定。
    • 如要防止 Sensitive Data Protection 剖析通用排程涵蓋的任何資源,請關閉「Profile the resources that don't match any custom schedule」(剖析不符合任何自訂排程的資源)。

選取檢查範本

請根據您要提供檢查設定的方式,選擇下列其中一個選項。無論選擇哪種選項,Sensitive Data Protection 都會在資料儲存的區域掃描資料。也就是說,資料不會離開來源區域。

方法 1:建立檢查範本

如要在 global 區域建立新的檢查範本,請選擇這個選項。

  1. 按一下「建立新的檢查範本」。
  2. 選用:如要修改預設選取的 infoType,請按一下「Manage infoTypes」(管理 infoType)。

    如要進一步瞭解如何管理內建和自訂 infoType,請參閱「透過Google Cloud 控制台管理 infoType」。

    必須至少選取一個 infoType 才能繼續。

  3. 選用:新增規則集並設定信賴度門檻,進一步設定檢查範本。詳情請參閱「設定偵測功能」。

Sensitive Data Protection 建立掃描設定時,會將這個新的檢查範本儲存在 global 區域。

方法 2:使用現有的檢查範本

如果您有現成的檢查範本,請選擇這個選項。

  1. 按一下「選取現有的檢查範本」。
  2. 輸入要使用的檢查範本完整資源名稱。「Region」(區域) 欄位會自動填入檢查範本的儲存區域名稱。

    您輸入的檢查範本必須與要剖析的資料位於相同區域。

    為遵守資料落地規定,Sensitive Data Protection 不會使用儲存在其他區域的檢查範本。

    如要找出檢查範本的完整資源名稱,請按照下列步驟操作:

    1. 前往檢查範本清單。這個頁面會在另一個分頁中開啟。

      前往檢查範本

    2. 選取要使用的檢查範本所在的專案。
    3. 依序選取「Configuration」(設定) >「Templates」(範本) >「Inspect」(檢查),然後按一下要使用的範本 ID。
    4. 在開啟的頁面中,複製範本的完整資源名稱。完整資源名稱的格式如下:
      projects/PROJECT_ID/locations/REGION/inspectTemplates/TEMPLATE_ID
    5. 在「Create scan configuration」(建立掃描設定) 頁面的「Template name」(範本名稱) 欄位中,貼上範本的完整資源名稱。
  3. 如要新增其他區域的檢查範本,請按一下「Add inspection template」(新增檢查範本),然後輸入範本的完整資源名稱。針對每個設有專屬檢查範本的區域,重複執行這項操作。
  4. 選用:新增儲存在 global 區域的檢查範本。如果某個區域沒有專屬檢查範本,Sensitive Data Protection 會自動使用該範本處理該區域的資料。

新增動作

本節說明如何指定 Sensitive Data Protection 在剖析資料表後應執行的動作。如要將從資料剖析檔收集到的洞察資料傳送至其他Google Cloud 服務,這些動作就非常實用。

發布至 Google Security Operations

從資料設定檔收集的指標,可為 Google Security Operations 發現項目提供背景資訊。這些額外資訊有助於判斷哪些安全性問題最需要處理。

舉例來說,如果您正在調查特定服務代理,Google Security Operations 可以判斷服務代理存取了哪些資源,以及這些資源是否含有高機密性資料。

如要將資料設定檔傳送至 Google Security Operations 執行個體,請開啟「Publish to Google Security Operations」(發布至 Google Security Operations)。

如果貴組織未透過獨立產品或 Security Command Center Enterprise 啟用 Google Security Operations 執行個體,則開啟這個選項不會有任何影響。

發布至 Security Command Center

在 Security Command Center 中,資料剖析檔的發現項目可提供背景資訊,協助您分類安全漏洞和威脅發現項目,並制定應變計畫。

您必須先在組織層級啟用 Security Command Center,才能使用這項動作。在組織層級啟用 Security Command Center,即可從 Sensitive Data Protection 等整合服務,接收發現項目。Sensitive Data Protection 適用於 Security Command Center 的所有服務級別。

如果未在組織層級啟用 Security Command Center,Sensitive Data Protection 發現項目就不會顯示在 Security Command Center 中。詳情請參閱「查看 Security Command Center 的啟用層級」。

如要將資料剖析檔結果傳送至 Security Command Center,請務必開啟「Publish to Security Command Center」(發布至 Security Command Center) 選項。

詳情請參閱「將資料剖析檔發布至 Security Command Center」。

將資料設定檔副本儲存至 BigQuery

Sensitive Data Protection 會將每個產生的資料剖析檔副本,儲存在 BigQuery 資料表中。如未提供偏好資料表的詳細資料,Sensitive Data Protection 會在服務代理容器中建立資料集和資料表。根據預設,資料集名稱為 sensitive_data_protection_discovery,資料表名稱為 discovery_profiles。

這項操作可讓您保留所有產生的設定檔記錄。這項記錄可用於建立稽核報告和視覺化資料剖析。您也可以將這項資訊載入其他系統。

此外,無論資料位於哪個區域,您都能在單一檢視畫面中查看所有資料剖析檔。雖然您也可以透過Google Cloud 控制台查看資料剖析檔,但控制台一次只會顯示一個區域的剖析檔。

如果 Sensitive Data Protection 無法剖析資料表,會定期重試。為盡量減少匯出資料中的雜訊,Sensitive Data Protection 只會將成功產生的設定檔匯出至 BigQuery。

啟用這個選項後,Sensitive Data Protection 就會開始匯出設定檔。啟用匯出功能前產生的剖析檔不會儲存至 BigQuery。

如需分析資料剖析檔時可用的查詢範例,請參閱「分析資料剖析檔」。

將部分探索發現項目儲存至 BigQuery

Sensitive Data Protection 可將發現項目範例新增至您選擇的 BigQuery 資料表。樣本發現項目代表所有發現項目的子集,可能不代表所有發現的 infoType。一般來說,系統會為每個資料表產生約 10 個發現項目樣本,但每次探索作業執行的數量可能不同。

每個發現項目都包含偵測到的實際字串 (也稱為「引用內容」) 和確切位置。

如要評估檢查設定是否正確比對要標示為機密的資訊類型,這項操作就非常實用。您可以使用匯出的資料設定檔和匯出的樣本發現項目執行查詢,進一步瞭解標記的特定項目、相符的 infoType、確切位置、計算出的敏感度等級和其他詳細資料。

這個範例需要啟用「將資料剖析檔副本儲存至 BigQuery」和「將部分探索發現項目儲存至 BigQuery」。

下列查詢會對匯出的資料剖析檔資料表和匯出的樣本發現項目資料表,使用 INNER JOIN 作業。在產生的表格中,每筆記錄都會顯示發現項目的引用內容、相符的 infoType、包含發現項目的資源,以及資源的計算敏感度等級。

SELECT
 findings_table.quote,
 findings_table.infotype.name,
 findings_table.location.container_name,
 findings_table.location.data_profile_finding_record_location.field.name AS field_name,
 profiles_table.table_profile.dataset_project_id AS project_id,
 profiles_table.table_profile.dataset_id AS dataset_id,
 profiles_table.table_profile.table_id AS table_id,
 profiles_table.table_profile.sensitivity_score AS table_sensitivity_score
 FROM
 `FINDINGS_TABLE_PROJECT_ID.FINDINGS_TABLE_DATASET_ID.FINDINGS_TABLE_ID_latest_v1` AS findings_table
INNER JOIN
 `PROFILES_TABLE_PROJECT_ID.PROFILES_TABLE_DATASET_ID.PROFILES_TABLE_ID_latest_v1` AS profiles_table
ON
 findings_table.data_profile_resource_name=profiles_table.table_profile.name
 AND findings_table.timestamp.timestamp=profiles_table.table_profile.profile_last_generated.timestamp

如要將發現項目示例儲存至 BigQuery 資料表,請按照下列步驟操作:

  1. 開啟「將部分探索發現項目儲存至 BigQuery」。

  2. 輸入要儲存發現項目示例的 BigQuery 資料表詳細資料。

    您為這項動作指定的資料表,必須與「將資料剖析檔副本儲存至 BigQuery」動作使用的資料表不同。

    • 在「Project ID」(專案 ID) 中,輸入要匯出發現項目的現有專案 ID。

    • 在「Dataset ID」(資料集 ID) 部分,輸入專案中現有資料集的名稱。

    • 在「Table ID」(資料表 ID) 部分,輸入要儲存發現項目的 BigQuery 資料表名稱。如果這個資料表不存在,Sensitive Data Protection 會自動使用您提供的名稱建立資料表。

如要瞭解儲存在 BigQuery 資料表中的各項發現項目內容,請參閱「DataProfileFinding」。

為資源附加標記

開啟「Attach tags to resources」(將標記附加至資源),Sensitive Data Protection 就會根據計算出的機密程度,自動標記資料。您必須先完成「根據資料機密程度控管 IAM 資源存取權」中的工作,才能進行本節操作。

如要根據資源的計算敏感度等級自動標記資源,請按照下列步驟操作:

  1. 開啟「標記資源」選項。
  2. 針對各個敏感等級 (高、中、低和未知),輸入您為該敏感等級建立的標記值路徑。

    如果略過某個敏感度層級,系統就不會為該層級附加標記。

  3. 如要在資源有機密等級標記時,自動降低資源的資料風險等級,請選取「為資源加上標記後,將其剖析檔的資料風險降至『低』」。這個選項可協助您評估資料安全性和隱私權防護機制的改善情況。

  4. 選取下列其中一個或兩個選項:

    • 初次剖析資源時加上標記。
    • 更新資源的剖析檔時加上標記。如果希望 Sensitive Data Protection 在後續執行探索作業時,覆寫機密等級標記值,請選取這個選項。因此,當資源的計算資料機密程度提高或降低時,主體對該資源的存取權會自動變更。

      如果您打算手動更新探索服務附加至資源的機密層級標記值,請勿選取這個選項。如果選取這個選項,Sensitive Data Protection 可能會覆寫您手動更新的內容。

發布至 Pub/Sub

啟用「Publish to Pub/Sub」(發布至 Pub/Sub),即可根據剖析結果採取程式輔助動作。您可以使用 Pub/Sub 通知開發工作流程,找出並修復資料風險或機密性較高的發現項目。

如要將通知傳送至 Pub/Sub 主題,請按照下列步驟操作:

  1. 開啟「發布至 Pub/Sub」。

    畫面上會顯示選項清單。每個選項都會說明導致 Sensitive Data Protection 傳送通知至 Pub/Sub 的事件。

  2. 選取應觸發 Pub/Sub 通知的事件。

    如果選取「每當更新設定檔時傳送 Pub/Sub 通知」,當設定檔中的機密程度、資料風險等級、偵測到的 infoType、公開存取權和其他重要指標有所變更時,Sensitive Data Protection 就會傳送通知。

  3. 針對您選取的每個事件,按照下列步驟操作:

    1. 輸入主題名稱。名稱必須採用以下格式:

      projects/PROJECT_ID/topics/TOPIC_ID
      

      更改下列內容:

      • PROJECT_ID:與 Pub/Sub 主題相關聯的專案 ID。
      • TOPIC_ID:Pub/Sub 主題 ID。
    2. 指定是否要在通知中加入完整資料表設定檔,或只加入已剖析資料表的完整資源名稱。

    3. 設定 Sensitive Data Protection 傳送通知時,必須達到的最低資料風險和機密等級。

    4. 指定必須符合一項或兩項資料風險和敏感度條件。舉例來說,如果選擇 AND,則必須同時符合資料風險和機密程度條件,Sensitive Data Protection 才會傳送通知。

傳送至 Knowledge Catalog 做為切面

這項操作可讓您根據資料剖析結果,將 Knowledge Catalog 切面新增至剖析過的資料表。這項操作只會套用至新建立和更新的設定檔。 未更新的現有設定檔不會傳送至 Knowledge Catalog。

啟用這項動作後,Sensitive Data Protection 會將 Sensitive Data Protection profile 切面附加至您剖析的每個新資料表或更新資料表的 Knowledge Catalog 項目。生成的切面包含從資料剖析檔收集的洞察資料。接著,您可以在組織和專案中,搜尋具有特定 Sensitive Data Protection profile 類型值的項目。

如要將資料剖析檔傳送至 Knowledge Catalog,請務必開啟「Send to Dataplex Catalog as aspects」(傳送至 Dataplex Catalog 做為切面) 選項。

詳情請參閱「根據資料剖析檔的深入分析資訊,新增 Knowledge Catalog 切面」。

管理服務代理容器和帳單

在這個部分中,您會指定要當做服務代理容器使用的專案。您可以讓 Sensitive Data Protection 自動建立新專案,也可以選擇現有專案。

無論是使用新建立的服務代理,還是重複使用現有的服務代理,都請務必確保該服務代理具備要剖析資料的讀取權限。

自動建立專案

如果您沒有在組織中建立專案所需的權限,請改為選取現有專案,或取得必要權限。如要瞭解必要權限,請參閱「在組織或資料夾層級使用資料設定檔所需的角色」。

如要自動建立要當做服務代理容器使用的專案,請按照下列步驟操作:

  1. 在「Service agent container」(服務代理容器) 欄位中,查看建議的專案 ID,並視需要編輯。
  2. 點選「建立」。
  3. 選用:更新預設專案名稱。
  4. 選取要為這項新專案所有可計費作業 (包括與探索無關的作業) 支付費用的帳戶。

  5. 點選「建立」。

Sensitive Data Protection 會建立新專案。這項專案中的服務代理會用於向 Sensitive Data Protection 和其他 API 進行驗證。

選取現有專案

如要選取現有專案做為服務代理容器,請按一下「Service agent container」(服務代理容器) 欄位,然後選取專案。

設定儲存設定的位置

按一下「Resource location」(資源位置) 清單,然後選取要儲存這項掃描設定的區域。日後建立的所有掃描設定也會儲存在這個位置。

選擇儲存掃描設定的位置不會影響要掃描的資料。資料會在儲存的區域進行掃描。詳情請參閱「資料落地注意事項」。

查看及建立

  1. 如要確保建立掃描設定後不會自動啟動剖析功能,請選取「在暫停模式下建立掃描作業」。

    這個選項適用於下列情況:

    • 您的 Google Cloud 管理員仍須授予服務代理資料剖析存取權。
    • 您想建立多項掃描設定,並希望某些設定覆寫其他設定。
    • 您選擇將資料剖析檔儲存至 BigQuery,並想確保服務代理具備 BigQuery 資料表的寫入權限,以便儲存資料剖析檔副本。
    • 您選擇將部分探索發現項目儲存至 BigQuery,並想確認服務代理具備 BigQuery 資料表的寫入權限,以便儲存發現項目。
    • 您已設定 Pub/Sub 通知,並想將發布權限授予服務代理。
    • 您已啟用「將標記附加至資源」動作,且必須將機密等級標記的存取權授予服務代理。
  2. 檢查設定,然後按一下「建立」。

    Sensitive Data Protection 會建立掃描設定,並新增至探索掃描設定清單。

如要查看或管理掃描設定,請參閱「管理掃描設定」。

Sensitive Data Protection 會開始識別 Cloud SQL 執行個體,並為每個執行個體建立預設連線。視探索範圍內的執行個體數量而定,這項程序可能需要幾小時。您可以退出 Google Cloud 控制台,稍後再查看連線。

預設連線準備就緒後,請使用資料庫使用者憑證更新這些連線,讓 Sensitive Data Protection 使用這些憑證剖析 Cloud SQL 執行個體。詳情請參閱「管理用於探索的連線」。

後續步驟

瞭解如何更新連結。