Knowledge Catalog (舊稱 Dataplex Universal Catalog) 的資料網域可讓您將專案、資料產品和個別資產 (例如 BigQuery 資料集和資料表) 整理成邏輯階層。授權網域並建立資源繫結後,使用者就能在該業務情境中搜尋,找出包含的資源並查看其中繼資料。
運作方式
如要在網域中加入資源,請務必執行下列步驟:
關於資料網域授權
網域授權會在資源和網域之間建立信任關係。資源擁有者會將 IAM 權限授予目標資源或專案的資料網域 IAM 主體。這項操作可讓 Knowledge Catalog 授權並執行繫結建立作業,將資源連結至網域。
只有在建立繫結時,系統才會驗證網域授權。也就是說,如果您撤銷網域主體的資源 IAM 角色,該資源不會自動解除繫結或從網域中移除。具備 roles/dataplex.dataDomainEntryReader 角色的網域使用者會繼續探索資源並查看其中繼資料,直到資源與網域的繫結明確刪除為止。
網域授權和網域使用者權限
使用資料網域時,請務必區分「資料網域授權」和「授予使用者資料網域權限」:
- 資料網域授權:授權目標資源的資料網域。您需要為基礎資源 (例如專案或 BigQuery 資料集) 授予資料網域 IAM 主體權限,才能建立資源與網域之間的繫結。
- 將資料網域權限授予使用者:這代表授予使用者或服務帳戶權限,讓他們與資料網域本身互動。您可以直接在資料網域中,將 IAM 角色授予使用者,讓他們在 Knowledge Catalog 中查看、編輯或管理網域。詳情請參閱「資料網域角色和權限」。
角色類型
在目標資源上授權資料網域時,您可以選取下列其中一種 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。此外,請注意下列限制:
- 一項資源只能屬於一個網域。
- 一個網域最多可包含 500 項資源。
啟用 API
啟用 Dataplex API (如果尚未啟用)。
啟用 API 所需的角色
您必須具備 serviceusage.services.enable 權限,才能啟用 API。如果您建立了專案,可能已透過「擁有者」角色 (roles/owner) 取得這項權限。否則,您可以透過「Service Usage 管理員」角色 (roles/serviceusage.serviceUsageAdmin) 取得這項權限。瞭解如何授予角色。
必要的角色
如要取得將資源繫結至資料網域所需的權限,請要求管理員授予您專案的下列 IAM 角色:
-
管理網域和資源繫結:Dataplex 資料網域編輯者 (
roles/dataplex.dataDomainEditor)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
取得網域 IAM 主體
如要授權資料網域對資源執行動作,您需要網域 IAM 主體 ID。請備妥網域主體 ID,因為您必須在授權資源上的網域時提供該 ID。
控制台
前往 Google Cloud 控制台的「Data domains」(資料網域) 頁面。
按一下網域名稱,前往網域詳細資料頁面。
在「總覽」分頁中,依序前往「資訊」和「ID」。
複製「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: Google Cloud 專案的 ID。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 角色授予網域主體,才能繫結資源。
控制台
在 Google Cloud 控制台,前往目標資源,然後開啟該資源的權限面板:
- 如要授予專案、Gemini Enterprise Agent Platform 資料集、Dataproc Metastore 資料庫和資料表、Dataform 存放區、AlloyDB for PostgreSQL 執行個體、BigLake 資料表的存取權,請前往「IAM」頁面,然後點選「授予存取權」。
- 如為資料產品,請前往「資料產品」頁面,選取資料產品,然後依序點選「共用」>「設定權限」。
- 如要查看 BigQuery 資料集和資料表,請前往「BigQuery」頁面,選取資料集或資料表,然後依序點選「共用」>「管理權限」。
- 如果是 Spanner 資料庫,請前往 「Spanner」頁面,選取資料庫,然後按一下「權限」分頁標籤。
按一下「Add Principal」(新增主體) 或類似選項。
在「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 控制台的「Data domains」(資料網域) 頁面。
選取要新增資源的網域。
按一下「資源」分頁標籤。
視要加入的項目而定,按一下「新增資源」或「新增專案」。
搜尋並選取要納入網域的資源。
按一下「選取」。
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 控制台的「Data domains」(資料網域) 頁面。
按一下網域名稱。
按一下「資源」分頁標籤。這份清單會顯示直接加入網域的資源。
REST
如要列出包含的資源繫結,請使用 projects.locations.dataDomains.bindings.list 方法:
使用任何要求資料之前,請先修改下列項目的值:
PROJECT_ID: Google Cloud 專案的 ID。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) 和空白回應。
從網域中移除資源
移除資源後,資源會與資料網域階層解除繫結。
控制台
前往 Google Cloud 控制台的「Data domains」(資料網域) 頁面。
按一下網域名稱。
按一下「資源」分頁標籤。
選取要移除的資源。
按一下「Delete」(刪除) 並確認刪除。
REST
如要刪除資源繫結,請使用 projects.locations.dataDomains.bindings.delete 方法。
使用任何要求資料之前,請先修改下列項目的值:
PROJECT_ID: Google Cloud 專案的 ID。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) 和空白回應。