如何使用有效的 AWS 配置文件配置 Alexa ask-cli?

Posted

技术标签:

【中文标题】如何使用有效的 AWS 配置文件配置 Alexa ask-cli?【英文标题】:How to configure Alexa ask-cli with a valid AWS profile? 【发布时间】:2018-03-30 09:06:23 【问题描述】:

在使用 developer.amazon.com 和 aws.amazon.com 的漂亮浏览器 GUI 之后,事情变得越来越严重,现在我想使用 ask-cli 来初始化 Alexa 技能及其 lambda 函数。

当我想ask init 时,它告诉我,我应该选择一个配置文件或创建一个新配置文件。两者都跳转到浏览器并使用 OAuth 来验证我的 ask 安装。

~ ask init
? Please create a new profile or overwrite the existing profile.
 (Use arrow keys)
  ──────────────
❯ Create new profile
  ──────────────
  Profile              Associated AWS Profile
  [default]                 ** NULL **
  [aws_profile]             ** NULL **

但 AWS 配置文件不会关联我的 AWS 配置文件。

如果我不将配置文件与 AWS 连接,我的 LamdaFunction 将不会加载/部署。

No AWS credential setup for profile: [default]. 
Lambda clone skipped. CLI lambda functionalities can be enabled 
by running `ask init` again to add 'aws_profile' to ASK cli_config

如何正确连接我的 ask-cli?

【问题讨论】:

你运行的是什么版本? '问-v' 我必须重新启动命令行会话才能“重新加载”配置文件并识别令牌 【参考方案1】:

您需要先在本地计算机上下载并安装 aws CLI。您可以从以下链接下载 aws CLI。

http://docs.aws.amazon.com/cli/latest/userguide/installing.html

如果您正在使用您的根账户用户,那么您必须生成您的访问 ID 和密钥,否则您必须创建具有 lambda 执行权限的新 IAM 用户。

您可以从以下链接生成 root 用户访问 ID 和密钥。 https://console.aws.amazon.com/iam/home

然后点击管理安全凭证,如下图所示,忽略警告后,您可以处理并点击访问密钥 ID 和密钥链接并生成新的并复制它们。

运行 aws configure 命令来配置您的 aws 帐户,它会询问您生成的访问 ID 和密钥并设置您的 aws 帐户。

aws 配置

在 aws configure 之后,您可以再次运行 ask init 命令再次配置帐户。

询问初始化

【讨论】:

【参考方案2】:

好吧,如果您已经安装了 ask-cli,则无需设置 aws-cli。

相反,如果未设置 AWS 凭证,您可以运行以下命令来设置 AWS 凭证并链接到 ASK 配置文件。

ask init --aws-setup

然后,系统会提示您输入个人资料名称、访问密钥和秘密访问密钥。如果您尚未创建多个 ASK 配置文件,您可以使用配置文件名称作为 默认。这将在 %USERPROFILE%.aws\credentials 位置自动创建一个 aws 凭证文件。现在,每次您尝试通过 ask-cli 部署/访问 lambda 代码时,它都会访问此文件中的凭据。

【讨论】:

以上是关于如何使用有效的 AWS 配置文件配置 Alexa ask-cli?的主要内容,如果未能解决你的问题,请参考以下文章

是故障?Alexa在电视广告中听到自己名子不会被唤醒?

Alexa没有找到我的技能

如何使用 Elastic Beanstalk 配置 aws cli 配置文件?

如何使用从 Alexa Smart Home Skill Directive 收到的 BearerToken 来识别使用 AWS Lambda 和 NodeJS 的用户电子邮件和个人资料?

在 Alexa 技能中播放由 AWS api 网关创建的 mp3

AWS - Alexa 指令定义