Amazon DataZone 中的关联账户 - Amazon DataZone

Amazon DataZone 中的关联账户

通过将您的 AWS 账户与 Amazon DataZone 域关联,可让域用户发布和使用这些 AWS 账户中的数据。需执行三个步骤来设置账户关联。

  • 第一步,通过请求关联将域与所需的 AWS 账户共享。如果 AWS 账户与域的 AWS 账户不同,Amazon DataZone 将使用 AWS Resource Access Manager(AWS RAM)。账户关联只能由 Amazon DataZone 域发起。

  • 第二步,让账户所有者接受关联请求。

  • 第三步,让账户所有者启用所需的环境蓝图。通过启用蓝图,账户所有者将为域中的用户提供在其账户中创建和访问资源(例如 AWS Glue 数据库和 Amazon Redshift 集群)所需的 IAM 角色和资源配置。

完成以下步骤可将账户与 Amazon DataZone 关联:

请求与其他 AWS 账户关联

注意

通过向其他 AWS 账户发送关联请求,您将使用 AWS Resource Access Manager(AWS RAM)与其他 AWS 账户共享您的域。请务必检查您输入的账户 ID 的准确性。

要在 Amazon DataZone 控制台中为某个 Amazon DataZone 域请求与其他 AWS 账户关联,您必须在该账户中代入具有管理权限的 IAM 角色。配置使用 Amazon DataZone 管理控制台所需的 IAM 权限以获得请求账户关联所需的最低权限。

完成以下过程可请求与其他 AWS 账户关联。

  1. 登录 AWS 管理控制台并打开 Amazon DataZone 管理控制台(网址为 https://console.aws.amazon.com/datazone)。

  2. 选择查看域,然后从列表中选择域名。该名称是一个超链接。

  3. 向下滚动到关联账户选项卡,然后选择请求关联

  4. 输入要请求关联的账户的 ID。如果您对账户 ID 的列表感到满意,请选择请求关联

  5. 在“RAM 策略”下,指定账户关联的 RAM 策略。您可以选择 AWSRAMPermissionDataZonePortalReadWrite 以允许关联账户执行 Amazon DataZone API 并访问数据门户,也可以选择 AWSRAMPermissionDataZoneDefault 允许关联账户仅执行 Amazon DataZone API 而不提供数据门户访问权限。之后,Amazon DataZone 将代表您的账户在 AWS Resource Access Manager 中创建资源共享,并将输入的账户 ID 作为主体。

  6. 您必须让其他 AWS 账户的所有者接受您的请求。邀请将在七(7)天后过期。

向账户提供对客户自主管理型 KMS 密钥的访问权限

Amazon DataZone 域及其元数据将进行加密,方式是(默认情况下)使用由 AWS 拥有的密钥或(可选)由您在域创建期间时拥有并提供的 AWS Key Management Service(AWS KMS)中的客户自主管理型密钥。如果您的域是通过客户自主管理型密钥加密的,请按照以下过程操作,向关联账户授予对 KMS 密钥的使用权限。

  1. 登录 AWS 管理控制台,并打开 KMS 控制台,网址为 https://console.aws.amazon.com/kms/

  2. 要查看您账户中自己所创建和管理的密钥,请在导航窗格中选择 Customer managed keys (客户托管密钥)

  3. 要查看您账户中自己所创建和管理的密钥,请在导航窗格中选择 Customer managed keys (客户托管密钥)。

  4. 在 KMS 密钥列表中,选择要检查的 KMS 密钥的别名或密钥 ID。

  5. 要允许或禁止外部 AWS 账户使用 KMS 密钥,请使用此页面的其他 AWS 账户部分中的控件。这些账户中的 IAM 主体(自身具有适当的 KMS 权限)可以在加密操作(如加密、解密、重新加密和生成数据密钥)中使用 KMS 密钥。

接受来自 Amazon DataZone 域的账户关联请求并启用环境蓝图

要在 Amazon DataZone 管理控制台中接受与某个 Amazon DataZone 域的关联,您必须在该账户中代入具有管理权限的 IAM 角色。配置使用 Amazon DataZone 管理控制台所需的 IAM 权限以获得最低权限。

完成以下步骤可接受与 Amazon DataZone 域的关联。

  1. 登录 AWS 管理控制台并打开 Amazon DataZone 管理控制台(网址为 https://console.aws.amazon.com/datazone)。

  2. 选择查看请求,然后从列表中选择邀请域。邀请状态应为已请求。选择审核请求

  3. 选择是否启用默认数据湖和/或数据仓库环境蓝图,方法是同时取消选中或选中两个复选框,或者选中其中一个复选框。您可以稍后执行此操作。

    • 利用数据湖环境蓝图,域用户能够创建和管理 AWS Glue、Amazon S3 和 Amazon Athena 资源,以便从数据湖发布和使用。

    • 利用数据仓库环境蓝图,域用户能够创建和管理 Amazon Redshift 资源,以便从数据仓库发布和使用。

  4. 如果您选择一个或两个默认环境蓝图,请配置以下权限和资源。

    • 管理访问 IAM 角色可向 Amazon DataZone 提供权限,使域用户能够摄取和管理对表(例如 AWS Glue 和 Amazon Redshift)的访问权限。您可以选择让 Amazon DataZone 创建和使用新的 IAM 角色,也可以从现有 IAM 角色列表中进行选择。

    • 预置 IAM 角色可向 Amazon DataZone 提供权限,使域用户能够创建和配置环境资源,例如 AWS Glue 数据库。您可以选择让 Amazon DataZone 创建和使用新的 IAM 角色,也可以从现有 IAM 角色列表中进行选择。

    • 数据湖的 Amazon S3 存储桶是 Amazon DataZone 将在域用户存储数据湖数据时使用的存储桶或路径。您可以使用 Amazon DataZone 选择的默认存储桶,也可以通过输入您现有的 Amazon S3 路径字符串来选择该路径。如果您选择自己的 Amazon S3 路径,则需要更新 IAM 策略以向 Amazon DataZone 提供对该路径的使用权限。

  5. 如果您对配置感到满意,请选择接受并配置关联

在关联的 AWS 账户中启用环境蓝图

要在 Amazon DataZone 管理控制台中启用环境蓝图,您必须在该账户中代入具有管理权限的 IAM 角色。配置使用 Amazon DataZone 管理控制台所需的 IAM 权限以获得最低权限。

完成以下操作可在关联域中启用蓝图。

  1. 登录 AWS 管理控制台并打开 Amazon DataZone 管理控制台(网址为 https://console.aws.amazon.com/datazone)。

  2. 打开左侧导航面板,然后选择关联域

  3. 选择要为其启用环境蓝图的域。

  4. 蓝图列表中,选择 DefaultDataLakeDefaultDataWarehouseAmazon SageMaker自定义 AWS 服务蓝图。

    注意

    如果您启用自定义 AWS 服务蓝图,则无需指定管理访问角色。在使用自定义 AWS 服务蓝图创建环境时,将处理此蓝图的权限和授权机制。有关更多信息,请参阅 使用自定义 AWS 服务蓝图创建环境

  5. 在所选蓝图的详细信息页面上,选择在此账户中启用

  6. 在权限和资源页面上,指定以下角色:

    • 如果启用的是 DefaultDataLake 蓝图,对于 Glue 管理访问角色,指定一个新的或现有的服务角色来向 Amazon DataZone 授权,使其能够摄取和管理对 AWS Glue 和 AWS Lake Formation 中的表的访问。

    • 如果启用的是 DefaultDataWarehouse 蓝图,对于 Redshift 管理访问角色,指定一个新的或现有的服务角色来向 Amazon DataZone 授权,使其能够摄取和管理对 Amazon Redshift 中的数据共享、表和视图的访问。

    • 如果启用的是 Amazon SageMaker 蓝图,对于 SageMaker 管理访问角色,指定一个新的或现有的服务角色来向 Amazon DataZone 授权,使其能够将 Amazon SageMaker 数据发布到目录。它还向 Amazon DataZone 授予相关权限,以便授予或撤销对目录中的 Amazon SageMaker 发布的资产的访问权限。

      重要

      在启用 Amazon SageMaker 蓝图时,Amazon DataZone 会检查当前账户和区域中是否存在 Amazon DataZone 的以下 IAM 角色。如果这些角色不存在,Amazon DataZone 会自动创建它们。

      • AmazonDataZoneGlueAccess-<region>-<domainId>

      • AmazonDataZoneRedshiftAccess-<region>-<domainId>

    • 对于预置角色,请指定一个新的或现有的服务角色来向 Amazon DataZone 授权,使其能够使用 AWS CloudFormation 在环境账户和区域中创建和配置环境资源。

    • 如果您启用的是 Amazon SageMaker 蓝图,对于 SageMaker-Glue 数据来源的 Amazon S3 存储桶,指定一个要由 AWS 账户中的所有 SageMaker 环境使用的 Amazon S3 存储桶。您指定的存储桶前缀必须为以下项之一:

      • amazon-datazone*

      • datazone-sagemaker*

      • sagemaker-datazone*

      • DataZone-Sagemaker*

      • Sagemaker-DataZone*

      • DataZone-SageMaker*

      • SageMaker-DataZone*

  7. 选择启用蓝图

启用所选蓝图后,可以控制哪些项目可以使用您账户中的蓝图来创建环境配置文件。您可以通过将管理项目分配给蓝图的配置来做到这一点。

在启用的 DefaultDataLake 或 DefaultDataWarehouse 蓝图上指定管理项目
  1. 导航到 Amazon DataZone 控制台(网址为 https://console.aws.amazon.com/datazone),然后使用您的账户凭证登录。

  2. 打开左侧导航面板并选择关联域,然后选择要在其中添加管理项目的域。

  3. 选择蓝图选项卡,然后选择 DefaultDataLake 或 DefaultDataWareshouse 蓝图。

  4. 默认情况下,域中的所有项目都可以使用账户中的 DefaultDataLake 或 DefaultDataWareshouse 蓝图来创建环境配置文件。但是,您可以通过将管理项目分配给蓝图来施加限制。要添加管理项目,请选择选择管理项目,然后从下拉菜单中选择要添加为管理项目的项目,然后选择选择管理项目

在 AWS 账户中启用 DefaultDataWarehouse 蓝图后,便可将参数集添加到蓝图配置中。参数集是一组键和值,Amazon DataZone 需要使用它们来与 Amazon Redshift 集群建立连接,并且它们可用于创建数据仓库环境。这些参数包括 Amazon Redshift 集群的名称、数据库以及保存集群凭证的 AWS 密钥。

重要

默认情况下,未为环境蓝图指定管理项目,这意味着任何 Amazon DataZone 用户均可为环境蓝图创建配置文件。因此,强烈建议您始终为环境蓝图指定管理项目以确保加强治理。

将参数集添加到 DefaultDataWarehouse 蓝图
  1. 导航到 Amazon DataZone 控制台(网址为 https://console.aws.amazon.com/datazone),然后使用您的账户凭证登录。

  2. 打开左侧导航面板并选择关联域,然后选择要在其中添加参数集的域。

  3. 选择蓝图选项卡,然后选择 DefaultDataWareshouse 蓝图以打开蓝图详细信息页面。

  4. 在蓝图详细信息页面上的参数集选项卡下,选择创建参数集

    • 提供参数集的名称。

    • (可选)提供参数集的描述。

    • 选择一个区域

    • 选择 Amazon Redshift 集群或 Amazon Redshift Serverless。

    • 选择保存所选 Amazon Redshift 集群或 Amazon Redshift Serverless 工作组凭证的 AWS 密钥 ARN。必须使用 AmazonDataZoneDomain : [Domain_ID] 标签标记 AWS 密钥才能在参数集中使用该密钥。

      • 如果您没有现有的 AWS 密钥,也可以通过选择创建新 AWS 密钥来创建新密钥。这将打开一个对话框,可在其中提供密钥的名称、用户名和密码。选择创建新 AWS 密钥后,Amazon DataZone 将在 AWS Secrets Manager 服务中创建一个新密钥,并确保使用您尝试在其中创建参数集的域来标记该密钥。

    • 选择 Amazon Redshift 集群或 Amazon Redshift Serverless 工作组。

    • 输入所选 Amazon Redshift 集群或 Amazon Redshift Serverless 工作组中的数据库名称。

    • 选择创建参数集

注意

您最多只能将 10 个参数集添加到 DefaultDataWarehouse 蓝图。

在 AWS 账户中启用 Amazon SageMaker 蓝图后,便可将参数集添加到蓝图配置中。参数集是一组键和值,Amazon DataZone 需要使用它们来与 Amazon SageMaker 集群建立连接,并且它们可用于创建数据仓库环境。

向 Amazon SageMaker 蓝图添加参数集
  1. 导航到 Amazon DataZone 控制台(网址为 https://console.aws.amazon.com/datazone),然后使用您的账户凭证登录。

  2. 选择查看域,然后选择包含要在其中添加参数集的已启用蓝图的域。

  3. 选择蓝图选项卡,然后选择 Amazon SageMaker 蓝图以打开蓝图的详细信息页面。

  4. 在蓝图详细信息页面上的参数集选项卡下,选择创建参数集,然后指定以下项:

    • 提供参数集的名称

    • (可选)提供参数集的描述

    • 指定 Amazon SageMaker 域身份验证类型。您可以选择 IAM 或 IAM Identity Center(SSO)。

    • 指定 AWS 区域。

    • 指定用于数据加密的 AWS KMS 密钥。您可以选择现有密钥对或创建新密钥。

    • 环境参数下,指定以下项:

      • VPC ID – 用于 Amazon SageMaker 环境的 VPC 的 ID。您可以指定现有 VPC,也可以创建新 VPC。

      • 子网 – VPC 中特定资源的一系列 IP 地址的一个或多个 ID。

      • 网络访问 – 选择仅限 VPC仅限公共互联网

      • 安全组 – 配置 VPC 和子网时使用的安全组。

    • 在“数据来源参数”下,选择下列项之一:

      • 仅限 AWS Glue

      • AWS Glue + Amazon Redshift Serverless。如果您选择此选项,请指定以下项:

        • 指定保存所选 Amazon Redshift 集群凭证的 AWS 密钥 ARN。必须使用 AmazonDataZoneDomain : [Domain_ID] 标签标记 AWS 密钥才能在参数集中使用该密钥。

          如果您没有现有的 AWS 密钥,也可以通过选择创建新 AWS 密钥来创建新密钥。这将打开一个对话框,可在其中提供密钥的名称、用户名和密码。选择创建新 AWS 密钥后,Amazon DataZone 将在 AWS Secrets Manager 服务中创建一个新密钥,并确保使用您尝试在其中创建参数集的域来标记该密钥。

        • 指定要在创建环境时使用的 Amazon Redshift 工作组。

        • 指定要在创建环境时使用的数据库(在所选工作组中)的名称。

      • 仅限 AWS Glue + Amazon Redshift 集群

        • 指定保存所选 Amazon Redshift 集群凭证的 AWS 密钥 ARN。必须使用 AmazonDataZoneDomain : [Domain_ID] 标签标记 AWS 密钥才能在参数集中使用该密钥。

          如果您没有现有的 AWS 密钥,也可以通过选择创建新 AWS 密钥来创建新密钥。这将打开一个对话框,可在其中提供密钥的名称、用户名和密码。选择创建新 AWS 密钥后,Amazon DataZone 将在 AWS Secrets Manager 服务中创建一个新密钥,并确保使用您尝试在其中创建参数集的域来标记该密钥。

        • 指定要在创建环境时使用的 Amazon Redshift 集群。

        • 指定要在创建环境时使用的数据库(在所选集群中)的名称。

  5. 选择创建参数集