首页 > 解决方案 > 如何仅将我的 AWS lamda 锁定到我的 echo 设备

问题描述

我正在尝试编写一个新的回声(Alexa)技能,其中有一个 AWS lamda 调用来进行处理。但是我希望 lamda 只能被我的回声设备访问。其他设备即使知道 arn 也应该无法访问 lamda。

要设置哪些参数来实现这一点?

标签: aws-lambdaalexaalexa-skillamazon-echo

解决方案


据我所知,deviceId当你禁用和重新启用你的技能时,你的意志会改变。

每项技能都有一个独特之处applicationId,您将在您的技能的每个请求中收到它。在继续进行任何处理之前,您可以在您的 Lambda 代码中验证此 ID。

"application": {
            "applicationId": "amzn1.ask.skill.xxxx-xxxx-xxxx-xxxx-xxxxxxxx"
        },

您的 Echo 设备不会直接访问 Lambda 函数,而是您的技能会触发您的 Lambda 函数并将在其请求中包含一个deviceId和。applicationId

如果有人获得了您的 ARN,即使他们制作了另一种技能,他们也不会通过您applicationId在 Lambda 中的检查。


推荐阅读