Quero gerar um URL de painel do Amazon QuickSight incorporado para usuários não registrados do QuickSight para que eu possa incorporar o painel em uma aplicação Web. Mas recebo erros de permissão.
Breve descrição
O usuário ou o perfil do AWS Identity and Access Management (IAM) que o servidor Web ou back-end usa deve ter permissão para gerar um URL do painel do QuickSight incorporado para usuários não registrados. Se o usuário ou o perfil do IAM não tiver a permissão correta, você receberá os seguintes erros:
Usuário do IAM
An error occurred (AccessDeniedException) when calling the GenerateEmbedUrlForAnonymousUser operation: User: arn:aws:iam::XXXXXXXXXXX:user/user1 is not authorized to perform: quicksight:GenerateEmbedUrlForAnonymousUser on resource: arn:aws:quicksight:region:XXXXXXXXXXX:namespace/default because no identity-based policy allows the quicksight:GenerateEmbedUrlForAnonymousUser action
Perfil do IAM
An error occurred (AccessDeniedException) when calling the GenerateEmbedUrlForAnonymousUser operation: User: arn:aws:sts::XXXXXXXXXXX:user:assumed-role/role-name/policy-name is not authorized to perform: quicksight:GenerateEmbedUrlForAnonymousUser on resource: arn:aws:quicksight:region:XXXXXXXXXXX:user:namespace/default because no identity-based policy allows the quicksight:GenerateEmbedUrlForAnonymousUser action
Para resolver esses erros, você deve anexar uma política do IAM com a permissão necessária.
Resolução
Anexe a seguinte política do IAM para a ação quicksight:GenerateEmbedUrlForAnonymousUser ao usuário ou perfil do IAM usado para chamar a API GenerateEmbedUrlForAnonymousUser:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "quicksight:GenerateEmbedUrlForAnonymousUser",
"Resource": [
"arn:aws:quicksight:<region>:<AWS Account ID>:namespace/<namespace>",
"arn:aws:quicksight:<region>:<AWS Account ID>:dashboard/<Dashboard ID>"
]
}
]
}
Observação: a definição de preço da capacidade da sessão deve estar ativa na conta do QuickSight para incorporar o URL do painel do QuickSight para usuários não registrados. Se não estiver ativa, o usuário receberá o erro UnsupportedPricingPlanException.
Informações relacionadas
Incorporar painéis de dados do QuickSight para todos