Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Play framework:使用OpenSSL X.509证书保护WebSocket端点_Ssl_Https_Playframework_Websocket_Openssl - Fatal编程技术网

Play framework:使用OpenSSL X.509证书保护WebSocket端点

Play framework:使用OpenSSL X.509证书保护WebSocket端点,ssl,https,playframework,websocket,openssl,Ssl,Https,Playframework,Websocket,Openssl,我想使用SSL in-Play框架(用于安全Websocket连接)。我通过以下方式使用OpenSSL生成了一个证书: // generate private key sudo openssl genres -out ws.key 1024 // generate CSR sudo openssl req -new -key ws.key -out ws.csr // create self-signed X.509 certificate sudo openssl x509 -req -d

我想使用SSL in-Play框架(用于安全Websocket连接)。我通过以下方式使用OpenSSL生成了一个证书:

// generate private key
sudo openssl genres -out ws.key 1024

// generate CSR
sudo openssl req -new -key ws.key -out ws.csr

// create self-signed X.509 certificate
sudo openssl x509 -req -days 365 -in ws.csr -signkey ws.key -out ws.crt

我使用生成的.CRT和.key文件将NGIX配置为安全代理,所有的工作:客户端(用C++和LabWebSoCub编写)能够连接到端口9443,并对通信进行加密。 nginx的部分配置如下所示:

ssl_certificate         /Users/mattia/nginx/ssl/ws.crt;
ssl_certificate_key     /Users/mattia/nginx/ssl/ws.key;

现在我不想使用nginx作为安全端点,而是在不使用任何代理的情况下使用框架。播放文档解释了如何使用JKS证书。如何使用OpenSSL生成的X.509证书?我应该在application.conf中写什么?谢谢。

我在application.conf中尝试了以下参数:
https.keyStore=“/Users/mattia/ssl/openssl/cert\u with_key.pem”https.keyStore.type=“pem”
cert\u with_key.pem是私钥和pem格式证书的串联。但是,当我启动服务器时:
activator run-Dhttps.port=9443
我得到以下输出:
[warn]play-使用生成的密钥和HTTPS的自签名证书。这不应用于生产。
这意味着Play忽略了我在/Users/mattia/ssl/openssl中的PEM证书。为什么?我正在使用2.2.Xi在应用程序中使用以下参数。但是,当我启动服务器时:
activator run-Dhttps.port=9443
我得到以下输出:
[warn]play-使用生成的密钥和HTTPS的自签名证书。这不应用于生产。
这意味着Play忽略了我在/Users/mattia/ssl/openssl中的PEM证书。为什么?我正在使用Play 2.3.x