gpt4 book ai didi

python-3.x - 使用 aiogremlin 连接到 Neptune

转载 作者:行者123 更新时间:2023-12-04 22:39:05 25 4
gpt4 key购买 nike

我正在尝试使用 aiogremlin 连接到 AWS Neptune但不断收到 SSL 证书错误。我尝试使用从 Amazon Trust Repository 下载的 3 个不同的证书但它们都不起作用。与 AmazonRootCA1.pemSFSRootCAG2.pem我不断收到File Not Found errorSFSRootCAG2.cer我得到 ssl_context.load_cert_chain(ssl.SSLError: [SSL] PEM lib (_ssl.c:4046) .
这是我用来与 Neptune 交互的片段。

import asyncio
from aiogremlin import DriverRemoteConnection, Graph
from .constants import NEPTUNE_ENDPOINT, CERT_DIR


async def go():
remote_connection = await DriverRemoteConnection.open(f'https://{NEPTUNE_ENDPOINT}:8182/gremlin', 'g',
ssl_certfile=CERT_DIR+'SFSRootCAG2.cer')
g = Graph().traversal().withRemote(remote_connection)
vertices = await g.V().toList()
await remote_connection.close()
return vertices

print(asyncio.get_event_loop().run_until_complete(go()))
无法确定我是否使用了错误的证书文件或做其他错误的事情。

最佳答案

当我将 keystore 转换为没有证书部分的 pem 文件时,我得到了完全相同的错误(直到 ssl.c 中的第 4046 行)。
我在没有'-nocerts'标志的情况下再次转换它,并且我在文件中得到了两个部分,如下所示:

Bag Attributes
friendlyName: mykey
localKeyID: ...
Key Attributes: <No Attributes>
-----BEGIN PRIVATE KEY-----
... [magic key details] ...
-----END PRIVATE KEY-----
Bag Attributes
friendlyName: mykey
localKeyID: ...
subject=C = NO, O = ..., CN = Server Administrator

issuer=C = NO, O = ..., CN = Server Administrator

-----BEGIN CERTIFICATE-----
... [magic key details] ...
-----END CERTIFICATE-----
我还创建了一个这样的新证书,它可以毫无问题地工作:
# openssl req -new -x509 -days 365 -nodes -out cert.pem -keyout cert.pem

关于python-3.x - 使用 aiogremlin 连接到 Neptune,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68374267/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com