本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
授权从 Amazon Quick Sight 到亚马逊 Redshift 集群的连接
| 适用于:企业版和标准版 |
| 目标受众:系统管理员 |
您可以使用三种身份验证方法提供对 Amazon Redshift 数据的访问权限:可信身份传播、运行方式 IAM 角色或 Amazon Redshift 数据库凭证。
利用可信身份传播,用户的身份可以通过由 IAM Identity Center 管理的单点登录传递到 Amazon Redshift。在 Amazon Quick Sight 中访问控制面板的用户会将其身份传播到亚马逊 Redshift。在 Amazon Redshift 中,在数据以 Amazon Quick Suite 资产形式呈现给用户之前,会对数据应用细粒度的数据权限。Amazon Quick Suite 作者无需输入密码或 IAM 角色即可连接到 Amazon Redshift 数据源。如果使用 Amazon Redshift Spectrum,则所有权限管理都集中在 Amazon Redshift 中。当 Amazon Quick Suite 和 Amazon Redshift 使用相同的 IAM 身份中心组织实例时,支持可信身份传播。以下功能当前不支持可信身份传播。
-
SPICE 数据集
-
数据来源上的自定义 SQL
-
警报
-
电子邮件报告
-
亚马逊 Quick Suite Q
-
CSV、Excel 和 PDF 导出
-
异常检测
要让 Amazon Quick Suite 连接到 Amazon Redshift 实例,您必须为该实例创建一个新的安全组。该安全组包含一条入站规则,该规则授权从相应的 IP 地址范围内访问该安全组中的 Amazon Quick Suite 服务器。 AWS 区域要了解有关授权 Amazon Quick Suite 连接的更多信息,请参阅在 VPC 中手动启用对 Amazon Redshift 集群的访问权限。
启用从 Amazon Quick Suite 服务器到您的集群的连接只是基于 AWS 数据库数据源创建数据集的几个先决条件之一。有关所需内容的更多信息,请参阅从数据库创建数据集。
使用 Amazon Redshift 启用可信身份传播
当最终用户访问利用支持可信身份传播的数据源的 Amazon Quick Suite 资产时,可信身份传播会在 Amazon Redshift 中对其进行身份验证。当作者创建具有可信身份传播的数据源时,Amazon Quick Sight 中数据源使用者的身份会被传播并登录 CloudTrail。这允许数据库管理员在 Amazon Redshift 中集中管理数据安全,并自动将所有数据安全规则应用于 Amazon Quick Suite 中的数据使用者。对于其他身份验证方法,创建数据来源的作者的数据权限将应用于所有数据来源消费者。数据源作者可以选择对他们在 Amazon Quick Sight 中创建的数据源应用额外的行和列级安全保护。
仅 Direct Query 数据集支持可信身份传播数据来源。SPICE 数据集目前不支持可信身份传播。
先决条件
在开始之前,请确保您已准备好所有必需的先决条件。
-
只有与 IAM 身份中心集成的 Amazon Quick Suite 账户才支持可信身份传播。有关更多信息,请参阅使用 IAM 身份中心配置您的 Amazon Quick Suite 账户。
-
与 IAM Identity Center 集成的 Amazon Redshift 应用程序。您使用的 Amazon Redshift 集群必须与您要使用的亚马逊 Quick Suite 账户位于同一个组织中 AWS Organizations 。集群还必须使用您的 Amazon Quick Suite 账户配置的 IAM Identity Center 中相同的组织实例。有关配置 Amazon Redshift 集群的更多信息,请参阅集成 IAM Identity Center。
在 Amazon Quick Sight 中启用可信身份传播
要将 Amazon Quick Sight 配置为通过可信身份传播连接到亚马逊 Redshift 数据源,请将亚马逊 OAuth Redshift 范围配置到您的亚马逊 Quick Suite 账户。
要添加允许 Amazon Quick Suite 授权向 Amazon Redshift 传播身份的范围,请指定 Amazon Quick Suite 账户的 AWS 账户 ID 以及您想要授权身份传播的服务(在本例中为该服务)。'REDSHIFT'
指定您正在授权 Amazon Quick Suite 向其传播用户身份的 Amazon Redshift 集群的 IAM 身份中心应用程序 ARN。此信息可在 Amazon Redshift 控制台中找到。如果您没有为 Amazon Redshift 范围指定授权目标,Amazon Quick Suite 将授权来自任何共享同一 IAM 身份中心实例的 Amazon Redshift 集群的用户。以下示例将 Amazon Quick Suite 配置为通过可信身份传播连接到 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"
以下示例从 Amazon Quick Suite 账户中删除 OAuth 范围。
aws quicksight delete-identity-propagation-config --aws-account-id "AWSACCOUNTID" --service "REDSHIFT" --authorized-targets "arn:aws:sso::"arn:aws:sso::XXXXXXXXXXXX:application/ssoins-XXXXXXXXXXXXapl-XXXXXXXXXXXXXXXXXXXXXXXX:application/ssoins-XXXXXXXXXXXX/apl-XXXXXXXXXXXX"
以下示例列出了 Amazon Quick Suite 账户中当前存在的所有 OAuth 范围。
aws quicksight list-identity-propagation-configs --aws-account-id "AWSACCOUNTID"
使用可信身份传播连接到 Amazon Redshift
使用以下过程连接到 Amazon Redshift 可信身份传播。
使用可信身份传播连接到 Amazon Redshift
-
在 Amazon Quick Suite 中创建新的数据集。有关创建数据集的更多信息,请参阅创建数据集。
-
选择 Amazon Redshift 作为新数据集的数据来源。
注意
现有数据来源的身份验证类型无法更改为可信身份传播
-
选择 IAM Identity Center 作为数据来源的身份选项,然后选择创建数据来源。
手动启用 VPC 中的 Amazon Redshift 集群的访问权限
| 适用于:企业版 |
使用以下步骤启用 Amazon Quick Sight 对 VPC 中的 Amazon Redshift 集群的访问权限。
启用 Amazon Quick Sight 访问 VPC 中的 Amazon Redshift 集群
登录 AWS 管理控制台 并打开亚马逊 Redshift 控制台,网址为。https://console.aws.amazon.com/redshiftv2/
-
导航到您要在 Amazon Quick Suite 中提供的集群。
-
在集群属性部分中,找到端口。记下 Port 值。
-
在集群属性部分中找到 VPC ID,记下 VPC ID 值。选择 VPC ID 以打开 Amazon VPC 控制台。
-
在 Amazon VPC 控制台上,选择导航窗格中的安全组。
-
选择创建安全组。
-
在 Create Security Group 页面上,输入安全组信息,如下所示:
-
对于安全组名称,输入
redshift-security-group。 -
对于描述,输入
redshift-security-group。 -
对于 VPC,为您的 Amazon Redshift 集群选择 VPC。这是您记下 ID 的 VPC。
-
-
选择 Create security group(创建安全组)。
您的新安全组应显示在屏幕上。
-
使用以下属性创建第二个安全组。
-
对于安全组名称,输入
quicksight-security-group。 -
对于描述,输入
quicksight-security-group。 -
对于 VPC,为您的 Amazon Redshift 集群选择 VPC。这是您记下 ID 的 VPC。
-
-
选择 Create security group(创建安全组)。
-
创建新的安全组后,为新组创建入站规则。
选择新的
redshift-security-group安全组,然后输入以下值。-
对于类型,选择 Amazon Redshift。
-
对于协议,选择 TCP。
-
对于端口范围,请输入您要提供访问权限的 Amazon Redshift 集群的端口号。此端口号是您在先前步骤中记下的端口号。
-
对于来源,输入
quicksight-security-group的安全组 ID。
-
-
选择 Save rules (保存规则) 以保存您的新入站规则。
-
对
quicksight-security-group重复上一步并输入以下值。-
对于类型,请选择所有流量。
-
对于协议,选择全部。
-
对于端口范围,选择全部。
-
对于来源,输入
redshift-security-group的安全组 ID。
-
-
选择 Save rules (保存规则) 以保存您的新入站规则。
-
在 Amazon Quick Suite 中,导航至 “管理亚马逊快速套件” 菜单。
-
选择管理 VPC 连接,然后选择添加 VPC 连接。
-
为新 VPC 连接配置以下值。
-
对于 VPC 连接名称,为 VPC 连接选择一个有意义的名称。
-
对于 VPC ID,选择 Amazon Redshift 集群所在的 VPC。
-
对于子网 ID,为用于 Amazon Redshift 的可用区(AZ)选择子网。
-
对于安全组 ID,复制并粘贴
quicksight-security-group的安全组 ID。
-
-
选择创建。新的 VPC 可能需要几分钟才能生成。
-
在 Amazon Redshift 控制台中,导航到
redshift-security-group配置为的 Amazon Redshift 集群。选择属性。在网络和安全设置下,输入安全组的名称。 -
在 Amazon Quick Suite 中,选择 “数据集”,然后选择 “新建数据集”。创建具有以下值的新数据集。
-
对于数据来源,选择 Amazon Redshift 自动发现。
-
为数据来源指定一个有意义的名称。
-
实例 ID 应使用您在 Amazon Quick Suite 中创建的 VPC 连接自动填充。如果实例 ID 未自动填充,请从下拉列表中选择您创建的 VPC。
-
输入数据库凭证。如果您的 Amazon Quick Suite 账户使用可信身份传播,请选择单点登录。
-
-
验证连接,然后选择创建数据来源。
如果要进一步限制默认出站规则,请更新 quicksight-security-group 的出站规则,以仅允许 Amazon Redshift 流量进入 redshift-security-group。您还可以删除位于 redshift-security-group 中的出站规则。
启用对 Amazon Redshift Spectrum 的访问
使用亚马逊 Redshift Spectrum,你可以使用亚马逊 Redshift 将亚马逊 Quick Suite 连接到外部目录。例如,您可以访问 Amazon Athena 目录。然后,您可以使用 Amazon Redshift 集群(而不是 Athena 查询引擎)查询 Amazon S3 数据湖上的非结构化数据。
您也可以合并数据集以包含 Amazon Redshift 和 S3 中存储的数据。然后,您可以在 Amazon Redshift 中使用 SQL 语法访问这些数据。
注册数据目录(适用于 Athena)或外部架构(对于 Hive
有关使用 Amazon Redshift Spectrum 的更多信息,请参阅《Amazon Redshift 数据库开发人员指南》中的使用 Amazon Redshift Spectrum 查询外部数据。
要使用 Redshift Spectrum 进行连接,请执行以下操作:
-
创建或指定与 Amazon Redshift 集群关联的 IAM 角色。
-
为此 IAM 角色添加 IAM 策略
AmazonS3ReadOnlyAccess和AmazonAthenaFullAccess。 -
为您计划使用的表注册外部架构或数据目录。
Redshift Spectrum 可将存储与计算分离,以便单独扩展。您只需为您运行的查询付费。
要连接到 Redshift Spectrum 表,你无需授予亚马逊 Quick Suite 访问亚马逊 S3 或 Athena 的权限。Amazon Quick Suite 只需要访问亚马逊 Redshift 集群。有关配置 Redshift Spectrum 的完整详情,请参阅《Amazon Redshift 数据库开发人员指南》中的 Amazon Redshift Spectrum 入门。