当前位置: 首页 > 知识库问答 >
问题:

SecurityError:无法建立到“EOF违反协议(_ssl.c:841)”的安全连接

奚和光
2023-03-14

我正在尝试连接Neo4j,但我一直收到这个错误。我试过了

from neo4j.v1 import GraphDatabase
driver = GraphDatabase.driver(uri="bolt://localhost:7687", auth=("neo4j", "12345"))

但当我尝试连接时,会出现这个错误

SecurityError:无法建立到“EOF违反协议(_ssl.c:841)”的安全连接

我可以在打字时连接到浏览器http://localhost:7474/browser/

以下是完整的错误日志:

--------------------------------------------------------------------------- SSLEOFError Traceback(最近的最后一次调用)~\AppData\漫游\Python\Python36\site-包\neobolt\direct.py在_secure(s, host,ssl_context,**config)853中尝试:-

c:\program files\python36\lib\ssl。py in wrap_socket(self、sock、server_side、do_handshake_on_connect、suppress_ragged_eofs、server_hostname、session)406 server_hostname=server_hostname--

c:\program files\python36\lib\ssl。py in init(self、sock、keyfile、certfile、server_side、cert_reqs、ssl_version、ca_certs、do_handshake_on_connect、family、type、proto、fileno、suppress_ragged_eofs、npn_协议、密码、server_hostname、_context、_session)813 raise ValueError(“do_handshake_on_connect不应为非阻塞套接字指定握手”)--

c:\program files\python36\lib\ssl。py in do_握手(self,block)
1067 self。设置超时(无)-

c:\program files\python36\lib\ssl。py in do_handshake(self)688“启动SSL/TLS握手”"" --

SSLEOFError: EOF发生在违反协议(_ssl. c: 841)

上述异常是以下异常的直接原因:

1中的SecurityError回溯(最近一次通话)----

~\AppData\Roaming\Python\Python36\site packages\neo4j____;。驱动程序中的py(cls,uri,**config)118:class:。驱动程序直接子类实例。119 """ --

~\AppData\漫游\Python\Python36\Site-包\neo4j__init__. py在新的(cls, uri,**config)159为子类在Driver.subclasses(): 160如果parsed_scheme在subclass.uri_schemes:-

~\AppData\Roaming\Python\Python36\site packages\neo4j____;。py in new(cls,uri,**config)233 234 pool=ConnectionPool(connector,instance.address,**config)--

~\AppData\Roaming\Python\Python36\site packages\neobolt\direct。py在获取(自我,访问模式)713 714 def获取(自我,访问模式=无):--

~\AppData\Roaming\Python\Python36\site packages\neobolt\direct。py in acquire_direct(self,address)606如果可以创建新的连接:607尝试:--

~\AppData\Roaming\Python\Python36\site packages\neo4j____;。py in接头(地址**kwargs)230 231 def接头(地址**kwargs):--

~\AppData\Roaming\Python\Python36\site packages\neobolt\direct。连接中的py(地址,**配置)970提升服务不可用(“无法解析%s”%address)971其他:--

~\AppData\Roaming\Python\Python36\site packages\neobolt\direct。py in connect(地址,**配置)961主机=地址[0]962 s=_connect(已解析_地址,**配置)--

~\AppData\Roaming\Python\Python36\site packages\neobolt\direct。py in_secure(s,host,ssl_context,**config)857 error=SecurityError(“未能建立到{!r}的安全连接”。格式(cause.args[1])858错误。原因--

SecurityError:无法建立到“EOF违反协议(_ssl.c:841)”的安全连接

共有3个答案

卫乐童
2023-03-14

然而,山姆的回答并没有解决同样的问题。使用

from neo4j import GraphDatabase
uri = "bolt://localhost:7687"
driver = GraphDatabase.driver( encrypted=False, uri, auth=('neo4j', 'asdf'))

我得到一个错误SyntaxError:positional参数跟在关键字参数后面

直接在命令中键入uri,如下所示:driver=GraphDatabase。驱动程序(加密=假,uri=”bolt://localhost:7687“,auth=('neo4j','asdf'))导致另一个错误(SecurityError:无法建立到'[SSL:KRB5_S_TKT_NYV]的安全连接,在读取(_SSL.c:1076)

然而,当他们在neo4j社区关注一篇帖子时,他们会将论点的立场转换为:

from neo4j import GraphDatabase
uri = "bolt://localhost:7687"
driver = GraphDatabase.driver( uri, auth=('neo4j', 'asdf')encrypted=False)

它就像一个符咒。

曹铭晨
2023-03-14

我在对象图映射器Neomodel(连接到neo4j v4)上也遇到了同样的问题。添加第二行解决了这个问题:

config.DATABASE_URL = 'bolt://neo4j:password123@localhost:7687'
config.ENCRYPTED_CONNECTION = False
公孙涵育
2023-03-14

我为可能有同样问题的人找到了解决方案。您需要添加加密=虚假。

而不是

from neo4j.v1 import GraphDatabase
driver = GraphDatabase.driver(uri="bolt://localhost:7687", auth=("neo4j", "12345"))

应该是:

driver = GraphDatabase.driver(uri="bolt://localhost:7687", auth=("neo4j", "12345"), encrypted=False)

希望这能帮助别人

 类似资料:
  • 我使用ArchLinux,python 3.4,openSSL 1.0.2d。当我请求https://www.supercash.cz/我得到这个错误。无论我使用请求还是在urllib中构建,总是会有相同的错误。此网站的SSL证书接缝在浏览器Chrome。 我试过这个,但它只在python2中有效。7错误-urlopen错误[Errno 8]\u ssl。c:504:EOF违反了协议,需要帮助 这

  • 我使用Django芹菜任务连接到Facebook Graph API,并使用Gevent请求库。我经常遇到的问题是,偶尔我会发现EOF违反了协议异常。我四处搜索,各种来源提供了不同的修复方法,但似乎都不起作用。 我尝试过用monkey修补ssl模块(gevent.monkey.patch_all())和其他一些模块,但没有成功。 我甚至不确定这是否是openssl问题,因为在应用Gevent优化之

  • 我正在使用gevent为游泳池运行许多芹菜任务(20000个)(也包括猴子修补所有)。这些任务中的每一项都会通过第三方服务(如adwords)来获取数据。 由于潜在的SSL错误,我一直有任务失败。下面是一些异常的堆栈跟踪(没有特定的顺序,这些是单独任务的失败)。我偶尔也会遇到WantWriteError和ZeroReturnError,但EOF错误似乎最多。 这些错误发生在使用不同的客户端库时,如

  • 我正在向我使用httplib2拥有的REST服务发出HTTPS GET请求,但我们得到了错误: 所有其他客户端都运行良好(浏览器、Java客户端等...),只有一个小例外,PHP curl需要设置为使用SSL v3。 我已经搜索了周围,它似乎确实是一个关于SSL版本的错误,但我似乎找不到一种方法来改变它在http://www. ttplib2.除了改变源代码中的以下行之外,还有什么方法可以解决这个

  • 问题内容: 我迷上了Firefox。我无法使Websocket正常工作。我使用TornadoWebsocket,并通过以下代码对其进行了初始化: 然后像这样在Javascript端初始化它: 这段代码在Chrome上运行良好,同时我自己创建了证书并在HTTPS下运行页面。但是Firefox一直在说: 我用谷歌搜索,发现了太多想法,但没有一个对我有用:( 任何帮助将不胜感激。 问题答案: 我通过Pr