本文說明如何在資料網域中納入資源,以便整理資料。
- 一次只能將資源納入一個網域。您無法將單一資源新增至多個網域。* 單一資料網域最多可包含 500 個直接資源。
運作方式
如要在網域中加入資源,請完成下列步驟:
關於資料網域授權
網域授權會在資源和網域之間建立信任關係。資源擁有者會將目標資源或專案的 IAM 權限授予資料網域 IAM 主體。這項操作可授權 Knowledge Catalog 建立繫結,將資源連結至網域。
只有在建立繫結時,系統才會驗證網域授權。也就是說,如果您撤銷資源上網域主體的 IAM 角色,該資源不會自動取消繫結或從網域中移除。在明確刪除資源與網域的繫結前,具備 roles/dataplex.dataDomainEntryReader 角色的網域使用者仍可探索資源並查看其中繼資料。
網域授權和網域使用者權限
使用資料網域時,請務必區分「資料網域授權」和「授予使用者資料網域權限」:
- 資料網域授權:這是指授權目標資源上的資料網域。您在基礎資源 (例如專案或 BigQuery 資料集) 上授予資料網域 IAM 主體權限,即可在資源和網域之間建立繫結。
- 授予使用者資料網域權限:這是指授予使用者或服務帳戶與資料網域互動的權限。您可以在資料網域中直接授予使用者 IAM 角色,讓他們在知識型錄中檢視、編輯或管理網域。詳情請參閱「資料網域角色和權限」。
角色類型
在目標資源上授權資料網域時,您可以選取屬於下列任一角色類型的 IAM 角色:「讀取者」、「寫入者」或「管理員」。
一般而言,系統會保留「寫入者」和「管理員」角色類型,讓網域對授權資源執行下列範圍較廣的操作:
- 網域可透過「寫入者」角色類型,管理資源的中繼資料編輯權限。
- 網域管理員角色類型可管理資源的任何權限。
在資料網域的範圍內,這三種角色類型都允許資料網域建立與目標資源的繫結。建立繫結後,使用者就能在網域中搜尋資源並查看其中繼資料。詳情請參閱「搜尋資料資源」。
選擇角色類型時,請考量您要授予網域的資源長期存取層級。
建議用於網域授權的角色
下表列出建議的角色,可用於授權網域檢查資源。您可以為每項資源選擇與建議不同的角色,但這類角色必須包含執行資源繫結所需的權限。
從清單中選取要查看角色的資源類型。
| 資源類型 | 角色類型 | 建議的角色 | 說明 | 所需權限 |
|---|---|---|---|---|
| 專案 | 讀取者 | roles/browser |
授予網域權限,以取得專案相關資訊。 |
resourcemanager.projects.get
|
| 寫入者 | roles/editor |
授予網域權限,以取得專案相關資訊及管理專案中繼資料。 |
resourcemanager.projects.getresourcemanager.projects.update
|
|
| 管理員 | roles/owner |
授予網域管理員專案管理權,包括探索、中繼資料治理和存取權政策管理。 |
resourcemanager.projects.getresourcemanager.projects.updateresourcemanager.projects.setIamPolicy
|
|
| BigQuery 資料集 | 讀取者 | roles/bigquery.metadataViewer |
授予網域權限,以取得 BigQuery 資料集的相關資訊。 |
bigquery.datasets.get
|
| 寫入者 | roles/bigquery.dataEditor |
授予網域權限,以取得 BigQuery 資料集的相關資訊,並管理其中繼資料。 |
bigquery.datasets.getbigquery.datasets.updateTag
|
|
| 管理員 | roles/bigquery.dataOwner |
讓網域管理員管理 BigQuery 資料集,包括探索、中繼資料管理和存取政策管理。 |
bigquery.datasets.getbigquery.datasets.updateTagbigquery.datasets.setIamPolicy
|
|
| BigQuery 資料表 | 讀取者 | roles/bigquery.metadataViewer |
授予網域權限,以取得 BigQuery 資料表的相關資訊。 |
bigquery.tables.get
|
| 寫入者 | roles/bigquery.dataEditor |
授予網域權限,可取得 BigQuery 資料表的相關資訊,並管理其中繼資料。 |
bigquery.tables.getbigquery.tables.update
|
|
| 管理員 | roles/bigquery.dataOwner |
讓網域管理員管理 BigQuery 資料表,包括探索、中繼資料管理和存取政策管理。 |
bigquery.tables.getbigquery.tables.updatebigquery.tables.setIamPolicy
|
|
| 資料產品 | 讀取者 | roles/dataplex.dataProductsViewer |
授予網域權限,以取得資料產品的相關資訊。 |
dataplex.dataProducts.get
|
| 寫入者 | roles/dataplex.dataProductsEditor |
授予網域權限,可取得資料產品的相關資訊,並管理其中繼資料。 |
dataplex.dataProducts.getdataplex.dataProducts.update
|
|
| 管理員 | roles/dataplex.dataProductsAdmin |
可讓網域管理員管理資料產品,包括探索資料產品、管理中繼資料,以及管理存取權政策。 |
dataplex.dataProducts.getdataplex.dataProducts.updatedataplex.dataProducts.setIamPolicy
|
|
| Dataform 存放區 | 讀取者 | roles/dataform.codeViewer |
授予網域 Dataform 程式碼資源的唯讀存取權。 |
dataform.repositories.get
|
| 寫入者 | roles/dataform.codeOwner |
授予網域 Dataform 存放區和程式碼資源的完整存取權。 |
dataform.repositories.get
|
|
| 管理員 | roles/dataform.codeOwner |
授予網域 Dataform 存放區和程式碼資源的完整存取權。 |
dataform.repositories.get
|
|
| Dataproc Metastore 資料庫 | 讀取者 | roles/metastore.metadataUser |
授予網域權限,可取得 Dataproc Metastore 資料庫清單。 |
metastore.databases.get
|
| 寫入者 | roles/metastore.metadataEditor |
授予網域讀取及修改 Dataproc Metastore 資料庫中繼資料,以及這些資料庫內資料表的權限。 |
metastore.databases.get
|
|
| 管理員 | roles/metastore.metadataOwner |
授予網域存取 Dataproc Metastore 資料庫中繼資料及資料庫內資料表的完整權限。 |
metastore.databases.get
|
|
| 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
|
|
| Cloud Spanner 資料庫 | 讀取者 | roles/spanner.databaseReader |
授予網域權限,可從 Spanner 資料庫讀取資料、執行 SQL 查詢,以及檢視資料庫的結構定義。 |
spanner.databases.get
|
| 寫入者 | roles/spanner.editor |
授予網域 Spanner 資源的管理和作業權限,包括執行個體和資料庫管理、查詢執行、備份和還原管理,以及資源管理。 |
spanner.databases.get
|
|
| 管理員 | roles/spanner.databaseAdmin |
授予網域完整權限,可管理專案中的 Spanner 執行個體,以及這些執行個體中的資料庫。 |
spanner.databases.get
|
|
| BigLake 資料表 | 讀取者 | roles/biglake.metadataViewer |
授予網域所有 BigLake 資源的中繼資料唯讀存取權。 |
biglake.tables.get
|
| 寫入者 | roles/biglake.editor |
授予網域所有 BigLake 資源的讀寫權限。 |
biglake.tables.get
|
|
| 管理員 | roles/biglake.admin |
授予網域所有 BigLake 資源的完整存取權。 |
biglake.tables.get
|
|
| AlloyDB for PostgreSQL 執行個體 | 讀取者 | roles/alloydb.viewer |
授予網域 AlloyDB for PostgreSQL 資源唯讀存取權。 |
alloydb.instances.get
|
| 寫入者 | roles/alloydb.editor |
授予網域對 AlloyDB for PostgreSQL 資源的讀寫權限。 |
alloydb.instances.get
|
|
| Gemini Enterprise Agent Platform 資料集 | 讀取者 | roles/aiplatform.viewer |
授予網域權限,可查看 Gemini Enterprise Agent Platform 中的所有資源。 |
aiplatform.datasets.get
|
| 寫入者 | roles/aiplatform.user |
授予網域權限,可使用 Gemini Enterprise Agent Platform 中的所有資源。 |
aiplatform.datasets.get
|
事前準備
將資源納入資料網域之前,請確認您具備必要角色,且已啟用 API。
啟用 API
啟用 Dataplex API。
啟用 API 時所需的角色
如要啟用 API,您必須具備 serviceusage.services.enable 權限。如果您建立了專案,可能已透過「擁有者」角色 (roles/owner) 取得這項權限。否則,您可以透過「服務使用情形管理員」角色 (roles/serviceusage.serviceUsageAdmin) 取得這項權限。瞭解如何授予角色。
必要的角色
如要取得將資源繫結至資料網域所需的權限,請要求管理員授予您專案的下列 IAM 角色:
-
管理網域和資源繫結:
Dataplex 資料網域編輯者 (
roles/dataplex.dataDomainEditor)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
取得網域 IAM 主體
如要授權資料網域對資源執行動作,您需要網域 IAM 主體 ID。請記下網域主體 ID,因為在資源上授權網域時,您必須提供這個 ID。
控制台
前往 Google Cloud 控制台的「資料網域」頁面。
按一下網域名稱,前往網域詳細資料頁面。
在「總覽」分頁中,依序前往「資訊」和「ID」。
複製「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 主體 (iamPolicyNamePrincipal 或 iamPolicyUidPrincipal):
使用任何要求資料之前,請先修改下列項目的值:
PROJECT_ID:專案的 ID。 Google CloudLOCATION_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 角色。
控制台
在 Google Cloud 控制台中,前往目標資源並開啟該資源的權限面板:
- 如要授予專案、Gemini Enterprise Agent Platform 資料集、Dataproc Metastore 資料庫和資料表、Dataform 存放區、AlloyDB for PostgreSQL 執行個體、BigLake 資料表的存取權,請前往「IAM」頁面,然後按一下「授予存取權」。
- 如果是資料產品,請前往「資料產品」頁面,選取資料產品,然後依序點選「分享」 >「設定權限」。
- 如要分享 BigQuery 資料集和資料表,請前往 BigQuery 頁面,選取資料集或資料表,然後按一下「共用」>「管理權限」。
- 如果是 Spanner 資料庫,請前往 Spanner 頁面,選取資料庫並點選「權限」分頁標籤。
按一下「新增主體」或類似選項。
在「New principals」(新增主體) 欄位中,貼上網域的 IAM 主體。如需取得網域主體的操作說明,請參閱「取得網域 IAM 主體」一節。
在「Select a role」(選取角色) 選單中,選取符合您用途的角色。如需完整角色清單,請參閱「建議用於授權網域的角色」一節。等待兩到三分鐘,讓變更生效。
按一下 [儲存]。
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 說明文件:
將資源繫結至網域
在目標資源上授權網域後,即可將資源繫結至網域。 如果您加入專案,專案中的所有資源都會自動新增至網域,除非您明確覆寫資源的納入狀態。
控制台
前往 Google Cloud 控制台的「資料網域」頁面。
選取要新增資源的網域。
按一下「資源」分頁標籤。
視要加入的項目而定,按一下「新增資源」或「新增專案」。
搜尋並選取要納入網域的資源。
按一下「選取」。
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) 和空白回應。
查看包含的資源
查看直接繫結至資料網域的資料夾、專案和資源。
控制台
前往 Google Cloud 控制台的「資料網域」頁面。
按一下網域名稱。
按一下「資源」分頁標籤。這份清單會顯示直接加入網域的資源。
REST
如要列出納入的資源繫結,請使用 projects.locations.dataDomains.bindings.list 方法:
使用任何要求資料之前,請先修改下列項目的值:
PROJECT_ID:專案的 ID。 Google CloudLOCATION_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) 和空白回應。
從網域中移除資源
移除資源會將其從資料網域階層中取消繫結。
控制台
前往 Google Cloud 控制台的「資料網域」頁面。
按一下網域名稱。
按一下「資源」分頁標籤。
選取要移除的資源。
按一下「Delete」(刪除) 並確認刪除。
REST
如要刪除資源繫結,請使用 projects.locations.dataDomains.bindings.delete 方法。
使用任何要求資料之前,請先修改下列項目的值:
PROJECT_ID:專案的 ID。 Google CloudLOCATION_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) 和空白回應。