我是新的AWS平台。我正在尝试使用AWS lambda,API网关和DynamoDB构建移动后端,同时使用Cognito和Facebook进行身份验证。
用户登录应用程序,应该能够进行数据保存。这应该作为UserID(我应该从Cognito获得),data1,data2,data3保存在表中。这只属于这个。假设这些是用户的活动。
当他下次登录时,他应该能够看到他输入的数据。
我正在寻找示例,我想出了这个关于细粒度访问控制的链接,其中表格由特定用户和许可进行了分配。
https://aws.amazon.com/blogs/mobile/dynamodb-on-mobile-part-5-fine-grained-access-control/
这听起来不对。在常规的以RDBMS为中心的应用程序中,应用程序使用连接字符串中的特定用户连接到数据库。使用“username = user_id”即时构建的查询将用户特定数据返回给用户。
以上链接是否在讨论不同的事情?
我很困惑。
感谢您的时间!!
答案 0 :(得分:1)
我相信您链接的文章正在讨论允许应用直接访问DynamoDB,方法是直接调用AWS API而不是通过后端应用层。它使用IAM策略中的变量仅允许用户对包含其ID作为主键的表执行查询。
在您的情况下,AWS Lambda函数是您的后端应用程序层。您可以简单地将一个IAM角色分配给Lambda函数,该函数允许它查询DynamoDB表中的所有记录,并使用UserID作为查询键在Lambda函数中构建查询。