授权从亚马逊到亚马逊 Redshi QuickSight ft 集群的连接 - Amazon QuickSight
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

授权从亚马逊到亚马逊 Redshi QuickSight ft 集群的连接

   适用于:企业版和标准版 
   目标受众:系统管理员 

您可以使用三种身份验证方法提供对 Amazon Redshift 数据的访问权限:可信身份传播、以 IAM 身份运行角色或 Amazon Redshift 数据库凭证。

通过可信身份传播,通过由 IAM 身份中心管理的单点登录将用户的身份传递给 Amazon Redshift。访问控制面板的用户会将其身份传播到 Ama QuickSight zon Redshift。在 Amazon Redshift 中,在将数据以 QuickSight 资产形式呈现给用户之前,会对数据应用精细的数据权限。 QuickSight 作者还可以在不输入密码或 IAM 角色的情况下连接到 Amazon Redshift 数据源。如果使用亚马逊 Redshift Spectrum,则所有权限管理都集中在亚马逊 Redshift 中。当 QuickSight 和 Amazon Redshift 使用相同的 IAM 身份中心组织实例时,支持可信身份传播。以下功能目前不支持可信身份传播。

  • SPICE数据集

  • 数据源上的自定义 SQL

  • 提醒

  • 通过电子邮件发送报告

  • 亚马逊 QuickSight Q

  • CSV、Excel 和 PDF 导出

  • 异常检测

QuickSight 要让亚马逊连接到 Amazon Redshift 实例,您必须为该实例创建一个新的安全组。该安全组包含一条入站规则,该规则授权从相应的 IP 地址范围内访问该安全组中的 Amazon QuickSight 服务器。 Amazon Web Services 区域要了解有关授权 Amazon QuickSight 连接的更多信息,请参阅手动启用 VPC 中的 Amazon Redshift 集群的访问权限

启用从 Amazon QuickSight 服务器到您的集群的连接只是基于 Amazon 数据库数据源创建数据集的几个先决条件之一。有关所需条件的更多信息,请参阅使用新数据库数据来源创建数据集

使用 Amazon Redshift 启用可信身份传播

当最终用户 QuickSight 访问利用支持可信身份传播的数据源的资产时,可信身份传播会在 Amazon Redshift 中对其进行身份验证。当作者创建具有可信身份传播功能的数据源时,会传播并登录数据源使用者的身份 CloudTrail。 QuickSight 这允许数据库管理员在 Amazon Redshift 中集中管理数据安全,并自动将所有数据安全规则应用于中的数据使用者。 QuickSight使用其他身份验证方法时,创建数据源的作者的数据权限适用于所有数据源使用者。数据源作者可以选择对他们在 Amazon 中创建的数据源应用额外的行和列级安全保护 QuickSight。

只有直接查询数据集支持可信身份传播数据源。 SPICE数据集目前不支持可信身份传播。

先决条件

在开始之前,请确保准备好所有必需的先决条件。

  • 只有与 IAM Identity Center 集成的 QuickSight 账户才支持可信身份传播。有关更多信息,请参阅 使用 IAM 身份中心配置您的亚马逊 QuickSight 账户

  • 与 IAM 身份中心集成的亚马逊 Redshift 应用程序。您使用的 Amazon Redshift 集群必须与您要使用的 QuickSight 账户位于同一个组织中 Amazon Organizations 。在 IAM Identity Center 中,还必须使用与您的 QuickSight 账户配置相同的组织实例来配置集群。有关配置 Amazon Redshift 集群的更多信息,请参阅集成 IAM 身份中心

在中启用可信身份传播 QuickSight

QuickSight 要配置为通过可信身份传播连接到 Amazon Redshift 数据源,请为您的账户配置 Amazon Redshift OAuth 范围。 QuickSight

要添加允许 QuickSight 向 Amazon Redshift 授权身份传播的范围,请指定您想要授权身份传播的 QuickSight 账户和服务(在本例中为该账户)的 Amazon Web Services 账户 ID。'REDSHIFT'

指定您正在授权亚马逊向其传播用户身份的 Amazon Redshift 集群的 IAM 身份中心应用程序 AR QuickSight N。这些信息可以在亚马逊 Redshift 控制台中找到。如果您没有为 Amazon Redshift 范围指定授权目标,则会对共享相同 IAM QuickSight 身份中心实例的任何 Amazon Redshift 集群中的用户进行授权。以下示例配置为通过可信身份 QuickSight 传播连接到 Amazon Redshift 数据源。

aws quicksight update-identity-propagation-config --aws-account-id "AWSACCOUNTID" --service "REDSHIFT" --authorized-targets "arn:aws:sso::XXXXXXXXXXXX:application/ssoins-XXXXXXXXXXXX/apl-XXXXXXXXXXXX" "arn:aws:sso::XXXXXXXXXXXX:application/ssoins-XXXXXXXXXXXX/apl-XXXXXXXXXXXX"

以下示例从账户中删除 OAuth 范围。 QuickSight

aws quicksight delete-identity-propagation-config --aws-account-id "AWSACCOUNTID" --service "REDSHIFT" --authorized-targets "arn:aws:sso::XXXXXXXXXXXX:application/ssoins-XXXXXXXXXXXXapl-XXXXXXXXXXXX "arn:aws:sso::XXXXXXXXXXXX:application/ssoins-XXXXXXXXXXXX/apl-XXXXXXXXXXXX"

以下示例列出了账户中当前存在的所有 OAuth 范围。 QuickSight

aws quicksight list-identity-propagation-configs --aws-account-id "AWSACCOUNTID"

通过可信身份传播连接到 Amazon Redshift

使用以下步骤连接到 Amazon Redshift 可信身份传播。

通过可信身份传播连接到 Amazon Redshift
  1. 在 Amazon 中创建新的数据集 QuickSight。有关创建数据集的更多信息,请参阅创建数据集

  2. 选择 Amazon Redshift 作为新数据集的数据源。

    注意

    现有数据源的身份验证类型无法更改为可信身份传播

  3. 选择 IAM Identity Center 作为数据源的身份选项,然后选择创建数据源

手动启用 VPC 中的 Amazon Redshift 集群的访问权限

 适用于:企业版 

使用以下步骤允许亚马逊 QuickSight 访问 VPC 中的 Amazon Redshift 集群。

允许亚马逊 QuickSight 访问 VPC 中的亚马逊 Redshift 集群
  1. 登录 Amazon Web Services Management Console 并打开亚马逊 Redshift 控制台,网址为 https://console.aws.amazon.com/redshiftv2/。

  2. 导航到您要在 Amazon 中提供的集群 QuickSight。

  3. 在 “集群属性” 部分中,找到 “端口”。记下 Port 值。

  4. 集群属性部分中找到 VPC ID,记下 VPC ID 值。选择 VPC ID 以打开亚马逊 VPC 控制台。

  5. 在 Amazon VPC 控制台上,选择导航窗格中的安全组

  6. 选择创建安全组

  7. Create Security Group 页面上,输入安全组信息,如下所示:

    • 对于安全组名称,输入 redshift-security-group

    • 对于描述,输入 redshift-security-group

    • 对于 VPC,请为您的亚马逊 Redshift 集群选择 VPC。这是您记下 ID 的 VPC。

  8. 选择创建安全组

    您的新安全组应显示在屏幕上。

  9. 使用以下属性创建第二个安全组。

    • 对于安全组名称,输入 quicksight-security-group

    • 对于描述,输入 quicksight-security-group

    • 对于 VPC,请为您的亚马逊 Redshift 集群选择 VPC。这是您记下 ID 的 VPC。

  10. 选择创建安全组

  11. 创建新安全组后,为新组创建入站规则。

    选择新的redshift-security-group安全组,然后输入以下值。

    • 在 “类型” 中,选择 Amazon Redshift

    • 对于协议,选择 TCP

    • 对于端口范围,请输入您要提供访问权限的 Amazon Redshift 集群的端口号。此端口号是您在先前步骤中记下的端口号。

    • 中,输入安全组 ID quicksight-security-group

  12. 选择 Save rules (保存规则) 以保存您的新入站规则。

  13. 对重复上一步quicksight-security-group并输入以下值。

    • 对于类型,请选择所有流量

    • 对于 “协议”,选择 “全部”。

    • 对于 “端口范围”,选择 “全部”。

    • 中,输入安全组 ID redshift-security-group

  14. 选择 Save rules (保存规则) 以保存您的新入站规则。

  15. 在中 QuickSight,导航至 “管理 QuickSight” 菜单。

  16. 选择管理 VPC 连接,然后选择添加 VPC 连接

  17. 使用以下值配置新的 VPC 连接。

    • 在 VPC 连接名称中,为 VPC 连接选择一个有意义的名称。

    • 对于 VPC ID,请选择 Amazon Redshift 集群所在的 VPC。

    • 对于子网 ID,请为用于 Amazon Redshift 的可用区 (AZ) 选择子网。

    • 对于安全组 ID,请复制并粘贴安全组 ID quicksight-security-group

  18. 选择创建。生成新 VPC 可能需要几分钟时间。

  19. 在亚马逊 Redshift 控制台中,导航到配置为的亚马逊 Redshift 集群redshift-security-group。选择 “属性”。在 “网络和安全设置” 下,输入安全组的名称。

  20. 在中 QuickSight,选择数据集,然后选择新建数据集。使用以下值创建新数据集。

    • 对于数据源,请选择 Amazon Redshift 自动发现

    • 为数据源指定一个有意义的名称。

    • 实例 ID 应使用您在中创建的 VPC 连接自动填充。 QuickSight如果实例 ID 未自动填充,请从下拉列表中选择您创建的 VPC。

    • 输入数据库凭据。如果您的 QuickSight 账户使用可信身份传播,请选择单点登录

  21. 验证连接,然后选择 “创建数据源”。

如果您想进一步限制默认出站规则,请将的出站规则更新为仅允许 Amazon Redshift 流量进入。quicksight-security-group redshift-security-group您也可以删除位于中的出站规则redshift-security-group

启用对 Amazon Redshift Spectrum 的访问

使用亚马逊 Redshift Spectrum,你可以使用 QuickSight 亚马逊 Redshift 将亚马逊连接到外部目录。例如,您可以访问 Amazon Athena 目录。然后,您可以使用 Amazon Redshift 集群(而不是 Athena 查询引擎)查询 Amazon S3 数据湖上的非结构化数据。

您也可以合并数据集以包含 Amazon Redshift 和 S3 中存储的数据。然后,您可以在 Amazon Redshift 中使用 SQL 语法访问这些数据。

注册数据目录(适用于 Athena)或外部架构(对于 Hive 元数据仓)后,您可以使用 QuickSight 亚马逊来选择外部架构和 Amazon Redshift Spectrum 表。此过程的工作方式与集群中的任何其他 Amazon Redshift 表相同。您不需要加载或转换数据。

有关使用 Amazon Redshift Spectrum 的更多信息,请参阅《Amazon Redshift 数据库开发人员指南》中的使用 Amazon Redshift Spectrum 查询外部数据

要使用 Redshift Spectrum 进行连接,请执行以下操作:

  • 创建或指定与 Amazon Redshift 集群关联的 IAM 角色。

  • 为此 IAM 角色添加 IAM policy AmazonS3ReadOnlyAccessAmazonAthenaFullAccess

  • 为您计划使用的表注册外部架构或数据目录。

Redshift Spectrum 可将存储与计算分离,以便单独扩展。您只需为您运行的查询付费。

要连接到 Redshift Spectrum 表,您无需向亚马逊授予 QuickSight 访问亚马逊 S3 或 Athena 的权限。亚马逊只 QuickSight 需要访问亚马逊 Redshift 集群。有关配置 Redshift Spectrum 的完整详情,请参阅《Amazon Redshift 数据库开发人员指南》中的 Amazon Redshift Spectrum 入门