Est-il possible d'utiliser la réplication filtrée de CouchDB pour répliquer uniquement le sous-ensemble des données avancées à un utilisateur?

StackOverflow https://stackoverflow.com//questions/10691605

Question

En particulier, la réplication filtrée peut-elle être effectuée avec PouchDB?Je veux m'assurer que le client ne peut pas omettre le filtre et donc synchroniser contre toute la base de données.

Était-ce utile?

La solution

Il n'y a pas de réplication de Couchdb "Protocole". Le processus de réplication est simplement un client qui se connecte à deux points d'extrémité CouchDB, en lisant des documents d'un, et les écrivant dans l'autre. Bien sûr, CouchDB est livré avec un tel client ("le réplicateur") intégré; Mais conceptuellement, c'est une application tierce partie.

Qu'est-ce que cela signifie, vous pouvez supprimer la réplication de votre analyse de sécurité de votre application. Premièrement, considérez les clients Web normaux de lecture et d'écriture sur votre serveur. Verrouille ça. Vous pouvez assumer un adversaire hypothétique avec un navigateur Web piraté ou utiliser un client HTTP personnalisé (qui ne respecte pas les stratégies d'origine croisée par exemple).

Avec ce problème résolu, la réplication sera, par nécessité, suivez votre politique de sécurité.

En d'autres termes, reproduit entre Pouchedb et Couchdb:

  • Si vous êtes poussant sur le serveur distant, votre outil de sécurité est la fonction GeneraCoDICode distante.
  • Si vous êtes tirant à partir du serveur distant, votre outil de sécurité est l'objet de base de données _security - spécifiquement les matrices genièraCoDiceCode. Un client peut soit lire une base de données entièrement, ou pas du tout. Bien sûr, vous pouvez effectuer des réplications filtrées dans des bases de données d'utilisation spéciale du côté serveur.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top