当前位置: 首页 > 知识库问答 >
问题:

只为mongodb创建ssl连接

满俊楠
2023-03-14

我创建了一个ssl mongodb连接,如下所示

    @Bean
    public MongoClientOptions mongoClientOptions() {
        System.setProperty("javax.net.ssl.trustStore","path");
        System.setProperty("javax.net.ssl.trustStorePassword","password");

        System.setProperty("javax.net.ssl.keyStore", "path");
        System.setProperty("javax.net.ssl.keyStorePassword", "password");

        MongoClientOptions.Builder builder = MongoClientOptions.builder();
        return builder.sslEnabled(true).sslInvalidHostNameAllowed(true).build();
    }

但在那之后,其他外部rest调用(用于翻译api,google的示例获取语言)失败,并给出以下错误。

由:sun.security.validator.validatoreXception:PKIX路径生成失败:sun.security.provider.certPath.SunCertPathBuilderException:找不到请求目标的有效证书路径

有人知道怎么解决吗?

共有1个答案

萧亦
2023-03-14

您不应该为更改SSL/TLS设置而更改全局属性。

相反,创建您的自定义SSLContext并用您信任的证书和密钥初始化它。然后从中生成SSLSocketFactory,并通过SocketFactory(SocketFactory,SocketFactory)将其提供给MongoclientOptions.builder

有关以这种方式创建SSLSocketFactory的示例,请参见以下答案:https://stackoverflow.com/a/15183924/150978

 类似资料:
  • 我尝试了以下方法,但未能达到效果。 1)使用MongoDB源代码配置和mongob脚本错误:代码13:未经授权 2) 使用JSR223采样器(lang:python)错误:javax。剧本ScriptException:ImportError:第6行中没有名为pymongo的模块 代码: 导入随机导入日期时间导入字符串导入syssys.path.append("/usr/lib64/python2

  • 我有3个节点的ElasticSearch集群和3个节点的MongoDb ReplicaSet。我正在尝试使用以下配置设置river: 此命令运行良好,但ElasticSearch不会尝试从MongoDb获取数据。我更新了记录,但没有帮助。 是否有特殊的配置来连接到副本集?我在单个ES和单个MongoDb上尝试过这种配置,效果很好。

  • 问题内容: 我正在构建一个充当XMPP客户端的小程序,并且正在使用Smack库。现在,我要连接的服务器需要SSL(在Pidgin中,我必须检查“强制旧(端口5223)SSL”)。我无法让Smack连接到该服务器。可能吗? 问题答案: 看一下这个线程。 http://www.igniterealtime.org/community/thread/37678 本质上,您需要在代码中添加以下两行: 其中

  • 使用SSL连接到Postgres时引发异常。 原因:javax.net.ssl.SSLException:收到致命警报:在sun . security . SSL . alerts . getsslexception(alerts . Java:208)在sun . security . SSL . alerts . getsslexception(alerts . Java:154)在sun .

  • 背景:我需要在Windows Azure上测试WebRole的httpsendpoint。为此,我需要上传一个自签名证书,将证书的指纹添加到Webrole的配置中,最后将endpoint与配置的证书相关联。 我使用创建了一个自签名证书,该证书可通过Visual Studio命令提示符获得。我使用了以下命令: 命令成功,我可以将证书文件上载到Windows Azure托管服务。但部署WebRole失

  • 问题内容: 如何使用Node.js通过SSL连接到MongoDB服务器? 我已经阅读了一些驱动程序(mongojs,mongodb- native )的源代码,并且我已经搜索了一段时间,但是似乎找不到任何合适的教程,指南或文档。 问题答案: 如评论中所建议,具有所需的一切。 我使用以下命令启动并运行: 编辑 你也可以从猫鼬做ssl :