我在Elastic Beanstalk中运行一个快速应用程序,并且在一种途径中,我使用aws-sdk将通知发布到sns。
这在本地运行时有效,但是在Elastic Beanstalk环境中,我如何/将如何设置凭据“ myprofile”?
Offer
答案 0 :(得分:0)
您可以使用IAM实例配置文件为ec2实例提供权限,因此,当您的应用程序加载SDK时,所传递的凭据将自动加载。
检查此链接https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/concepts-roles.html-您需要的是实例配置文件。为了创建实例配置文件,请转到IAM控制台>角色,然后选择服务EC2作为可以承担此角色的服务。然后附加应用程序需要调用的策略(SNS内容)。
在beantalk设置上,在安全性下,您可以设置刚刚创建的IAM实例配置文件-因此该环境上的实例应具有与其关联的角色。
您的代码应如下所示:
router.post('/publish', async (req, res) => {
var AWS = require('aws-sdk')
AWS.config.update({region: 'us-east-2'})
//...more stuff
})
还要检查是否可以要求并在控制器外部设置区域;)