使用 Dataplex 通用目錄屬性儲存庫

本文說明如何使用 Dataplex 通用目錄屬性商店。

從屬性商店遷移至標記和 IAM 條件

如要從屬性商店遷移,請以標記、政策標記和 IAM 條件取代屬性商店的功能。

屬性儲存庫總覽

Dataplex Universal Catalog 屬性商店是可擴充的基礎架構,可讓您指定相關資源的政策相關行為。Dataplex Universal Catalog 管理員可以透過屬性商店,將資料與屬性建立關聯,定義特定資料的處理方式。

使用屬性商店,您可以為物件 (例如資料欄) 新增多個屬性。屬性商店會合併與物件相關聯的所有屬性行為,並以單一政策的形式呈現於基礎資源。

您可以為已發布的資料集設定屬性。發布的資料集是指 Dataplex Universal Catalog 從 bucket 資產中探索到的資料表建立的資料集。

支援的政策行為如下:

  • 資源規格:指定資源 (例如資料表) 的存取權
  • 資料欄規格:指定 BigQuery 資料表中資料欄的存取權

您可以使用屬性商店定義稱為「分類」的屬性階層。在分類中,子項屬性會沿用父項屬性階層的規格。父項和子項的規格會合併為統一清單,並傳播至資源。

您可以使用 Dataplex Universal Catalog 屬性商店執行下列操作:

  • 建立分類。
  • 建立屬性並按階層整理。
  • 將一或多個屬性與資料表建立關聯。
  • 將一或多個屬性與資料欄建立關聯。

術語

本節說明本文件中使用的術語。

屬性分類

資料分類是屬性的階層。在分類中,父項節點的屬性可讓下方的屬性 (子項屬性) 繼承父項屬性的行為規格,並新增至自身。

舉例來說: 如果名為 PII 的屬性具有資源規格 group-a@company.com,且名為 Social Security numbersPII 子屬性具有資源規格 group-b@company.com,則套用至與屬性 Social Security numbers 相關聯政策的資源規格會是 group-a@company.comgroup-b@company.com

定義屬性時,你可以選擇屬性是父項還是子項。定義子項屬性時,必須指定父項屬性。

資料欄規格

資料欄的行為規格。指定可讀取資料欄的使用者或群組。如果將含有資料欄規格的屬性與資料表的資料欄建立關聯,系統會為該資料欄新增 BigQuery 資料欄政策標記

資源規格

使用者或群組存取資源 (表格) 的權限。 如果將屬性與資源規格建立關聯,Dataplex Universal Catalog 會將 IAM 角色傳播給指定使用者,讓他們存取與屬性建立關聯的資料表。

事前準備

限制

Dataplex Universal Catalog 會將資料欄規格政策傳播為 BigQuery 政策標記。BigQuery 限制每個資料欄只能有一個政策標記。如果資料欄上已有政策標記,Dataplex Universal Catalog 會在「管理」分頁的「治理」記錄中擲回錯誤。

配額

以下是 Dataplex Universal Catalog 屬性商店的配額和限制:

限制 預設
單一區域中的分類架構數量上限 100
單一地區中所有分類的屬性數量上限 10,000
可與資源 (資料表) 建立關聯的屬性數量上限 50
可與資料欄建立關聯的屬性數量上限 100
屬性分類中每個資料屬性樹狀結構的最大深度 4

必要的角色

如要取得使用 Dataplex Universal Catalog 屬性商店所需的權限,請要求管理員授予您專案的下列 IAM 角色:

如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

這些預先定義的角色具備使用 Dataplex Universal Catalog 屬性商店所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:

所需權限

如要使用 Dataplex Universal Catalog 屬性存放區,必須具備下列權限:

  • 管理分類和屬性:
    • dataplex.datataxonomies.*
    • dataplex.dataattributes.* (except dataplex.dataattributes.configureResourceAccess and dataplex.dataattributes.configureDataAccess)
  • 查看與資源和屬性相關聯的繫結:
    • dataplex.datataxonomies.get
    • dataplex.datataxonomies.list
    • dataplex.dataattributes.get
    • dataplex.dataattributes.list
    • dataplex.dataattributebindings.get
    • dataplex.dataattributebindings.list
  • 在專案中建立及管理繫結資源: dataplex.dataattributebindings.*
  • 管理資源和資料存取權規格:
    • dataplex.datataxonomies.configureResourceAccess
    • dataplex.datataxonomies.configureDataAccess

您或許還可透過自訂角色或其他預先定義的角色取得這些權限。

應用實例

假設有一間名為 ACME 的公司,擁有三種資料:

  • Red 私密資料
  • Green 受限制但較不敏感的資料
  • 未分類資料

ACME 的 Dataplex Universal Catalog 管理員會建立下列屬性集:

  • 屬性:Red

    • 資料欄規格:secrets_team@acme 具有讀取權限
    • 資源規格:secrets_team@acmetenured_employees@acme,具有讀取權限
  • 屬性:Green

    • 資料欄規格:full_time_employees@acme 具有讀取權限
    • 資源規格:full_time_employees@acme 具有編輯權限

這張圖片包含屬性「紅色」和「綠色」的欄位和資源規格。

RedGreen 屬性會根據與資料表及其資料欄相關聯的屬性,控管資源 (資料表) 的存取行為。

假設資料表有下列資料欄:

  • ID
  • 郵遞區號
  • 名稱
  • 位址
  • $Value

用途 1:將相同屬性與表格和資料欄建立關聯

這張圖片顯示與表格和「名稱」欄相關聯的「紅色」屬性。

如果您將屬性 Red 與資料表及其資料欄「Name」建立關聯,Dataplex Universal Catalog 就會傳播下列政策:

  • secrets_team@acmetenured_employees@acme 中的員工可以讀取資料表、查看中繼資料,以及查詢資料表。
  • 只有 secrets_team@acme 中的員工可以查詢「名稱」欄,因為該欄受到欄規格的進一步保護。

應用情境 2:合併屬性

請考慮下列關聯:

  • RedGreen 屬性與資料表建立關聯。
  • RedGreen 屬性與「名稱」欄建立關聯。
  • 將屬性 Red 與「$Value」欄建立關聯。

這張圖片顯示與表格和「名稱」欄相關聯的「紅色」和「綠色」屬性,以及與「$value」欄相關聯的「紅色」屬性

在這種情況下,Dataplex Universal Catalog 會傳播下列政策:

  • secrets_team@acme」、「tenured_employees@acme」和「full_time_employees@acme」的員工可以存取該表格。這是因為 Dataplex Universal Catalog 會合併屬性 RedGreen 的資源規格。
  • secrets_team@acmefull_time_employees@acme 的員工都可以存取「名稱」欄。這是因為 Dataplex Universal Catalog 會合併屬性 RedGreen 的資料欄規格。
  • 只有 secrets_team@acme 的員工可以查詢「$Value」欄。

用途 3:以階層方式整理屬性

您可以指定屬性的子類型,在階層中整理屬性。請參考下列屬性集:

父項屬性 1
屬性:PII

  • 資料欄規格:secrets_team@acme
  • 資源規格:secrets_team@acmetenured_employees@acme

PII 的子項屬性
屬性:Email

  • 資料欄規格:email_comm@acme
  • 資源規格:email_comm@acme

父項屬性 2
屬性:Financial

  • 資料欄規格:full_time_employees@acme
  • 資源規格:full_time_employees@acme

這張圖片顯示屬性階層的範例。

請考慮下列關聯:

  • EmailFinancial 屬性與資料表建立關聯。
  • EmailFinancial 屬性與「名稱」欄建立關聯。
  • 將屬性 PII 與「$Value」欄建立關聯。

這張圖片顯示階層中的屬性如何與資料表和資料欄建立關聯。

在這種情況下,Dataplex Universal Catalog 會傳播下列政策:

  • secrets_team@acmetenured_employees@acmefull_time_employees@acmeemail_comm@acme 的員工可以存取該表格。這是因為 Dataplex Universal Catalog 會合併屬性 FinancialEmail 的資源規格,且屬性 Email 會從屬性 PII 繼承規格。
  • secrets_team@acmeemail_comm@acmefull_time_employees@acme 的員工可以存取「名稱」欄。這是因為 Dataplex Universal Catalog 會合併屬性 FinancialEmail 的資料欄規格。
  • 只有 secrets_team@acme 的員工可以查詢「$Value」欄。

設定屬性

如要建立屬性,請先建立分類,然後建立父項和子項資料屬性。

建立資料屬性分類

  1. 前往 Google Cloud 控制台的 Dataplex Universal Catalog「屬性商店」頁面。

    前往屬性商店

  2. 按一下「建立分類」

  3. 輸入「分類名稱」、「ID」和「說明」

  4. 請選取區域。

  5. 按一下「提交」

    新的分類架構會顯示在「資料分類架構」頁面。

建立父項屬性

  1. 前往 Google Cloud 控制台的 Dataplex Universal Catalog「屬性商店」頁面。

    前往屬性商店

  2. 在「資料分類」頁面中,按一下要建立父項屬性的分類。

  3. 在「分類詳細資料」頁面中,按一下「新增資料屬性」

  4. 選取「建立父項資料屬性」

  5. 輸入父項屬性的名稱、ID 和說明。

  6. 選用:設定屬性規格。

    1. 設定資源規格:

      1. 按一下「資源」的「管理權限」
      2. 按一下「新增」
      3. 在「New principals」(新增主體) 欄位中,輸入需要存取資源的使用者或群組電子郵件地址。
      4. 選取所需角色,然後按一下「儲存」
      5. 按一下 [儲存]
    2. 設定資料欄規格:

      1. 按一下「資料欄」的「管理權限」
      2. 按一下「新增」
      3. 在「New principals」(新增主體) 欄位中,輸入需要存取該欄位的使用者或群組的電子郵件地址。
      4. 選取所需角色,然後按一下「儲存」
      5. 按一下 [儲存]
  7. 點選「建立」

建立子項屬性

  1. 前往 Google Cloud 控制台的 Dataplex Universal Catalog「屬性商店」頁面。

    前往屬性商店

  2. 在「資料分類」頁面中,按一下要建立子屬性的分類。

  3. 在「分類詳細資料」頁面中,按一下「新增資料屬性」

  4. 選取「建立子項資料屬性」

  5. 為要建立的子項屬性選取父項資料屬性

  6. 輸入子屬性的名稱、ID 和說明。

  7. 選用:設定屬性規格。

    1. 設定資源規格:

      1. 按一下「資源」的「管理權限」
      2. 按一下「新增」
      3. 在「New principals」(新增主體) 欄位中,輸入需要存取資源的使用者或群組電子郵件地址。
      4. 選取所需角色,然後按一下「儲存」
      5. 按一下 [儲存]
    2. 設定資料欄規格:

      1. 按一下「資料欄」的「管理權限」
      2. 按一下「新增」
      3. 在「New principals」(新增主體) 欄位中,輸入需要存取該欄位的使用者或群組的電子郵件地址。
      4. 選取所需角色,然後按一下「儲存」
      5. 按一下 [儲存]
  8. 點選「建立」

更新屬性商店資源

更新分類詳細資料

  1. 前往 Google Cloud 控制台的 Dataplex Universal Catalog「屬性商店」頁面。

    前往屬性商店

  2. 按一下要更新的分類。

  3. 按一下 [編輯]

  4. 視需要編輯分類名稱和說明。

  5. 按一下「提交」

更新屬性詳細資料

  1. 前往 Google Cloud 控制台的 Dataplex Universal Catalog「屬性商店」頁面。

    前往屬性商店

  2. 按一下含有要更新屬性的分類。

  3. 按一下要更新的屬性。

  4. 如要更新屬性名稱和說明,請按一下「編輯」

    1. 如要更新父項屬性,可以選擇更新為子項屬性,反之亦然。選取相應選項。
    2. 視需要編輯屬性名稱和說明。
    3. 按一下「更新」
  5. 如要更新屬性的資源規格,請按一下「資源規格」的「編輯」

    1. 如要新增主體,請按照下列步驟操作:

      1. 按一下「新增」
      2. 在「New Principals」(新增主體) 欄位中,輸入需要存取資源的使用者或群組電子郵件地址。
      3. 選取所需「角色」
      4. 按一下 [儲存]
    2. 如要更新現有主體,請按照下列步驟操作:

      1. 找到要更新的主體,然後按一下 「編輯」
      2. 選取所需「角色」
      3. 按一下 [儲存]
    3. 如要移除現有主體,請按照下列步驟操作:

      1. 選取要移除的主體。
      2. 按一下 [移除]
  6. 如要更新屬性的資料欄規格,請按一下「資料欄規格」的「編輯」

    1. 如要新增主體,請按照下列步驟操作:

      1. 按一下「新增」
      2. 在「New Principals」(新增主體) 欄位中,輸入需要存取該欄位的使用者或群組電子郵件地址。
      3. 選取所需「角色」
      4. 按一下 [儲存]
    2. 如要更新現有主體,請按照下列步驟操作:

      1. 找到要更新的主體,然後按一下 「編輯」
      2. 選取所需「角色」
      3. 按一下 [儲存]
    3. 如要移除現有主體,請按照下列步驟操作:

      1. 選取要移除的主體。
      2. 按一下 [移除]

將屬性與資源建立關聯

將屬性與資料表建立關聯

  1. 前往 Google Cloud 控制台的 Dataplex Universal Catalog「屬性商店」頁面。

    前往屬性商店

  2. 按一下包含屬性的分類。

  3. 按一下要與表格建立關聯的屬性。

  4. 按一下「資源」分頁標籤。

  5. 按一下「新增資源」

  6. 從清單中選取表格。

  7. 按一下 [選取]。

將屬性與資料欄建立關聯

  1. 在 Google Cloud 控制台中,前往 Data Catalog 的「Search」頁面。

    前往「搜尋」頁面

  2. 搜尋並選取要將屬性與資料欄建立關聯的表格。

  3. 按一下「結構定義與資料欄標記」分頁標籤。

  4. 在「政策標記」中,針對要與屬性建立關聯的欄,按一下「新增」圖示

  5. 選取含有屬性的分類。

  6. 選取屬性。

  7. 按一下「附加」

後續步驟