gpt4 book ai didi

python - 使用证书存储将证书加载到 ssl,而不是文件路径;用 python

转载 作者:太空宇宙 更新时间:2023-11-03 13:59:32 31 4
gpt4 key购买 nike

我在 python 中使用 ssl 模块,具体来说:

SSLContext.load_cert_chain

大多数使用此示例的示例都使用文件路径作为前两个参数,如下所示:

context.load_cert_chain("/path/to/cert.pem", "/path/to/key.pem", password=password)

如果这些证书存储在 Windows 证书存储中怎么办? (CA、根等)。我是否仍然可以检索然后使用文件路径传递给上述方法?

最佳答案

简短的回答:它并不容易工作。

ssl 模块通过 ssl.enum_certificates 提供对 Windows 证书存储的一些访问,但这非常有限,并且不提供对私钥的访问(甚至可能被标记为不可导出)。

Windows 证书库自动用于客户端连接,以验证服务器证书。但是您不能轻易地使用它来创建服务器端上下文。

如果要在 Windows 证书库中存储 key 和证书,则需要使用 Windows SSPI (SChannel) API 来实现 TLS 层。 python ssl 模块在这种情况下没有帮助。 SSPI 提供了一个类似于 ssl.SSLObject 的 API,它包装了 OpenSSL MemoryBIO 协议(protocol),因此理论上可以在 Win32 API 之上实现 ssl.SSLObject 而不是Openssl API。

https://learn.microsoft.com/en-us/windows/desktop/secauthn/creating-a-secure-connection-using-schannel

关于python - 使用证书存储将证书加载到 ssl,而不是文件路径;用 python ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55229786/

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