【发布时间】:2018-02-06 15:00:54
【问题描述】:
假设我有一个文档集合,例如:
{ "_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 不会返回任何异常。
我想知道在真实应用程序中应该如何处理这种情况。
提前谢谢你!
【问题讨论】:
-
如果攻击者可以篡改您的请求,您认为他们无法篡改响应异常的原因是什么?
-
我已经发布了这个问题的解决方案stackoverflow.com/questions/56402942/…