【发布时间】:2017-10-18 15:29:48
【问题描述】:
我有一个多租户网络服务,我想使用相互 SSL/TLS 身份验证以及用户身份验证。这意味着我需要解析用户和用户允许的证书,这只能发生在 SSL 连接建立之后。然后,我将使用PKIXCertPathBuilderResult 使用请求中传递的客户端证书来验证信任链。
在带有 openssl 连接器的 Tomcat 中,可以使用 optional_no_ca 模式,它请求客户端证书但不验证它。
使用 Jetty 9.x,我尝试配置以下 SslContextFactory 选项无济于事:
ValidateCerts=falseValidatePeerCerts=falseTrustAll=true
如何在 Jetty 9.x 中实现这一点?
2019 年编辑:要求是要求访问系统的所有客户端设备提供 SSL 证书。然后,应用程序将执行证书链和其他证书属性的验证,该应用程序还能够从外部源查找丢失的证书根。 这与规范相反——通常,应用程序服务器将在 SSL 连接设置期间使用预先配置的已知受信任 CA 的静态列表执行证书链验证。如果无法找到信任,则拒绝 SSL 连接。
【问题讨论】:
标签: java ssl jetty jetty-9 ssl-client-authentication