gpt4 book ai didi

javascript - 使用基于 AWS Cognito 和 IAM Angular 色的 AWS DynamoDB 直接从客户端(Web 应用程序)访问的安全漏洞是什么

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:59:17 25 4
gpt4 key购买 nike

直接访问 AWS DynamoDB(使用 aws-sdk)和 DynamoDB 可访问性的客户端应用程序(使用客户端 javascript 的 Web 应用程序)由 AWS Cognito 进行身份验证。所有用户都必须使用 AWS Cognito 登录才能访问 AWS DynamoDB。

对于上述无服务器(客户端javascript应用程序-从浏览器访问),上述应用程序架构的安全漏洞是什么?

最佳答案

您需要确保通过 Cognito 授予用户的权限尽可能受到限制。最明显的一个是他们将拥有只读权限,否则,用户将能够调整您的代码以删除、更新或将项目放入您的表中。

另一个风险是用户将能够访问同一表上其他用户的数据。如果您的表包含每个用户的数据(例如个人资料)并且您希望允许每个用户快速检索他的个人资料,用户将能够调整您的代码以读取其他用户的数据。您可以使用细粒度访问控制 ( http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/specifying-conditions.html ) 对其进行限制,这将允许用户仅读取(或写入)具有其 user_id 的记录。

您可以考虑在用户和 DynamoDB 表之间放置一个 AWS Lambda 以对输入进行更多检查,以及激活 DynamoDB 流以捕获对表的每个更改以从错误的更改中恢复(即使使用正确的权限)。

关于javascript - 使用基于 AWS Cognito 和 IAM Angular 色的 AWS DynamoDB 直接从客户端(Web 应用程序)访问的安全漏洞是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45113254/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com