我在本地使用DynamoDB。在Node.js中使用aws-sdk,如果我不使用AccessKey
和secretAccessKey
var AWS = require('aws-sdk');
AWS.config.update({
region: 'us-east-2',
endpoint: "http://localhost:8000"
});
我收到错误"Missing credentials in config"
如果我使用我的AWS EC2实例AccessKey
和secretAccessKey
,则错误消失
AWS.config.update({
accessKeyId: 'myAccesskey',
secretAccessKey: 'mySecretkey',
region: 'us-east-2',
endpoint: "http://localhost:8000"
});
但为什么呢?我正在使用本地DynamoDB。它不应该需要我的AWS凭证。我错过了什么?
答案 0 :(得分:2)
来自Setting Up DynamoDB Local (Downloadable Version):
DynamoDB将使用单个数据库文件,而不是为每个凭据和区域使用单独的文件。如果指定
-sharedDb
,则所有DynamoDB客户端都将与同一组表进行交互,而不管其区域和凭据配置如何。
凭据本身可能未经过验证,但用于根据上述选项唯一标识用户以呈现不同的视图。