在資料領域中納入資源

本文說明如何在資料網域中納入資源,以便整理資料。

  • 一次只能將資源納入一個網域。您無法將單一資源新增至多個網域。* 單一資料網域最多可包含 500 個直接資源。

運作方式

如要在網域中加入資源,請完成下列步驟:

  1. 取得要授權網域的網域主體 ID。詳情請參閱「取得網域主體」。
  2. 授權網域,授予特定資源或專案的存取權。
  3. 建立資源與網域之間的繫結。詳情請參閱「將資源繫結至網域」。

關於資料網域授權

網域授權會在資源和網域之間建立信任關係。資源擁有者會將目標資源或專案的 IAM 權限授予資料網域 IAM 主體。這項操作可授權 Knowledge Catalog 建立繫結,將資源連結至網域。

只有在建立繫結時,系統才會驗證網域授權。也就是說,如果您撤銷資源上網域主體的 IAM 角色,該資源不會自動取消繫結或從網域中移除。在明確刪除資源與網域的繫結前,具備 roles/dataplex.dataDomainEntryReader 角色的網域使用者仍可探索資源並查看其中繼資料。

網域授權和網域使用者權限

使用資料網域時,請務必區分「資料網域授權」和「授予使用者資料網域權限」:

  • 資料網域授權:這是指授權目標資源上的資料網域。您在基礎資源 (例如專案或 BigQuery 資料集) 上授予資料網域 IAM 主體權限,即可在資源和網域之間建立繫結。
  • 授予使用者資料網域權限:這是指授予使用者或服務帳戶與資料網域互動的權限。您可以在資料網域中直接授予使用者 IAM 角色,讓他們在知識型錄中檢視、編輯或管理網域。詳情請參閱「資料網域角色和權限」。

角色類型

在目標資源上授權資料網域時,您可以選取屬於下列任一角色類型的 IAM 角色:「讀取者」、「寫入者」或「管理員」

一般而言,系統會保留「寫入者」和「管理員」角色類型,讓網域對授權資源執行下列範圍較廣的操作:

  • 網域可透過「寫入者」角色類型,管理資源的中繼資料編輯權限。
  • 網域管理員角色類型可管理資源的任何權限。

在資料網域的範圍內,這三種角色類型都允許資料網域建立與目標資源的繫結。建立繫結後,使用者就能在網域中搜尋資源並查看其中繼資料。詳情請參閱「搜尋資料資源」。

選擇角色類型時,請考量您要授予網域的資源長期存取層級。

建議用於網域授權的角色

下表列出建議的角色,可用於授權網域檢查資源。您可以為每項資源選擇與建議不同的角色,但這類角色必須包含執行資源繫結所需的權限。

從清單中選取要查看角色的資源類型。

資源類型 角色類型 建議的角色 說明 所需權限
專案 讀取者 roles/browser 授予網域權限,以取得專案相關資訊。 resourcemanager.projects.get
寫入者 roles/editor 授予網域權限,以取得專案相關資訊及管理專案中繼資料。 resourcemanager.projects.get
resourcemanager.projects.update
管理員 roles/owner 授予網域管理員專案管理權,包括探索、中繼資料治理和存取權政策管理。 resourcemanager.projects.get
resourcemanager.projects.update
resourcemanager.projects.setIamPolicy
BigQuery 資料集 讀取者 roles/bigquery.metadataViewer 授予網域權限,以取得 BigQuery 資料集的相關資訊。 bigquery.datasets.get
寫入者 roles/bigquery.dataEditor 授予網域權限,以取得 BigQuery 資料集的相關資訊,並管理其中繼資料。 bigquery.datasets.get
bigquery.datasets.updateTag
管理員 roles/bigquery.dataOwner 讓網域管理員管理 BigQuery 資料集,包括探索、中繼資料管理和存取政策管理。 bigquery.datasets.get
bigquery.datasets.updateTag
bigquery.datasets.setIamPolicy
BigQuery 資料表 讀取者 roles/bigquery.metadataViewer 授予網域權限,以取得 BigQuery 資料表的相關資訊。 bigquery.tables.get
寫入者 roles/bigquery.dataEditor 授予網域權限,可取得 BigQuery 資料表的相關資訊,並管理其中繼資料。 bigquery.tables.get
bigquery.tables.update
管理員 roles/bigquery.dataOwner 讓網域管理員管理 BigQuery 資料表,包括探索、中繼資料管理和存取政策管理。 bigquery.tables.get
bigquery.tables.update
bigquery.tables.setIamPolicy
資料產品 讀取者 roles/dataplex.dataProductsViewer 授予網域權限,以取得資料產品的相關資訊。 dataplex.dataProducts.get
寫入者 roles/dataplex.dataProductsEditor 授予網域權限,可取得資料產品的相關資訊,並管理其中繼資料。 dataplex.dataProducts.get
dataplex.dataProducts.update
管理員 roles/dataplex.dataProductsAdmin 可讓網域管理員管理資料產品,包括探索資料產品、管理中繼資料,以及管理存取權政策。 dataplex.dataProducts.get
dataplex.dataProducts.update
dataplex.dataProducts.setIamPolicy
Dataform 存放區 讀取者 roles/dataform.codeViewer 授予網域 Dataform 程式碼資源的唯讀存取權。 dataform.repositories.get
寫入者 roles/dataform.codeOwner 授予網域 Dataform 存放區和程式碼資源的完整存取權。 dataform.repositories.get
dataform.repositories.update
管理員 roles/dataform.codeOwner 授予網域 Dataform 存放區和程式碼資源的完整存取權。 dataform.repositories.get
dataform.repositories.setIamPolicy
Dataproc Metastore 資料庫 讀取者 roles/metastore.metadataUser 授予網域權限,可取得 Dataproc Metastore 資料庫清單。 metastore.databases.get
寫入者 roles/metastore.metadataEditor 授予網域讀取及修改 Dataproc Metastore 資料庫中繼資料,以及這些資料庫內資料表的權限。 metastore.databases.get
metastore.databases.update
管理員 roles/metastore.metadataOwner 授予網域存取 Dataproc Metastore 資料庫中繼資料及資料庫內資料表的完整權限。 metastore.databases.get
metastore.databases.setIamPolicy
Dataproc Metastore 資料表 讀取者 roles/metastore.metadataViewer 授予網域讀取 Dataproc Metastore 資料庫中繼資料及資料庫內資料表的權限。 metastore.tables.get
寫入者 roles/metastore.metadataEditor 授予網域讀取及修改 Dataproc Metastore 資料庫中繼資料,以及這些資料庫內資料表的權限。 metastore.tables.get
管理員 roles/metastore.metadataOwner 授予網域存取 Dataproc Metastore 資料庫中繼資料及資料庫內資料表的完整權限。 metastore.tables.get
metastore.tables.setIamPolicy
Cloud Spanner 資料庫 讀取者 roles/spanner.databaseReader 授予網域權限,可從 Spanner 資料庫讀取資料、執行 SQL 查詢,以及檢視資料庫的結構定義。 spanner.databases.get
寫入者 roles/spanner.editor 授予網域 Spanner 資源的管理和作業權限,包括執行個體和資料庫管理、查詢執行、備份和還原管理,以及資源管理。 spanner.databases.get
spanner.databases.update
管理員 roles/spanner.databaseAdmin 授予網域完整權限,可管理專案中的 Spanner 執行個體,以及這些執行個體中的資料庫。 spanner.databases.get
spanner.databases.setIamPolicy
BigLake 資料表 讀取者 roles/biglake.metadataViewer 授予網域所有 BigLake 資源的中繼資料唯讀存取權。 biglake.tables.get
寫入者 roles/biglake.editor 授予網域所有 BigLake 資源的讀寫權限。 biglake.tables.get
biglake.tables.update
管理員 roles/biglake.admin 授予網域所有 BigLake 資源的完整存取權。 biglake.tables.get
biglake.tables.setIamPolicy
AlloyDB for PostgreSQL 執行個體 讀取者 roles/alloydb.viewer 授予網域 AlloyDB for PostgreSQL 資源唯讀存取權。 alloydb.instances.get
寫入者 roles/alloydb.editor 授予網域對 AlloyDB for PostgreSQL 資源的讀寫權限。 alloydb.instances.get
alloydb.instances.update
Gemini Enterprise Agent Platform 資料集 讀取者 roles/aiplatform.viewer 授予網域權限,可查看 Gemini Enterprise Agent Platform 中的所有資源。 aiplatform.datasets.get
寫入者 roles/aiplatform.user 授予網域權限,可使用 Gemini Enterprise Agent Platform 中的所有資源。 aiplatform.datasets.get
aiplatform.datasets.update

事前準備

將資源納入資料網域之前,請確認您具備必要角色,且已啟用 API。

啟用 API

啟用 Dataplex API。

啟用 API 時所需的角色

如要啟用 API,您必須具備 serviceusage.services.enable 權限。如果您建立了專案,可能已透過「擁有者」角色 (roles/owner) 取得這項權限。否則,您可以透過「服務使用情形管理員」角色 (roles/serviceusage.serviceUsageAdmin) 取得這項權限。瞭解如何授予角色

啟用 API

必要的角色

如要取得將資源繫結至資料網域所需的權限,請要求管理員授予您專案的下列 IAM 角色:

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

您或許也能透過自訂角色或其他預先定義的角色,取得必要權限。

取得網域 IAM 主體

如要授權資料網域對資源執行動作,您需要網域 IAM 主體 ID。請記下網域主體 ID,因為在資源上授權網域時,您必須提供這個 ID。

控制台

  1. 前往 Google Cloud 控制台的「資料網域」頁面。

    前往「資料網域」

  2. 按一下網域名稱,前往網域詳細資料頁面。

  3. 在「總覽」分頁中,依序前往「資訊」和「ID」

  4. 複製「IAM principal」(IAM 主體) 的值。格式如下:

principal://dataplex.googleapis.com/projects/DOMAIN_PROJECT_NUMBER/name/locations/LOCATION_ID/dataDomains/DOMAIN_ID

REST

如要使用 REST API 取得網域主體,請使用 projects.locations.dataDomains.get 方法取得網域資料。回應會包含 policyMember 欄位,其中包含網域的 IAM 主體 (iamPolicyNamePrincipaliamPolicyUidPrincipal):

使用任何要求資料之前,請先修改下列項目的值:

  • PROJECT_ID:專案的 ID。 Google Cloud
  • LOCATION_ID:資料網域所在的區域。例如:us-central1
  • DOMAIN_ID:資料網域或子網域的專屬 ID。

HTTP 方法和網址:

GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID

如要傳送要求,請選擇以下其中一個選項:

curl

執行下列指令:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID"

PowerShell

執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

授權資源上的網域

如要繫結資源,您必須先在目標資源上,授予網域主體所需的 IAM 角色。

控制台

  1. 在 Google Cloud 控制台中,前往目標資源並開啟該資源的權限面板:

    • 如要授予專案、Gemini Enterprise Agent Platform 資料集、Dataproc Metastore 資料庫和資料表、Dataform 存放區、AlloyDB for PostgreSQL 執行個體、BigLake 資料表的存取權,請前往「IAM」頁面,然後按一下「授予存取權」
    • 如果是資料產品,請前往「資料產品」頁面,選取資料產品,然後依序點選「分享」 >「設定權限」
    • 如要分享 BigQuery 資料集和資料表,請前往 BigQuery 頁面,選取資料集或資料表,然後按一下「共用」>「管理權限」
    • 如果是 Spanner 資料庫,請前往 Spanner 頁面,選取資料庫並點選「權限」分頁標籤。
  2. 按一下「新增主體」或類似選項。

  3. 在「New principals」(新增主體) 欄位中,貼上網域的 IAM 主體。如需取得網域主體的操作說明,請參閱「取得網域 IAM 主體」一節。

  4. 在「Select a role」(選取角色) 選單中,選取符合您用途的角色。如需完整角色清單,請參閱「建議用於授權網域的角色」一節。等待兩到三分鐘,讓變更生效。

  5. 按一下 [儲存]

gcloud

使用產品的 Google Cloud CLI 指令,將必要角色授予網域主體:

principal://dataplex.googleapis.com/projects/DOMAIN_PROJECT_NUMBER/name/locations/LOCATION_ID/dataDomains/DOMAIN_ID

舉例來說,使用 gcloud 繫結專案:

gcloud projects add-iam-policy-binding RESOURCE_PROJECT_ID \
--member "principal://dataplex.googleapis.com/projects/DOMAIN_PROJECT_NUMBER/name/locations/LOCATION_ID/dataDomains/DOMAIN_ID" \
--role ROLE

更改下列內容:

  • RESOURCE_PROJECT_ID:要授權的目標專案 ID。
  • DOMAIN_PROJECT_NUMBER:代管資料網域的專案編號。
  • LOCATION_ID:資料網域所在的區域。例如:us-central1
  • DOMAIN_ID:資料網域的 ID。
  • ROLE:符合所需繫結用途的 IAM 角色。

如需特定產品指令 (例如 BigQuery 的 bq add-iam-policy-binding),請參閱產品的 API 說明文件。

REST

如要授予網域主體資源權限,通常會使用 getIamPolicy 取得現有 IAM 政策,附加網域主體繫結和所選角色,然後使用 setIamPolicy 設定更新後的政策。

以下範例說明如何為專案設定 IAM 政策。

取得目前的 IAM 政策

使用任何要求資料之前,請先修改下列項目的值:

  • RESOURCE_PROJECT_ID:要授權的目標專案 ID。

HTTP 方法和網址:

POST https://cloudresourcemanager.googleapis.com/v1/projects/RESOURCE_PROJECT_ID:getIamPolicy

如要傳送要求,請選擇以下其中一個選項:

curl

執行下列指令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://cloudresourcemanager.googleapis.com/v1/projects/RESOURCE_PROJECT_ID:getIamPolicy"

PowerShell

執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://cloudresourcemanager.googleapis.com/v1/projects/RESOURCE_PROJECT_ID:getIamPolicy" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

設定更新後的政策,包括網域主體

使用任何要求資料之前,請先修改下列項目的值:

  • RESOURCE_PROJECT_ID:要授權的目標專案 ID。
  • DOMAIN_PROJECT_NUMBER:代管資料網域的專案編號。
  • LOCATION_ID:資料網域所在的區域。例如:us-central1
  • DOMAIN_ID:資料網域的 ID。
  • ROLE:符合所需繫結用途的 IAM 角色。

HTTP 方法和網址:

POST https://cloudresourcemanager.googleapis.com/v1/projects/RESOURCE_PROJECT_ID:setIamPolicy

JSON 要求內文:

{
  "policy": {
    "bindings": [
      {
        "role": "ROLE",
        "members": [
          "principal://dataplex.googleapis.com/projects/DOMAIN_PROJECT_NUMBER/name/locations/LOCATION_ID/dataDomains/DOMAIN_ID"
        ]
      }
    ]
  }
}

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://cloudresourcemanager.googleapis.com/v1/projects/RESOURCE_PROJECT_ID:setIamPolicy"

PowerShell

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://cloudresourcemanager.googleapis.com/v1/projects/RESOURCE_PROJECT_ID:setIamPolicy" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

如要瞭解如何為其他資源設定政策,請參閱下列 API 說明文件:

將資源繫結至網域

在目標資源上授權網域後,即可將資源繫結至網域。 如果您加入專案,專案中的所有資源都會自動新增至網域,除非您明確覆寫資源的納入狀態。

控制台

  1. 前往 Google Cloud 控制台的「資料網域」頁面。

    前往「資料網域」

  2. 選取要新增資源的網域。

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

  4. 視要加入的項目而定,按一下「新增資源」或「新增專案」

  5. 搜尋並選取要納入網域的資源。

  6. 按一下「選取」

REST

如要在網域中加入資源,請使用 projects.locations.dataDomains.bindings.create 方法。

如要查看要納入網域的資源酬載,請展開下列其中一個部分:

專案

使用任何要求資料之前,請先修改下列項目的值:

  • PROJECT_ID:託管資料網域的 Google Cloud 專案 ID。
  • LOCATION_ID:資料網域所在的區域。例如:us-central1
  • DOMAIN_ID:資料網域的專屬 ID。
  • RESOURCE_PROJECT_ID:要納入網域的目標專案 ID。
  • BINDING_ID:這個資源繫結的選用專屬 ID。

HTTP 方法和網址:

POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

JSON 要求內文:

{
  "resource": "//cloudresourcemanager.googleapis.com/projects/RESOURCE_PROJECT_ID"
}

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

BigQuery 資料集和資料表

使用任何要求資料之前,請先修改下列項目的值:

  • PROJECT_ID:託管資料網域的 Google Cloud 專案 ID。
  • LOCATION_ID:資料網域所在的區域。例如:us-central1
  • DOMAIN_ID:資料網域的專屬 ID。
  • RESOURCE_PROJECT_ID:代管資源的 Google Cloud 專案 ID。
  • DATASET_ID:目標資源的 ID (例如 BigQuery 資料集)。
  • BINDING_ID:這個資源繫結的選用專屬 ID。

HTTP 方法和網址:

POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

JSON 要求內文:

{
  "resource": "//bigquery.googleapis.com/projects/RESOURCE_PROJECT_ID/datasets/DATASET_ID"
}

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

資料產品

使用任何要求資料之前,請先修改下列項目的值:

  • PROJECT_ID:託管資料網域的 Google Cloud 專案 ID。
  • LOCATION_ID:資料網域和資源所在的區域。例如:us-central1
  • DOMAIN_ID:資料網域的專屬 ID。
  • RESOURCE_PROJECT_ID:託管資料產品的 Google Cloud 專案 ID。
  • DATA_PRODUCT_ID:目標資料產品的專屬 ID。
  • BINDING_ID:這個資源繫結的選用專屬 ID。

HTTP 方法和網址:

POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

JSON 要求內文:

{
  "resource": "//dataplex.googleapis.com/projects/RESOURCE_PROJECT_ID/locations/LOCATION_ID/dataProducts/DATA_PRODUCT_ID"
}

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

Dataform 存放區

使用任何要求資料之前,請先修改下列項目的值:

  • DOMAIN_PROJECT_ID:代管資料網域的專案 ID。
  • DOMAIN_LOCATION_ID:資料網域的代管區域。例如:us-central1
  • DOMAIN_ID:資料網域的 ID。
  • BINDING_ID:要指派給新資料網域繫結的 ID。
  • PROJECT_ID:存放區所在的專案 ID。
  • LOCATION_ID:代管存放區的區域。
  • REPOSITORY_ID:Dataform 存放區的 ID。

HTTP 方法和網址:

POST https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

JSON 要求內文:

{
  "resource": "//dataform.googleapis.com/projects/PROJECT_ID/locations/LOCATION_ID/repositories/REPOSITORY_ID"
}

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

Dataproc Metastore 資料庫

使用任何要求資料之前,請先修改下列項目的值:

  • DOMAIN_PROJECT_ID:代管資料網域的專案 ID。
  • DOMAIN_LOCATION_ID:資料網域的代管區域。例如:us-central1
  • DOMAIN_ID:資料網域的 ID。
  • BINDING_ID:要指派給新資料網域繫結的 ID。
  • PROJECT_ID:代管資料庫的專案 ID。
  • LOCATION_ID:代管服務的區域。
  • SERVICE_ID:Dataproc Metastore 服務的 ID。
  • DATABASE_ID:資料庫 ID。

HTTP 方法和網址:

POST https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

JSON 要求內文:

{
  "resource": "//metastore.googleapis.com/projects/PROJECT_ID/locations/LOCATION_ID/services/SERVICE_ID/databases/DATABASE_ID"
}

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

Dataproc Metastore 資料表

使用任何要求資料之前,請先修改下列項目的值:

  • DOMAIN_PROJECT_ID:代管資料網域的專案 ID。
  • DOMAIN_LOCATION_ID:資料網域的代管區域。例如:us-central1
  • DOMAIN_ID:資料網域的 ID。
  • BINDING_ID:要指派給新資料網域繫結的 ID。
  • PROJECT_ID:託管資料表的專案 ID。
  • LOCATION_ID:代管服務的區域。
  • SERVICE_ID:Dataproc Metastore 服務的 ID。
  • DATABASE_ID:資料庫 ID。
  • TABLE_ID:資料表 ID。

HTTP 方法和網址:

POST https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

JSON 要求內文:

{
  "resource": "//metastore.googleapis.com/projects/PROJECT_ID/locations/LOCATION_ID/services/SERVICE_ID/databases/DATABASE_ID/tables/TABLE_ID"
}

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

Spanner 資料庫

使用任何要求資料之前,請先修改下列項目的值:

  • DOMAIN_PROJECT_ID:代管資料網域的專案 ID。
  • DOMAIN_LOCATION_ID:資料網域的代管區域。例如:us-central1
  • DOMAIN_ID:資料網域的 ID。
  • BINDING_ID:要指派給新資料網域繫結的 ID。
  • PROJECT_ID:代管資料庫的專案 ID。
  • INSTANCE_ID:Spanner 執行個體的 ID。
  • DATABASE_ID:資料庫 ID。

HTTP 方法和網址:

POST https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

JSON 要求內文:

{
  "resource": "//spanner.googleapis.com/projects/PROJECT_ID/instances/INSTANCE_ID/databases/DATABASE_ID"
}

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

BigLake

使用任何要求資料之前,請先修改下列項目的值:

  • DOMAIN_PROJECT_ID:代管資料網域的專案 ID。
  • DOMAIN_LOCATION_ID:資料網域的代管區域。例如:us-central1
  • DOMAIN_ID:資料網域的 ID。
  • BINDING_ID:要指派給新資料網域繫結的 ID。
  • PROJECT_ID:代管目錄的專案 ID。
  • LOCATION_ID:代管目錄的區域。
  • CATALOG_ID:目錄 ID。
  • DATABASE_ID:資料庫 ID。
  • TABLE_ID:資料表 ID。

HTTP 方法和網址:

POST https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

JSON 要求內文:

{
  "resource": "//biglake.googleapis.com/projects/PROJECT_ID/catalogs/CATALOG_ID/databases/DATABASE_ID/tables/TABLE_ID"
}

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

AlloyDB for PostgreSQL

使用任何要求資料之前,請先修改下列項目的值:

  • DOMAIN_PROJECT_ID:代管資料網域的專案 ID。
  • DOMAIN_LOCATION_ID:資料網域的代管區域。例如:us-central1
  • DOMAIN_ID:資料網域的 ID。
  • BINDING_ID:要指派給新資料網域繫結的 ID。
  • PROJECT_ID:代管叢集的專案 ID。
  • LOCATION_ID:代管叢集的區域。
  • CLUSTER_ID:叢集 ID。
  • INSTANCE_ID:執行個體的 ID。

HTTP 方法和網址:

POST https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

JSON 要求內文:

{
  "resource": "//alloydb.googleapis.com/projects/PROJECT_ID/locations/LOCATION_ID/clusters/CLUSTER_ID/instances/INSTANCE_ID"
}

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

Gemini Enterprise Agent Platform

使用任何要求資料之前,請先修改下列項目的值:

  • DOMAIN_PROJECT_ID:代管資料網域的專案 ID。
  • DOMAIN_LOCATION_ID:資料網域的代管區域。例如:us-central1
  • DOMAIN_ID:資料網域的 ID。
  • BINDING_ID:要指派給新資料網域繫結的 ID。
  • PROJECT_ID:代管資料集的專案 ID。
  • LOCATION_ID:代管資料集的區域。
  • DATASET_ID:資料集 ID。

HTTP 方法和網址:

POST https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID

JSON 要求內文:

{
  "resource": "//aiplatform.googleapis.com/projects/PROJECT_ID/locations/LOCATION_ID/datasets/DATASET_ID"
}

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID"

PowerShell

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://dataplex.googleapis.com/v1/projects/DOMAIN_PROJECT_ID/locations/DOMAIN_LOCATION_ID/dataDomains/DOMAIN_ID/bindings?data_domain_binding_id=BINDING_ID" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

查看包含的資源

查看直接繫結至資料網域的資料夾、專案和資源。

控制台

  1. 前往 Google Cloud 控制台的「資料網域」頁面。

    前往「資料網域」

  2. 按一下網域名稱。

  3. 按一下「資源」分頁標籤。這份清單會顯示直接加入網域的資源。

REST

如要列出納入的資源繫結,請使用 projects.locations.dataDomains.bindings.list 方法:

使用任何要求資料之前,請先修改下列項目的值:

  • PROJECT_ID:專案的 ID。 Google Cloud
  • LOCATION_ID:資料網域所在的區域。例如:us-central1
  • DOMAIN_ID:資料網域的專屬 ID。

HTTP 方法和網址:

GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings

如要傳送要求,請選擇以下其中一個選項:

curl

執行下列指令:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings"

PowerShell

執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

從網域中移除資源

移除資源會將其從資料網域階層中取消繫結。

控制台

  1. 前往 Google Cloud 控制台的「資料網域」頁面。

    前往「資料網域」

  2. 按一下網域名稱。

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

  4. 選取要移除的資源。

  5. 按一下「Delete」(刪除) 並確認刪除。

REST

如要刪除資源繫結,請使用 projects.locations.dataDomains.bindings.delete 方法。

使用任何要求資料之前,請先修改下列項目的值:

  • PROJECT_ID:專案的 ID。 Google Cloud
  • LOCATION_ID:資料網域所在的區域。例如:us-central1
  • DOMAIN_ID:資料網域的專屬 ID。
  • BINDING_ID:資源繫結的專屬 ID。

HTTP 方法和網址:

DELETE https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings/BINDING_ID

如要傳送要求,請選擇以下其中一個選項:

curl

執行下列指令:

curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings/BINDING_ID"

PowerShell

執行下列指令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/dataDomains/DOMAIN_ID/bindings/BINDING_ID" | Select-Object -Expand Content

您應該會收到執行成功的狀態碼 (2xx) 和空白回應。

後續步驟