步骤 1:设置权限 - Amazon QuickSight

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

步骤 1:设置权限

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

每个访问控制面板的用户都扮演一个角色,授予他们 Amazon QuickSight 访问控制面板的权限和权限。要使之成为可能,请在中创建一个IAM角色 AWS 账户。将IAM策略与角色关联以向担任该角色的任何用户提供权限。该IAM角色需要提供权限才能检索特定用户池URLs的嵌入内容。借助通配符 *,您可以授予URL为特定命名空间中的所有用户或特定命名空间中的一部分用户生成 a 的权限。为此,请添加 quicksight:GenerateEmbedUrlForRegisteredUser

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

要限制开发者可以使用此参数的域名,请在您的IAM政策中添加一个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 读者的首次用户提供了检索嵌入URL内容的权限。

{ "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用户指南》的以下部分: