步骤 1:设置权限 - 亚马逊 QuickSight
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

重要:我们已经重新设计了 Amazon QuickSight 分析工作空间。您可能会遇到无法反映 QuickSight 控制台新外观的屏幕截图或程序化文本。我们正在更新屏幕截图和过程文本。

要查找特征或项目,请使用快速搜索栏

有关新外观 QuickSight的更多信息,请参阅在 Amazon 上引入全新的分析体验 QuickSight

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

步骤 1:设置权限

在下节中,您可以了解如何设置后端应用程序或 Web 服务器的权限。该任务需要具有 IAM 的管理访问权限。

每个访问控制面板的用户都扮演一个角色,授予他们 Amazon QuickSight 访问控制面板的权限和权限。要实现这一点,请在您的中创建一个 IAM 角色 Amazon Web Services 账户。将一个 IAM policy 与该角色相关联,以便为担任该角色的任何用户提供权限。IAM 角色需要提供权限才能检索特定用户群体的嵌入 URL。借助通配符 *,您可以授予为特定命名空间中的所有用户部分用户生成 URL 的权限。为此,请添加 quicksight:GenerateEmbedUrlForRegisteredUser

您可以在 IAM policy 中创建一个条件,限制开发人员可以在 GenerateEmbedUrlForRegisteredUser API 操作的 AllowedDomains 参数中列出的域。AllowedDomains 参数是可选参数。作为开发者,它允许您选择覆盖在 “管理 QuickSight” 菜单中配置的静态域。您最多可以列出三个可以访问生成的 URL 的域或子域。然后,此 URL 将嵌入您创建的网站。只有参数中列出的域才能访问嵌入式视觉对象。如果没有此条件,则可以在 AllowedDomains 参数中列出互联网上的任何域。

要限制开发人员可用于此参数的域,请在 IAM policy 中添加一个 AllowedEmbeddingDomains 条件。有关AllowedDomains参数的更多信息,请参阅 Amazon QuickSight API 参考GenerateEmbedUrlForRegisteredUser中的。

以下示例策略提供了这些权限。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "quicksight:GenerateEmbedUrlForRegisteredUser" ], "Resource": "arn:partition:quicksight:region:accountId:user/namespace/userName", "Condition": { "ForAllValues:StringEquals": { "quicksight:AllowedEmbeddingDomains": [ "https://my.static.domain1.com", "https://*.my.static.domain2.com" ] } } } ] }

此外,如果您要创建将成为Amazon QuickSight 读者的首次用户,请务必在策略中添加quicksight:RegisterUser权限。

以下示例策略为即将成为 QuickSight 读者的首次用户提供了检索嵌入网址的权限。

{ "Version": "2012-10-17", "Statement": [ { "Action": "quicksight:RegisterUser", "Resource": "*", "Effect": "Allow" }, { "Effect": "Allow", "Action": [ "quicksight:GenerateEmbedUrlForRegisteredUser" ], "Resource": [ "arn:{{partition}}:quicksight:{{region}}:{{accountId}}:namespace/{{namespace}}", "arn:{{partition}}:quicksight:{{region}}:{{accountId}}:dashboard/{{dashboardId-1}}", "arn:{{partition}}:quicksight:{{region}}:{{accountId}}:dashboard/{{dashboardId-2}}" ], "Condition": { "ForAllValues:StringEquals": { "quicksight:AllowedEmbeddingDomains": [ "https://my.static.domain1.com", "https://*.my.static.domain2.com" ] } } } ] }

最后,您应用程序的 IAM 身份必须具有关联的信任策略,才允许访问您刚创建的角色。这意味着,当用户访问您的应用程序时,您的应用程序可以代表该用户担任该角色并在中 QuickSight配置用户。下面演示了一个示例信任策略。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowLambdaFunctionsToAssumeThisRole", "Effect": "Allow", "Principal": { "Service": "lambda.amazonaws.com" }, "Action": "sts:AssumeRole" }, { "Sid": "AllowEC2InstancesToAssumeThisRole", "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

有关 OpenId Connect 或 SAML 身份验证的信任策略的更多信息,请参阅 IAM 用户指南 的以下部分: