我使用AWS IoT JavaScript SDK作为部署在AWS Elastic Beanstalk上的应用程序的一部分。尝试初始化客户端时,出现以下错误:Failed to read credentials from /tmp/.aws/credentials
这是有道理的,因为我的Elastic Beanstalk环境可以通过其IAM角色访问AWS服务,而不是通过凭证文件。因此,当我的环境使用IAM角色而不是文件时,如何初始化客户端?
以下是我正在使用的代码:
const awsIot = require("aws-iot-device-sdk");
const device = awsIot.device({
host: "myhost.region.amazonaws.com",
protocol: "wss",
});
答案 0 :(得分:0)
在阅读此GitHub issue之后,看起来我需要通过STS,Cognito或其他服务以及refresh the client获得临时凭证,并在这些凭据到期之前定期使用这些凭据。