gpt4 book ai didi

mongodb - 如何在 NoSql 数据库(MongoDB)中强制执行外键?

转载 作者:IT老高 更新时间:2023-10-28 13:08:14 27 4
gpt4 key购买 nike

假设我有一个文档集合,例如:

{ "_id" : 0 , "owner":0 "name":"Doc1"},{ "_id" : 1 , "owner":1, "name":"Doc1"}, etc

另一方面,所有者被表示为一个单独的集合:

{ "_id" : 0 , "username":"John"}, { "_id" : 1 , "username":"Sam"}

如何确保在我插入文档时它以正确的方式引用用户。在老式 RDBMS 中,这可以使用外键轻松完成。

我知道我可以从我的业务代码中检查插入的正确性,但是如果攻击者篡改了我对服务器的请求并将 "owner": 100 设置为 100 并且 Mongo 不会返回任何异常怎么办。

我想知道在实际应用程序中应该如何处理这种情况。

提前谢谢你!

最佳答案

MongoDB 没有外键(您可能已经注意到了)。因此,基本上答案是“不要让用户篡改请求。只让应用程序插入符合您的参照完整性规则的数据。”

MongoDB 在很多方面都很棒...但是如果您发现需要外键,那么它可能不是解决问题的正确方法。

关于mongodb - 如何在 NoSql 数据库(MongoDB)中强制执行外键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8195190/

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