neueda / jetbrains-plugin-graph-database-support

Graph Databases support for JetBrains family IDEs.
Apache License 2.0
222 stars 56 forks source link

Failed to connect to neo4j via bolt port #163

Closed poghosyan-arthur closed 1 year ago

poghosyan-arthur commented 4 years ago

Can't connect to neo4j version 4.0 via bolt port, but via web interface, it works well.

Screen Shot 2020-02-07 at 4 16 34 PM
mzeibig commented 4 years ago

same here. Stacktrace: image

GreYko commented 4 years ago

Should be fixed within next release (hope to trigger it today).

mfkilgore commented 4 years ago

Any update on the release with fix, did it happen?

poghosyan-arthur commented 4 years ago

@GreYko, any news on this bug?

unaimillan commented 4 years ago

I have the same issue when trying to connect to Neo4j inside Docker with both DataGrip and PyCharm Neo4j Server version 4.0.2 (community) Graph Database Support 3.0.2 PyCharm 2019.3.4 Runtime version: 11.0.6+8-b520.43 amd64 VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o Linux 5.0.0-38-generic

Screenshot_20200323_134445 Screenshot_20200323_134550

unaimillan commented 4 years ago

@GreYko The Neo4j browser and py2neo both are connecting perfectly

As I've figured out using Wireshark, it seems like plugin is trying to connect using TLSv1.2, but my server is configured to reject all such attempts (dbms.connector.bolt.tls_level is DISABLED by default). I've tried changing tls_level to OPTIONAL and configuring security policies somehow, but then I've got the other error. Plugins is trying to establish connection, they exchange 2 messages with the server and then TLS Encrypted Alert appears :( Screenshot_20200323_141254

P.S. Meanwhile the https connection on port 7473 works fine, it also refuses to connect to bolt port

TLSv1.2 Record Layer: Alert (Level: Fatal, Description: Bad Certificate)

(This one might be, because I'm using self-signed, self-generated cert)

rulatir commented 4 years ago

Are there any known workarounds? I am willing to dance around this bug with my neo4j configuration just to get it working. This is a sandbox development environment and I am not at all concerned with security policies, so I am willing to set up dummy/stub ones "somehow" (how?) just to GetGoing™. Exact mkcert/openssl incantations welcome.

lqst commented 4 years ago

When I install Graph Database Support 3.0.2 from the Marketplace I get neo4j-java-driver-1.6.4.jar -> SSL handshake issue

Clone repo ./gradlew buildPlugin install the plugin from file -> neo4j-java-driver-4.0.0.jar -> All good

I am thinking something must have gone wrong in the latest release?

@GreYko Can we get a new release?

rulatir commented 4 years ago

@lqst thanks for your response. Modifying neo4j configuration is the length to which I was ready to go, but building the plugin from source isn't, so I will wait for an official fix.

unaimillan commented 4 years ago

Just now have recompiled the plugin from source, as @lqst suggested, and after replacing the original one, everything seems to be working For me (Linux) path for PyCharm plugins was $HOME/.local/share/JetBrains/Toolbox/apps/PyCharm-P/ch-0/193.6911.25.plugins/ and there I've replaced the folder GraphDatabaseSupport with the my one

unaimillan commented 4 years ago

Also it is possible to upgrade the plugin directly from the IDE One could open the File->Settings->Plugins menu and select GraphDatabaseSupport.zip achrive via Install plugin from Disk... option

Screenshot_20200326_152640

rulatir commented 4 years ago

Seems fixed as of now.