AWS QuickSight Embedding CLI error - aws: error: argument command: Invalid choice, valid choices are:

AWS QuickSight Embedding CLI error - aws: error: argument command: Invalid choice, valid choices are:

我正在尝试嵌入 QuickSight 仪表板并按照当前步骤操作。

https://aws.amazon.com/blogs/big-data/embed-interactive-dashboards-in-your-application-with-amazon-quicksight/

我处于第 3 步,可以担任该角色,

export AWS_ACCESS_KEY_ID="access_key_from_assume_role"
export AWS_SECRET_ACCESS_KEY="secret_key_from_assume_role "
export AWS_SESSION_TOKEN="session_token_from_assume_role"

然而,当我尝试从下一部分开始调用 "aws quicksight ..." 的下一步时,我收到以下错误,

aws: error: argument command: Invalid choice, valid choices are:

我已经安装了 pip 并确保命令行文本与正确的详细信息匹配。

有没有人遇到过这种情况或知道为什么 aws quicksight 命令不能在 CLI 中运行?

检查 AWS CLI 版本:

aws --version

AWS CLI 似乎需要更新。 要升级现有的 AWS CLI 安装,请使用 --upgrade 选项:

pip install --upgrade awscli

如果你有 pip3 那么。

pip3 install --upgrade awscli

sudo pip3 install --upgrade awscli

还要记住 aws sts assume-role --role-arn 有过期令牌,需要再次 运行 此命令以获取 AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY and AWS_SESSION_TOKEN 才能继续。 我所做的是,我为这些凭据准备了一个临时配置文件,并在接下来的 aws quicksight 命令中使用了这个配置文件。 例如

aws configure set AWS_ACCESS_KEY_ID XXXXXXX --profile tempprofile
aws configure set AWS_SECRET_ACCESS_KEY XXXXXXXX--profile tempprofile
aws configure set AWS_SESSION_TOKEN XXXXXXX --profile tempprofile

在我的例子中我也设置了

aws configure set REGION ap-southeast-2 --profile tempprofile

然后在接下来的 aws quicksight 命令中使用 --profile tempprofile