从网络应用程序查询 dynamoDB 的理想方式是什么?

what the ideal way to query dynamoDB from web app?

我正在尝试从我的 Web 应用程序查询 DynamoDB。

在使用 IAM 并创建第 3 方角色并让用户通过 Facebook 或 Google 登录我的 Web 应用程序后,我成功地做到了这一点,我的应用程序获得了一个令牌并创建了 AWS 凭证。

现在,我希望我网站的任何用户都能够查询我的一个 dynamoDB tables,它应该是 public table,我尝试这样做与角色 - 模拟以前的方式 - 但我总是得到一个错误"Missing credentials in config"?

如何避免这种情况?有没有办法在没有来自第 3 方的令牌的情况下创建 AWS 凭证并将它们附加到 IAM 角色,或者我是否必须创建一个 IAM 用户而不是使用密钥,或者是否有任何其他更好的方法来做到这一点?

听起来您需要的是 Amazon Cognito。如果您正在寻找示例 Web 应用程序,最近的一篇博客 post 发布了关于使用 Amazon Cognito 对用户进行身份验证以访问 DynamoDB table 的示例应用程序。 http://www.infoq.com/articles/mars-rover-application-DynamoDB

具体来说,您可能会发现 "Application authenticates user via Amazon Cognito" 部分很有用。

希望对您有所帮助!祝你好运!