我一直在尝试配置play framework 2.5.8,以便在自定义购买证书的自定义位置上使用密钥库。配置如下(在播放部分下):
"server":{
"https":{
"keyStore": {
"path": "/Users/...some_path.../keystore.jks",
"type": "JKS",
"password": "some_pass"
}
}
一切都是本地的,路径可达,密钥库到位。 但是,我经常收到调试消息:
[warn] p.c.s.s.DefaultSSLEngineProvider - Using generated key with self signed certificate for HTTPS. This should not be used in production.
正确准备密钥库,因为如果我将密钥库和密码参数作为JVM参数提供,一切正常。
还有什么需要配置吗?我甚至对C / P-ed稍作修改
def createSSLContext(applicationProvider: ApplicationProvider): SSLContext
从DefaultSSLEngineProvider
进行测试的方法到我的一个控制器中,看看执行是否会到达第44行(logger.debug("Using HTTPS keystore at " + file.getAbsolutePath)
),这在配置错误,奇怪的密钥库文件等情况下不应该发生。令我惊讶的是,一切正常。但是,为什么Play不考虑application.conf中的配置是超出我的。不幸的是,在这种特殊情况下,通过JVM参数提供密钥库参数不是我的选择。