2016-05-06 2 views
10

In diesem neuen Update gab es einige Änderungen im Kern von Neo4j, die wirklich aufregend sind.Schreibgeschützter Web-Zugriff auf eine Lese-Schreib-Datenbank in Neo4j 3.0

Eine Sache, die in früheren Versionen von Neo4j fehlte, war die Möglichkeit, Benutzern die Verwendung der Webschnittstelle zu ermöglichen. Nun, sie könnten es verwenden, wenn es ihnen nichts ausmacht, dass sie alles löschen können, oder es macht Ihnen nichts aus, die gesamte Datenbank für alle lesbar zu machen, einschließlich Sie selbst.

Gibt es jetzt einen Workaround in 3.x? Ich sehe, dass Sie einige ziemlich großartige Verbesserungen an der Weboberfläche vorgenommen haben (die unter allen Konferenzen und YouTube-Videos unter dem Radar zu sein scheinen) - aber ich kann nicht zulassen, dass meine Benutzer etwas so Großartiges verwenden, weil sie vielleicht match (n) detach delete (n).

Vielen Dank! :)

Antwort

3

Wenn Sie Zugriff auf die Enterprise-Version haben oder die AGPL-Lizenz von neo4j-ha nicht stören, können Sie einen schreibgeschützten Slave erstellen.

Werfen Sie einen Blick auf neo4j high availability documentation für die Konfiguration.

Insbesondere möchten Sie folgende Eigenschaften haben festgelegt:

# Only allow read operations from this Neo4j instance. This mode still requires 
# write access to the directory for lock purposes. 
dbms.read_only=true 

und

# Whether this instance should only participate as slave in cluster. If set to 
# true, it will never be elected as master. 
ha.slave_only=true 
+0

Dies ist eine gute Lösung für Menschen, die bereit für die Enterprise-Version zu strecken, vor allem, weil es die Datenbank Mittel nicht von irgendwelchen Sicherheitsproblemen bedroht, die durch den Webserver/etc erzeugt werden, die der read_only-Slave öffentlich ausführen und ausstellen müsste. Es funktioniert auch auf Versionen von Neo vor 3.0 - allerdings bin ich sicher, dass andere Leute diese Frage finden in der Hoffnung auf eine einfache Lösung wird upse t wenn ich die Frage als zu früh geantwortet habe, bevor eine einfachere/kostenlose Lösung zur Verfügung gestellt wird :) Aber gute Antwort, danke frans! –