在使用Twisted端点时可以设置SSL上下文选项吗?
我正在用Python和Twisted写一个服务器,想通过一些端点来配置监听连接。不过,文档里没有明显的方法让我用端点字符串来设置SSL上下文对象的选项。我在源代码里查找了一下,发现用于SSL连接的IStreamServerEndpoint
对象有一个类似_context
的属性可以调整,但这样做感觉有点不太靠谱。我在想有没有什么方法可以设置SSL上下文的选项,而不需要去修改端点的内部结构。(我想设置这个上下文,以便能够验证客户端证书。)
谢谢,
Carl
[1] https://twistedmatrix.com/documents/current/core/howto/endpoints.html
1 个回答
1
twisted.internet.endpoints.SSL4ServerEndpoint
这个东西在初始化的时候需要一个参数,叫做 sslContextFactory
。这个对象的作用是用来创建一个TLS上下文,这个上下文会被用在连接到这个服务器端点的过程中。
如果你自己提供一个上下文工厂,那么你可以在把它交给端点之前,按照自己的需求来配置这些上下文对象。