Quels mécanismes de sécurité ne Meteor ont?
Nous savons tous que Meteor propose la miniMongo pilote de façon transparente qui permet au client d'accéder à la persistance de la couche (MongoDB).
Si un client peut accéder à la persistance de l'API, comment fait-on garantir la sécurité de son application?
Quels sont les mécanismes de sécurité qui Meteor offre et dans ce contexte, doit-il être utilisé?
- J'aime que cette question a été traitée déjà, mais ils devraient vraiment avoir mentionné dans la vidéo. Je pense que pratiquement n'importe quel développeur web regarder il aura à cette question sur leur esprit que de 10 secondes jusqu'à la fin de celui-ci, et juste se sentir ennuyé que pour un tel produit génial, ils SEMBLENT être en ignorant la sécurité évidente problème entièrement.
- Meteor 0.5.0 ajouté authentification de l'utilisateur meteor.com/blog/2012/10/17/...
- yep, plz lire les réponses.
- Vous pourriez reformuler ce un peu pour le faire ré-ouvert. Peut-être que "des mesures de sécurité Que doit-je prendre?" ou "Quelles options de sécurité sont disponibles?"
- Opinion fondée? Wat? Je thot c'était une réouverture de vérification, car il n'est évidemment pas l'avis de la base.
- J'ai une sorte d'accord, l'opinion basée décision est hors contexte - réponses sont basées sur des faits réels.
Vous devez vous connecter pour publier un commentaire.
Lorsque vous créez une application à l'aide de météore de commande, par défaut, l'application inclut les paquets suivants:
Ensemble, ces imiter l'effet de chaque client ayant tous les accès en lecture/écriture pour le serveur de base de données. Ils sont utiles des outils de prototypage (à des fins de développement uniquement), mais généralement pas appropriées pour des applications de production. Lorsque vous êtes prêt pour le lancement de la production, il suffit de retirer ces paquets.
À ajouter de plus, Meteor prend en charge Facebook /Twitter /et Bien Plus encore paquets pour gérer l'authentification, et le plus cool est le Les comptes de l'INTERFACE utilisateur paquet
meteor remove autopublish insecure
.access denied
erreur. Check it out.Dans le les collections de doc dit:
Si vous parlez de restreindre le client de ne pas utiliser de votre non autorisée insert/update/delete API, c'est possible.
Voir leur, todo application à https://github.com/meteor/meteor/tree/171816005fa2e263ba54d08d596e5b94dea47b0d/examples/todos
Aussi, ils ont maintenant ajouté construit dans le module d'AUTHENTIFICATION, qui vous permet de vous connecter et vous inscrire. De sorte que son coffre-fort. Aussi loin que vous êtes en prenant soin de XSS , Valiations, client-têtes, etc.
mais vous pouvez convertir n'importe quel jour application de météore dans pleinement de travail nodejs application par le déploiement de nœud. Donc si vous savez comment sécuriser une application nodejs, vous devriez être en mesure d'assurer un météore.
Que de la version 0.6.4, pendant le mode de développement, is_client et is_server bloque toujours à la fois d'aller sur le système client. Je ne peux pas dire si ce sont distincts lorsque vous désactivez le mode de développement.
Toutefois, si elles ne sont pas, un hacker pourrait être en mesure d'avoir un aperçu du système d'examen par les blocs de si(Meteor.is_server ) du code. Qui me préoccupe particulièrement, surtout parce que j'ai constaté que j'ai encore à ce point ne peut pas séparer les Collections dans des fichiers séparés sur le client et le serveur.
Mise à jour
Bien, le point est de ne pas mettre de sécurité liées code dans un is_server bloc de la non-répertoire du serveur (c'est à dire - assurez-vous que c'est quelque chose sous l' /serveur .
Je voulais voir si j'étais juste un dingue de ne pas être capable de séparer le client et le serveur Collections dans le client et le serveur de répertoires. En fait, il n'y a pas de problème avec cela.
Voici mon test. C'est un exemple simple de le publier/souscrire modèle qui semble bien fonctionner.
http://goo.gl/E1c56