2

我正在尝试在 Web 应用程序中嵌入 Quicksight 仪表板,并且一直在使用这个amazon-quicksight-embedding-sample 来启动和运行。我遵循了 README 中的所有说明,并在我的 AWS lambda 函数中运行了代码。当我测试代码时,它返回 null 并且日志在标题中报告 ValidationException。预期的输出是用于将仪表板嵌入网页的 URL。
实际输出如下:

ValidationException: 1 validation error detected: Value 'arn:aws:iam::655956663811:user/admin' at 'userArn' failed to satisfy constraint: Specified resource is not reachable in this region ('us-east-2')
at Object.extractError (/var/task/node_modules/aws-sdk/lib/protocol/json.js:51:27)
at Request.extractError (/var/task/node_modules/aws-sdk/lib/protocol/rest_json.js:55:8)
at Request.callListeners (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:106:20)
at Request.emit (/var/task/node_modules/aws-sdk/lib/sequential_executor.js:78:10)
at Request.emit (/var/task/node_modules/aws-sdk/lib/request.js:683:14)
at Request.transition (/var/task/node_modules/aws-sdk/lib/request.js:22:10)
at AcceptorStateMachine.runTo (/var/task/node_modules/aws-sdk/lib/state_machine.js:14:12)
at /var/task/node_modules/aws-sdk/lib/state_machine.js:26:10
at Request.<anonymous> (/var/task/node_modules/aws-sdk/lib/request.js:38:9)
at Request.<anonymous> (/var/task/node_modules/aws-sdk/lib/request.js:685:12)

用户“Admin”是具有管理员访问权限的 IAM 用户,并且 quicksight 帐户已将 amazonaws.com 和 amazon.com 的嵌入列入白名单。lambda 的测试输入为:

{
"dashboardId": "311d89d1-d666-4fb1-91cf-1500e28b76ca",
"userArn": "arn:aws:iam::<accountID>:user/admin",
"apiGatewayUrl": "bypassed for lambda testing",
"resetDisabled": "false",
"undoRedoDisabled": "false"
}

我究竟做错了什么?

4

1 回答 1

7

试试这样:

aws quicksight describe-user --user-name --aws-account-id <account_id> --namespace default --region

然后使用此响应中的 Arn。

于 2020-07-09T13:38:38.937 回答