La seguridad de MongoDB para agentes de IA se centra en escrituras a nivel de colección, cambios estructurales y patrones de agregación. FutrixData inspecciona las operaciones de Mongo por tipo (find, aggregate, updateMany, dropDatabase) y usa la salida de explain para detectar escaneos de colección antes de que envíen gigabytes al contexto del agente.
El riesgo en MongoDB no se parece al de SQL. Las operaciones peligrosas son drops de colección, concesiones de roles, etapas de agregación que escriben en otras colecciones ($merge, $out) y llamadas find sin límite que materializan toda la colección en el contexto del agente.
FutrixData parsea operaciones de Mongo tanto en sintaxis JSON como de shell, así que db.users.drop() y { "drop": "users" } resuelven a la misma regla.
| Operación | Acción por defecto |
|---|---|
find, aggregate, count | allow |
insertOne, insertMany, updateOne, updateMany, replaceOne, deleteOne, deleteMany | warn |
Agregaciones entre colecciones ($lookup, $unionWith) | warn |
Agregaciones con $merge o $out | require_approval |
renameCollection, collMod, dropIndexes | require_approval |
drop, dropDatabase | block |
createUser, dropUser, grantRolesToUser | block |
Para find y aggregate, FutrixData ejecuta explain y comprueba:
Una consulta que apunta a un campo indexado se mantiene en bajo riesgo; la misma consulta con una regex sobre un campo no indexado se escala a medio.
events en producción; requerir aprobación para cualquier update sobre users.$out dirigido a audit_logs independientemente de la fuente.// Agent attempts:
db.users.drop()
// FutrixData response:
{ "ok": false, "risk": "block", "rule": "mongo.drop_collection", "audit_id": "audit_01HQ8N..." }// Agent attempts:
db.events.aggregate([
{ $match: { kind: "purchase" } },
{ $out: "purchases_summary" }
])
// FutrixData response:
{ "ok": false, "risk": "require_approval", "rule": "mongo.aggregate_writes_other_collection" }Sí. FutrixData se conecta mediante el driver estándar de MongoDB, así que cualquier cosa que el MongoDB Driver soporte — replica sets, sharded clusters, MongoDB Atlas — funciona igual. La evaluación de reglas se ejecuta en FutrixData; los sondeos de explain usan la misma conexión que la consulta real.
Las agregaciones y finds que contienen $where se marcan en warn o superior. La regla es configurable por colección — puedes bloquear $where de forma dura contra fuentes de producción mientras lo permites en desarrollo.
Sí. El alcance puede ser un tipo de base de datos (toda MongoDB), una instancia específica de fuente de datos (sólo prod-mongo) o una colección específica. Las reglas con alcance más preciso prevalecen sobre las más amplias.
Sí. FutrixData trata Atlas como cualquier otro endpoint de MongoDB — cadena de conexión de entrada, resultados enmascarados de salida. Las listas de IPs permitidas de Atlas deben incluir el host de FutrixData (o, en autoalojado, tu salida de red).
La evaluación de reglas estáticas es de microsegundos. Los sondeos de explain añaden un round-trip extra en lecturas donde la ruta de acceso importa. Las escrituras se evalúan estáticamente — sin sondeo.
Aplicación de escritorio gratuita para macOS, Windows y Linux. Enterprise Edition autoalojada para despliegues en producción.