2016-07-11 10 views
2

Unser Unternehmen erwägt Neo4j für eine Datenbanklösung. Wir verwenden Oracle dbs und haben uns auf ihr eingebautes Benutzerauthentifizierungsmanagement verlassen, um zu steuern, wer eine Verbindung zur db herstellen kann, wer Lese- oder Schreibzugriff hat und was sie in der Datenbank anzeigen dürfen.Welche erweiterten Sicherheitsoptionen gibt es für Neo4j?

Mit Neo4j fehlen die meisten dieser Sicherheitsoptionen. Während wir nicht unbedingt die Sichtbarkeit von Knoten und Beziehungen auf Benutzerebene kontrollieren müssen, kann das Fehlen mehrerer Benutzerkonten und die Unmöglichkeit, den Lese-/Schreibzugriff pro Konto zu steuern, ein Dealbreaker sein. Während der Anwendungszugriff von Neo4j gut und sicher sein sollte, wollen wir unseren Entwicklern Lese-Accounts über den Browser-Client erlauben (zumindest in unseren Dev- und Qa-Umgebungen).

Die einzige Lösung, die bisher bei uns herausgesprungen ist, war GraphAware's Enterprise Security Angebot. Ich würde gerne wissen, ob es andere Lösungen gibt, die mit Neo4j 3.0 kompatibel sind. Im Moment erwägen wir nicht die Verwendung der Neo4j REST API.

Antwort

2

GraphAware Enterprise Security ist mit 3.0 kompatibel und es gibt keine anderen Lösungen, soweit uns bekannt ist. Aus Githubs Aktivitäten heraus sieht es jedoch so aus, als würden die Sicherheitsmechanismen in Neo4j 3.1 um mehrere Benutzer und LDAP-Integration erweitert werden. Wir müssen warten, bis 3.1 aus ist. GraphAware Enterprise wird mit Neo4j 3.1 kompatibel sein und seine nativen Sicherheitsfunktionen nach Möglichkeit nutzen.

DISCLAIMER: Ich arbeite bei GraphAware.

+0

Vielen Dank, ich war mir nicht bewusst, 3.1 würde dies in Angriff nehmen, etwas auf das ich mich freuen kann, obwohl Ihr Enterprise Security Produkt die Messlatte ziemlich hoch setzt. – InverseFalcon

1

Ich habe eine andere Teillösung zu diesem gefunden, obwohl es seine eigenen Reifen hat, um sich einzurichten.

Mit der Enterprise-Edition kann ein Knoten in einer Clusterumgebung als schreibgeschützter Slave konfiguriert und mit seinem eigenen Login/Pass für die Verwendung durch den Entwickler konfiguriert werden.