AWS在node js sdk v3中更新凭据



在aws node v2 sdk中,我们可以在初始化客户端后更新凭据

var AWS = require('aws-sdk');
var S3 = AWS.S3();
AWS.config.update({
accessKeyId: 'AccessKeyId',
secretAccessKey: 'SecretAccessKey',
sessionToken: 'SessionToken'
});

我们可以在v3 sdk中初始化客户端后更新凭据吗

var s3 = require('@aws-sdk/client-s3')
var s3Client = s3.S3Client();
// now update the credentials like in sdk v2

在v2中不能更新客户端的配置。如果希望使用不同的凭据连接到AWS,只需创建另一个客户端对象:

const { S3Client } = require("@aws-sdk/client-s3");
// client with default credentials from my ./aws/config and ./aws/credentials file
const s3Client = S3Client();
// another client with different credentials
const otherS3Client = new S3Client({
credentials: {
accessKeyId: 'AccessKeyId',
secretAccessKey: 'SecretAccessKey',
sessionToken: 'SessionToken'
}
});

在AWS v3 JavaScript SDK中,AWS凭证是为每个服务设置的(参见:docs)。如果您在创建客户端时没有指定任何凭据,那么凭据提供程序将尝试在其他地方(如环境变量、令牌缓存等)查找您的凭据。

最新更新