首页 > 解决方案 > aws quicksight - 未能满足约束:在此区域中无法访问指定的资源('us-east-1')

问题描述

使用 nodejs AWS SDK 我正在尝试使用 S3 存储桶中的 csv 文件更新我的 quickSight 数据集。调用 AWS quicksight update-data-set 命令 ( https://docs.aws.amazon.com/cli/latest/reference/quicksight/update-data-set.html ) 我收到以下错误:

'physicalTableMap.string.member.s3Source.dataSourceArn' 未能满足约束:在此区域中无法访问指定的资源('us-east-1')

我检查了我的 quicksight 区域和 s3 存储桶区域都设置为“us-east-1”,所以不知道为什么它仍然在抱怨区域?IAM 也设置为 us-east-1

我传递的 dataSourceArn 是 S3 csv 文件的 arn。

代码

const updateDataSetParams: UpdateDataSetRequest = {
  AwsAccountId: awsAccountId /* required */,
  DataSetId: getEnvironmentKeyValue("AWS_PERMISSIONS_DATA_SET_ID") /* required */,
  ImportMode: "SPICE" /* required */,
  Name: getEnvironmentKeyValue("AWS_PERMISSIONS_DATA_SET_DISPLAY_NAME") /* required */,
  PhysicalTableMap: {
    string: {
      S3Source: {
        DataSourceArn: getEnvironmentKeyValue("AWS_PERMISSIONS_S3_DATA_SOURCE_ARN") /* required */,
        InputColumns: [
          /* required */
          {
            Name: "UserName" /* required */,
            Type: "STRING" /* required */
          },
          {
            Name: "CompanyName" /* required */,
            Type: "STRING" /* required */
          },
          {
            Name: "BranchIds" /* required */,
            Type: "STRING" /* required */
          }
          /* more items */
        ],
        UploadSettings: {
          ContainsHeader: true,
          Delimiter: ",",
          Format: "CSV"
          //      StartFromRow: 2
        }
      }
    }
  }
};

const updateDataSet = await quicksight.updateDataSetAsync(updateDataSetParams);

p:s ,我设法调用了其他 quicksight 命令,例如 create-namespace 和 create-user ,它们都可以正常工作。只有当我尝试更新数据集时。

标签: amazon-web-servicesamazon-s3aws-cliamazon-quicksight

解决方案


推荐阅读