AWS Lambda Node.js功能不使用accessKeyId和secretAccessKey吗?

时间:2019-05-15 11:35:42

标签: node.js aws-lambda

根据建议,我曾经使用过aws-sdk来处理函数。这需要accessKeyId和secretAccessKey。

我想知道,由于我为该功能分配了一个角色,并且该角色具有一组权限,是否有一种方法可以使用该角色的权限从存储桶中进行下载/上传,而没有将凭据放入代码中?

2 个答案:

答案 0 :(得分:1)

如果您为具有必需访问权限的AWS Lambda设置适当的角色,则不需要任何accessKey和secretKey。

答案 1 :(得分:0)

来自AWS文档页面 https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/nodejs-write-lambda-function-example.html

配置SDK

这是配置SDK的Lambda函数的一部分。代码中未提供凭据,因为它们是通过所需的IAM执行角色提供给Lambda函数的。

java.util.Map<String,Beacon> beacons=new java.util.HashMap<>(); 

public void add(String beaconId, Integer rawValue)
{
    //adds a new beacon for a new beaconId
    map.computeIfAbsent(beaconId,beaconId->new Beacon()).add(rawValue);
}

在提供IAM执行角色时,基本上不需要指定访问密钥和机密