将 VPC Service Controls 与 Knowledge Catalog 搭配使用

本文档适用于需要保护 Knowledge Catalog(以前称为 Dataplex Universal Catalog)服务安全的安全管理员和数据工程师。本文介绍了如何使用 VPC Service Controls 创建服务边界,以保护您的 Knowledge Catalog 资源并降低数据渗漏风险。如需了解详情,请参阅 VPC Service Controls 概览

支持的功能

使用服务边界保护 Knowledge Catalog 时,系统支持以下功能:

  • 数据湖:您可以在安全边界内创建和管理 Knowledge Catalog 数据湖。

  • 资产:您可以在边界内管理资产。

  • 目录中的元数据资源:您可以在安全边界内管理元数据资源。

  • 元数据导出:您可以将元数据导出到 Dataproc Metastore,这需要额外的 VPC Service Controls 配置。如需了解详情,请参阅 VPC Service Controls

  • 数据分析洞见:您可以运行数据分析、数据质量和元数据分析洞见扫描。

  • 数据沿袭:您可以使用受限虚拟 IP (VIP) 跟踪数据沿袭。

  • Knowledge Catalog Search:您可以使用 SearchEntries API。 在受服务边界保护的项目中使用 Knowledge Catalog 搜索功能时,搜索结果仅包含位于同一边界内的资源。如需了解详情,请参阅搜索范围使用 VPC Service Controls 按环境隔离搜索结果

  • 数据产品(预览版:您可以使用 VPC Service Controls 来保护数据产品,确保数据产品、其组成数据资产(例如 BigQuery 表)和用户之间的通信始终在授权的边界内进行。如需了解详情,请参阅将 VPC Service Controls 与数据产品搭配使用

Knowledge Catalog 搜索和 VPC Service Controls

在受服务边界保护的项目中使用 Knowledge Catalog 搜索功能时,搜索结果仅包含与执行搜索的项目属于同一项目的资源。

如需纳入同一服务边界内其他项目中的资源,您必须为知识目录调用方项目配置 VPC Service Controls 出站规则。如需了解详情,请参阅配置入站和出站政策。 这些规则允许搜索结果跨越边界内的项目边界。

以下示例展示了一个出站政策配置,该配置允许搜索结果在从 project B 执行搜索时包含来自 project A 的 BigQuery 资源:

egressPolicies:
-   egressFrom:
    identityType: ANY_USER_ACCOUNT
  egressTo:
    operations:
    -   serviceName: bigquery.googleapis.com
      methodSelectors:
      -   method: '*'
    resources:
    -   projects/projectA

当您在 project B 中执行 Knowledge Catalog 搜索时,Knowledge Catalog 会调用 BigQuery API 来查找 project A 中的资产。此政策明确允许 project B 中的任何用户账号针对 project A 进行 BigQuery API 调用,从而允许 project A 中的 BigQuery 资产显示在 Knowledge Catalog 搜索结果中。

限制

您可以在设置 VPC Service Controls 安全边界之前创建 Knowledge Catalog 资源,但这些资源不会受到边界保护。

根据设计,VPC Service Controls 会阻止服务边界内的资源访问该边界外的数据和服务。例如,Knowledge Catalog 数据分析和数据质量扫描无法访问服务边界之外的数据源,例如 BigQuery 表或 Cloud Storage 文件。同样,导出数据扫描结果时,目标 BigQuery 表必须位于受安全边界保护的项目中。如需了解如何允许从边界外访问受保护的资源,请参阅创建访问权限级别

设置 VPC Service Controls

如需使用 VPC Service Controls 保护 Knowledge Catalog 资源,请执行以下步骤:

  1. 配置 VPC 网络
  2. 创建服务边界
  3. 将项目添加到边界中
  4. 将 Dataplex API 添加到服务边界中
  5. 可选:创建访问权限级别

配置虚拟私有云 (VPC) 网络

您可以将 VPC 网络配置为限制服务边界的专用 Google 访问通道。这可确保 VPC 或本地网络中的主机只能按照符合相关边界政策的方式与 VPC Service Controls 支持的 Google API 和服务进行通信。

如需了解详情,请参阅设置与 Google API 和服务的专用连接

创建服务边界

创建服务边界时,您需要选择自己希望 VPC Service Controls 服务边界保护的 Knowledge Catalog 项目。

如需创建服务边界,请按照创建服务边界中的说明操作。

向服务边界添加更多项目

如需将现有的 Knowledge Catalog 项目添加到边界,请按照更新服务边界中的说明操作。

将 Dataplex API 添加到服务边界

为了降低 Knowledge Catalog 渗漏数据的风险(例如,使用 Dataplex API 方法),您必须限制 Dataplex API。

如需将 Dataplex API 添加为受限服务,请按照以下步骤操作:

控制台

  1. 在 Google Cloud 控制台中,前往 VPC Service Controls 页面。

    转到 VPC Service Controls

  2. VPC Service Controls 页面的表中,点击要修改的服务边界的名称。

  3. 点击修改边界

  4. 修改服务边界页面上,点击添加服务

  5. 添加 Dataplex API

  6. 点击保存

gcloud

  • 使用 gcloud access-context-manager perimeters update 命令:

    gcloud access-context-manager perimeters update PERIMETER_ID \
    --policy=POLICY_ID \
    --add-restricted-services=dataplex.googleapis.com
    

    替换以下内容:

    • PERIMETER_ID:边界的 ID 或边界的完全限定标识符
    • POLICY_ID:访问权限政策的 ID

可选:创建访问权限级别

如需允许从外部访问边界内受保护的资源,您可以使用访问权限级别。访问权限级别仅应用于来自服务边界外对受保护资源的请求。您无法使用访问权限级别向受保护的资源授予对边界外的数据和服务的访问权限。

如需了解详情,请参阅允许从边界外访问受保护的资源

后续步骤