如何在Node.js AWS-SDK模块中设置多个AWS凭证?

时间:2020-01-23 15:28:16

标签: node.js amazon-web-services amazon-s3 amazon-sns

我需要为多个服务(例如s3,SNS ...)使用多个AWS凭证。

var awsS3 = require('aws-sdk');
var awsSes = require('aws-sdk');

awsS3.config.update({
    region: config.awsRegion,
    accessKeyId: config.sesAccessKeyId,
    secretAccessKey: config.sesSecretAccessKey
});

awsSes.config.update({
    region: config.s3Region,
    accessKeyId: config.s3AccessKeyId,
    secretAccessKey: config.s3SecretAccessKey
  });

但是上面的代码不起作用。

如何为不同的服务配置多个accessKeyIds,secretAccessKeys?

2 个答案:

答案 0 :(得分:1)

您可以在创建服务对象时传递config。以下是您要寻找的

const s3 = new aws.S3({ /* s3 config */ });
const ses = new aws.SES({ /* ses config */ });

答案 1 :(得分:0)

我认为您想使用策略而不是拥有多个凭据来控制它。使用单个凭据/角色,然后针对要允许和拒绝的每种服务使用自定义策略。然后,您的应用程序可以使用该角色/凭据,并且将基于策略被允许或限制。