Seguridad
Tener acceso a la base de datos en el cliente puede dar la impresión de ser poco seguro. Y es cierto. Por defecto Meteor viene con dos paquetes incluidos, autopublish e insecure. Son dos paquetes que nos facilitaran mucho el tiempo a la hora de hacer un prototipo inicial. Pero que mas adelante tendremos que eliminar y configurar bien la seguridad de nuestra aplicación.
Cuando quitemos estos paquetes ya no podremos realizar ninguna operación sobre la base de datos, ni tendremos acceso a ninguno de los datos. Para tener acceso a los datos tendremos que utilizar las publicaciones y suscripciones
Para realizar acciones sobre la base de datos, ya sea insertar, borrar o actualizar cualquier cosa, tenemos dos opciones. Definir una a una las reglas que permitimos o prohibimos, utilizando metodos de las propias colecciones. O invocar a métodos en el servidor, desde el cliente, y el servidor tiene pleno acceso a la base de datos. La opción de permitir y denegar es muy vulnerable a dejar huecos por los que saltarse la seguridad muy rápidamente, con los métodos tenemos un mayor control para securizar nuestra aplicación.
Existe un paquete muy importante audit-arguments-check que nos obligara a que todo dato proporcionado por el usuario tenga que ser verificado utilizando la función check que nos ofrece Meteor. Con lo que nos obligamos a cumplir una de las reglas mas importantes en seguridad informática, nunca confíes en lo que te envie un usuario.