使用CherryPy的双向SSL

tpj*_*tpj 8 ssl certificate cherrypy client-certificates ssl-certificate

从CherryPy 3.0开始,只需指向服务器证书和私钥即可打开单向SSL,如下所示:

import cherrypy

class HelloWorld(object):
    def index(self):
        return "Hello SSL World!"
    index.exposed = True

cherrypy.server.ssl_certificate = "keys/server.crt"
cherrypy.server.ssl_private_key = "keys/server.crtkey" 
cherrypy.quickstart(HelloWorld())
Run Code Online (Sandbox Code Playgroud)

这使客户端能够验证服务器的真实性.有谁知道CherryPy是否支持双向ssl,例如服务器还可以通过验证客户端证书来检查客户端的真实性?

如果是的话,任何人都可以举例说明这是怎么做的?或者发布一个例子的参考?

fum*_*chu 4

它不是开箱即用的。您必须修补 wsgiserver 才能提供该功能。http://www.cherrypy.org/ticket/1001上有一个票证(和补丁)正在进行中。

  • 现在在 https://bitbucket.org/cherrypy/cherrypy/issue/1001/adding-support-for-client-certificate (2认同)