借助 Knowledge Catalog(以前称为 Dataplex Universal Catalog),您可以更新、授予访问权限和删除现有数据产品。您可以使资产、元数据和合同保持最新状态,以便数据使用方能够找到并使用可信数据。
本文档面向数据产品所有者。如需详细了解数据产品的架构和关键概念,请参阅数据产品简介。
准备工作
-
启用 Knowledge Catalog 和 BigQuery API(如果尚未启用)。
启用 API 所需的角色
如需启用 API,您需要拥有
serviceusage.services.enable权限。如果您创建了项目,则可能已经通过 Owner 角色 (roles/owner) 拥有此权限。否则,您可以通过 Service Usage Admin 角色 (roles/serviceusage.serviceUsageAdmin) 获得此权限。了解如何授予角色。
所需的角色
如需获得管理数据产品所需的权限,请让管理员向您授予项目的以下 IAM 角色:
-
拥有创建、更新、删除和管理数据产品权限的完整权限:Dataplex Data Products Admin (
roles/dataplex.dataProductsAdmin) -
更新和管理现有数据产品:Dataplex Data Products Editor (
roles/dataplex.dataProductsEditor) -
添加
schema、overview和contacts等切面:Dataplex Entry and EntryLink Owner (roles/dataplex.entryOwner) -
搜索和添加资产:Dataplex Catalog Viewer (
roles/dataplex.catalogViewer) -
修改系统切面类型,例如刷新频率的文档和协定切面:Dataplex Catalog Editor (
roles/dataplex.catalogEditor)
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
这些预定义角色可提供管理数据产品所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
管理数据产品需要以下权限:
-
修改
overview系统切面类型:dataplex.entryGroups.useOverviewAspect -
修改
refresh cadence系统切面类型:dataplex.entryGroups.useRefreshCadenceAspect -
批准数据产品的访问权限请求:
dataplex.dataProducts.approve
BigQuery 模型的访问权限控制
对数据产品中的 BigQuery 模型的访问权限通过应用于父级数据集 IAM 政策的 IAM 条件进行管理。
如果您删除 BigQuery 模型,然后使用相同名称重新创建该模型,Knowledge Catalog 会恢复之前通过数据产品授予 Google 群组或服务账号的权限。
设置权限,使数据产品可被发现
为了让潜在使用者能够搜索、查看和请求访问数据产品,数据产品所有者必须通过在数据产品资源上授予适当的 IAM 角色,确保产品可被发现:
搜索、查看和请求访问数据产品:Dataplex Data Products Consumer (
roles/dataplex.dataProductsConsumer)查看数据产品定义和元数据(只读权限):Dataplex Data Products Viewer (
roles/dataplex.dataProductsViewer)
管理数据产品访问权限请求
当数据产品使用方请求访问权限时,数据产品所有者会收到邮件通知。所有者可以使用 Google Cloud 控制台或 API 查看、批准或拒绝这些请求。
控制台
查看特定数据产品的访问权限请求
在 Google Cloud 控制台中,前往 Knowledge Catalog 数据产品页面。
点击要查看访问权限请求的数据产品。
点击访问请求管理标签页。
选择您要审核其请求的请求者。
点击 操作,然后点击批准或拒绝。
点击保存。
审核针对多个数据产品的访问权限请求
在 Google Cloud 控制台中,前往 Knowledge Catalog 治理工作流页面。
点击待审批标签页。
可选:按特定数据产品名称过滤列表,以隔离其请求。
选择目标请求,然后点击批准或拒绝。
点击保存。
获批后行为
用户请求:为自己的用户身份申请访问权限的使用方会自动添加为映射到访问权限群组的 Google 群组的成员。
服务账号请求:申请服务账号访问权限的使用方会被授予模拟映射到访问权限群组的数据提供方服务账号的权限。
处理完毕后,请求状态会自动更新,并且条目会移至审批日志标签页。
REST
列出所有待处理的访问权限请求
如需列出特定项目和位置中等待您审核的所有访问请求,请使用自定义集合方法 :listReviewable 发送 GET 请求:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/changeRequests:listReviewable"
替换以下内容:
PROJECT_ID:您的 Google Cloud 项目的 ID
LOCATION:数据产品所在的区域(例如
us-central1)
批准访问权限请求
拥有 dataplex.dataProducts.approve 权限的数据产品所有者可以通过向自定义方法 :approve 发送 POST 请求来批准待处理请求:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/changeRequests/CHANGE_REQUEST_ID:approve"
替换以下内容:
PROJECT_ID:您的 Google Cloud 项目的 ID
LOCATION:数据产品所在的区域(例如
us-central1)CHANGE_REQUEST_ID:您要批准的访问权限请求的唯一 ID
与控制台驱动的审批不同,使用 REST API 批准更改请求不会自动修改 Google 群组成员资格或配置服务账号令牌模拟。您必须手动完成以下下游访问权限管理步骤:
对于用户身份访问请求:将数据产品使用方添加到映射的 Google 群组。如需了解详情,请参阅向 Google 群组添加成员资格。
对于服务账号访问权限请求:通过运行以下命令,向资源上的数据产品使用者的服务账号授予 Service Account Token Creator (
roles/iam.serviceAccountTokenCreator) IAM 角色:gcloud iam service-accounts add-iam-policy-binding PRODUCER_SERVICE_ACCOUNT \ --member="serviceAccount:CONSUMER_SERVICE_ACCOUNT" \ --role="roles/iam.serviceAccountTokenCreator"替换以下内容:
PRODUCER_SERVICE_ACCOUNT:映射到数据产品访问群组的服务账号的完全限定电子邮件地址
CONSUMER_SERVICE_ACCOUNT:属于请求访问权限的使用者的服务账号的完全限定电子邮件地址
拒绝访问权限请求
拥有 dataplex.dataProducts.approve 权限的数据产品所有者可以通过向自定义方法 :reject 发送 POST 请求以及理由载荷来拒绝待处理请求:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
"comment": "REJECTION_REASON"
}' \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/changeRequests/CHANGE_REQUEST_ID:reject"
替换以下内容:
PROJECT_ID:您的 Google Cloud 项目的 ID
LOCATION:数据产品所在的区域(例如
us-central1)CHANGE_REQUEST_ID:要拒绝的访问请求的唯一 ID
更新数据产品
您可以更新现有数据产品的基本详情(例如数据产品名称、说明、所有者详情)、资源、访问组、权限、合同、切面和其他文档。
更新数据产品的基本详情
控制台
在 Google Cloud 控制台中,前往 Knowledge Catalog 数据产品页面。
点击要更新的数据产品。
点击修改。
根据需要更新数据产品名称、数据产品图标、说明、数据产品所有者邮箱、数据产品审批人邮箱和标签。
点击保存。
C#
C#
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 C# 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog C# API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Go
Go
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Go 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Go API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Java
Java
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Java 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Java API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
Node.js
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Node.js 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Node.js API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Python
Python
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Python 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Python API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
REST
如需更新数据产品的基本详细信息,请使用 dataProducts.patch 方法。
例如,如需更新数据产品的说明,请发送以下 PATCH 请求:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{"description": "NEW_DESCRIPTION"}' \
https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataProducts/DATA_PRODUCT_ID?update_mask="description"
替换以下内容:
- NEW_DESCRIPTION:数据产品的新说明
- PROJECT_ID:您的 Google Cloud项目的 ID
- LOCATION:数据产品所在的区域
- DATA_PRODUCT_ID:数据产品的 ID
更新数据产品的资产
控制台
在 Google Cloud 控制台中,前往 Knowledge Catalog 数据产品页面。
点击要更新资产的数据产品。
点击资产标签页。
如需添加新资产,请按照以下步骤操作:
点击 +Add(+添加)。
搜索并选择要添加到数据产品中的资产。您选择的资产必须与数据产品位于同一区域。
如果您拥有必要的权限,则可以点击资产来查看其元数据。
如需优化搜索结果,请使用过滤条件。
选择资产后,点击添加。
如需从数据产品中移除资产,请按以下步骤操作:
针对要移除的资产,依次点击 > 移除。
点击移除以确认操作。
C#
向数据产品添加新的数据资产
C#
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 C# 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog C# API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
从数据产品中删除数据资产
C#
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 C# 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog C# API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Go
向数据产品添加新的数据资产
Go
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Go 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Go API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
从数据产品中删除数据资产
Go
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Go 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Go API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Java
向数据产品添加新的数据资产
Java
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Java 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Java API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
从数据产品中删除数据资产
Java
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Java 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Java API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
向数据产品添加新的数据资产
Node.js
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Node.js 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Node.js API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
从数据产品中删除数据资产
Node.js
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Node.js 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Node.js API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Python
向数据产品添加新的数据资产
Python
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Python 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Python API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
从数据产品中删除数据资产
Python
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Python 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Python API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
REST
如需向数据产品添加新的数据资产,请使用 dataAssets.create 方法。如需查看代码示例,请参阅可选:添加资产。
如需从数据产品中删除数据资产,请使用 dataAssets.delete 方法。例如,发送以下 DELETE 请求:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataProducts/DATA_PRODUCT_ID/dataAssets/DATA_ASSET_ID"
替换以下内容:
- PROJECT_ID:您的 Google Cloud项目的 ID
- LOCATION:您要在其中创建数据产品的区域
- DATA_PRODUCT_ID:数据产品的唯一 ID
- DATA_ASSET_ID:要从数据产品中移除的数据资产的 ID
更新访问权限群组和资产权限
控制台
在 Google Cloud 控制台中,前往 Knowledge Catalog 数据产品页面。
点击要更新访问权限群组和权限的数据产品。
点击访问权限群组和权限标签页。
如需更新访问权限群组,请按以下步骤操作:
点击 修改。
根据需要更新访问权限群组名称、说明、标识符和默认角色。
如需添加新的访问权限群组,请点击添加访问权限群组,然后按照以下步骤操作:
在访问权限群组名称字段中,输入新访问权限群组的名称。例如
Analyst。在访问权限群组说明字段中,输入访问权限群组的说明。
在访问权限群组标识符字段中,输入您要分配给相应访问权限群组的 Google 群组或服务账号(或两者)的邮箱:
Google 群组:为自己申请访问权限的数据产品使用方会被添加为映射的 Google 群组的成员。
服务账号:请求访问其服务账号的数据产品使用方会被授予 Service Account Token Creator (
roles/iam.serviceAccountTokenCreator) IAM 角色,以模拟映射到访问群组的数据提供方服务账号。
可选:在默认角色字段中,选择一个默认 IAM 角色,以自动授予对数据产品中所有受支持资产的访问权限。如果 IAM 角色已直接分配给特定资产,则添加默认角色不会覆盖这些直接权限。
点击 Add(添加)。
如需移除访问权限群组,请按以下步骤操作:
对于要移除的访问权限群组,依次点击 > 移除。
点击移除以确认操作。移除访问权限群组会撤消其默认角色以及数据产品中所有资产的任何资产特定权限。
如果未为所选数据产品配置访问权限群组,您可以点击添加访问权限群组来添加新的访问权限群组。
如需更新资产的权限,请按以下步骤操作:
对于要更新权限的资产,请依次点击 > 权限。
更新所需的访问权限群组和 IAM 角色。您可以分配特定于资产的角色,以替换访问权限群组的默认角色。
点击配置。资产表中的权限列会显示更新后的权限及其配置状态:
- 已应用:IAM 角色(默认或资产专用)在底层资源上处于有效状态。
- 失败:未能将 IAM 角色应用于底层资源。您可以在 Cloud Logging 中找到详细的失败原因。
- 不受支持:此资产的资源类型不支持应用权限。
C#
更新访问权限群组
C#
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 C# 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog C# API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
更新资产权限
C#
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 C# 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog C# API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Go
更新访问权限群组
Go
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Go 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Go API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
更新资产权限
Go
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Go 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Go API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Java
更新访问权限群组
Java
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Java 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Java API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
更新资产权限
Java
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Java 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Java API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
更新访问权限群组
Node.js
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Node.js 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Node.js API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
更新资产权限
Node.js
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Node.js 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Node.js API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Python
更新访问权限群组
Python
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Python 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Python API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
更新资产权限
Python
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Python 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Python API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
REST
如需更新与数据产品关联的访问群组,请使用 dataProducts.patch 方法。如需查看代码示例,请参阅配置访问权限群组。
如需更新资产权限,请使用 dataAssets.patch 方法。如需查看代码示例,请参阅配置资产权限。
更新数据产品合同
控制台
在 Google Cloud 控制台中,前往 Knowledge Catalog 数据产品页面。
点击要更新合同的数据产品。
点击合同标签页。
如需更新现有合同,请按以下步骤操作:
点击 修改。
更新必要的字段。
点击保存。
如果所选数据产品未附加任何合同,您可以点击添加合同来添加合同。
REST
如需更新合同,请使用 entries.patch 方法。如需查看代码示例,请参阅添加协定。
更新数据产品的各个方面
控制台
在 Google Cloud 控制台中,前往 Knowledge Catalog 数据产品页面。
点击要更新切面的数据产品。
点击切面标签页。
如需更新切面,请按照以下步骤操作:
点击要更新的切面。
点击 修改。
根据需要更新切面类型、国家/地区和区域。
点击保存。
如需为数据产品添加新切面,请按照以下步骤操作:
点击+添加切面。
在选择切面类型字段中,搜索并从列表中选择切面类型。例如
Geo context。在国家/地区字段中,选择资产所属的国家/地区。
在区域字段中,选择资产所属的业务区域。
点击保存。
如需删除切面,请按照以下步骤操作:
点击要删除的切面。
点击 删除。
点击确认以确认操作。
REST
如需更新数据产品条目的任何切面,请使用 entries.patch 方法。
更新数据产品文档
控制台
在 Google Cloud 控制台中,前往 Knowledge Catalog 数据产品页面。
点击要更新文档的数据产品。
点击概览标签页。
点击文档旁边的 修改。
根据需要更新用户指南、示例查询和其他文档。
点击保存。
REST
文档是 overview 方面的一部分。如需更新数据产品文档,请使用 entries.patch 方法。
删除数据产品
如需删除数据产品,您必须先从数据产品中移除所有资产。
控制台
在 Google Cloud 控制台中,前往 Knowledge Catalog 数据产品页面。
点击要删除的数据产品。
点击资产标签页。
针对列出的每项资产,依次点击 > 移除。 点击移除以确认操作。
移除所有资产后,点击 删除,删除数据产品。
在确认对话框中,输入
delete,然后点击删除。
C#
C#
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 C# 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog C# API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Go
Go
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Go 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Go API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Java
Java
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Java 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Java API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
Node.js
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Node.js 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Node.js API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Python
Python
在尝试此示例之前,请按照《Knowledge Catalog 快速入门:使用客户端库》中的 Python 设置说明进行操作。 如需了解详情,请参阅 Knowledge Catalog Python API 参考文档。
如需向 Knowledge Catalog 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
REST
如需删除数据产品,请使用 dataProducts.delete 方法。
例如,发送以下 DELETE 请求:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataProducts/DATA_PRODUCT_ID
替换以下内容:
- PROJECT_ID:您的 Google Cloud项目的 ID
- LOCATION:数据产品所在的区域
- DATA_PRODUCT_ID:要删除的数据产品的 ID
数据保留和项目删除
删除包含数据产品的 Google Cloud 项目时,关联的资源会遵循标准 Google Cloud 删除生命周期(也称为清除)。如需详细了解此行为的技术流程和时间轴,请参阅 Google Cloud上的数据删除机制。
项目删除期间的资源生命周期
在收到项目删除请求后,系统会分两个主要阶段管理数据产品和数据资产的生命周期:
软删除(
Hidden状态):启动项目删除后,项目中的所有数据产品和数据资产都会立即标记为Hidden。在这 30 天的宽限期内,元数据会保留,但无法再通过 Dataplex API 或 Google Cloud 控制台访问。在此期间,您可以随时恢复项目及其资源。永久清除(
Purged状态):30 天宽限期过后,项目及其所有 Knowledge Catalog 元数据将被永久删除。Knowledge Catalog 利用内部行删除政策,以可验证的方式从存储空间中清除这些记录。
跨项目资源的 IAM 政策的行为
Knowledge Catalog 元数据与对底层物理数据(例如 BigQuery 数据集或 Cloud Storage 存储桶)强制执行的 IAM 政策之间存在关键的操作区别。
虽然项目内的 Knowledge Catalog 元数据会自动清除,但删除数据产品所有者项目(项目 A)时,应用于位于其他项目(项目 B)中的数据资源的任何 IAM 绑定不会自动撤消。
孤立绑定:由于目标项目中的物理资源仍处于活跃状态,因此 IAM 系统不会自动移除与已删除项目关联的主账号标识符。
防止僵尸权限:为确保完全停用数据访问权限,请在启动项目删除之前,手动从数据产品中删除数据资产,或从跨项目资源中明确剥离关联的 IAM 绑定。
项目恢复(恢复删除)
如果您在 30 天的宽限期内恢复已删除的项目,Knowledge Catalog 会尝试恢复您的资源及其在目录中的可见性。对于跨项目资产,由于在删除过程中不会自动撤消底层 IAM 绑定,因此恢复的项目通常会立即恢复数据访问权限。