Play 2.2.1 中的 SSL\TLS 支持
Posted
技术标签:
【中文标题】Play 2.2.1 中的 SSL\\TLS 支持【英文标题】:SSL\TLS support in Play 2.2.1Play 2.2.1 中的 SSL\TLS 支持 【发布时间】:2014-01-19 17:27:51 【问题描述】:我正在玩! (2.2.1, Java) 应用程序和我想允许:
客户端证书 - 只有使用客户端证书的客户端身份验证才能使用应用程序 API。 服务器端证书 - 客户端必须能够通过其受信任的 CA 列表对服务器提供的证书进行身份验证。什么是玩!这样做的最佳实践?
另外,你知道什么密码算法玩吗!正在使用? (TLS 1.2、1.1、1.0、SSL 3.0、SSL 2.0 等)如果不使用 TLS 1.2,我可以强制执行 Play!使用它?
当您使用 SSL/TLS 进行 Play 时!您将什么用于前端 HTTPS 服务器? Apache、nginx、Netty.IO 或 Play!建在服务器上? (因为根据官方文档,非 Play! 服务器可以更好地处理 HTTPS 请求)。
【问题讨论】:
【参考方案1】:Play 将 JSSE 用于 TLS,因此您使用 JSSE 附带的 SSLEngine 配置 Play。如果您使用 Play 作为 HTTPS 客户端,那么 WS 将为您进行主机名验证。如果您将 Play 用作 HTTPS 服务器并需要进行客户端身份验证,则应配置自定义 SSLEngineProvider。
有一个激活器模板展示了如何使用 Play 作为 HTTPS 客户端和服务器,使用客户端身份验证:
https://github.com/typesafehub/activator-play-tls-example
【讨论】:
以上是关于Play 2.2.1 中的 SSL\TLS 支持的主要内容,如果未能解决你的问题,请参考以下文章
System.Net.WebRequest 支持哪些版本的 SSL/TLS?