Let's say I have two collections in my MongoDB database and an HTTP service which a user can use to submit a JSON object. The parsed json is then used like this:
db.public_collection.find( user_json ).limit(10)
This is performed by a RBAC user without write access.
Using the $where operator, could a user:
- Alter records in the collection (I assume RBAC prevents this)?
- Alter records in another collection?
- Perform a resource-intensive query which caused the server to slow down?