我正在尝试使用 ssl 将我的 spring boot 应用程序连接到 mongodb。我按照此处描述的步骤操作,但它们对我不起作用。
https://www.compose.com/articles/how-to-connecting-to-compose-mongodb-with-java-and-ssl/
有什么想法吗?
谢谢阿莱姆
最佳答案
我建议您查看此处提供的使用 MongoDB 访问数据 https://spring.io/guides/gs/accessing-data-mongodb/基本用法示例。 spring-boot-starter-data-mongodb 会让你走得更远,你需要做的是像这样配置一个 MongoClientOptions bean
@Bean
public MongoClientOptions mongoClientOptions(){
System.setProperty ("javax.net.ssl.keyStore","<<PATH TO KEYSTOR >>");
System.setProperty ("javax.net.ssl.keyStorePassword","PASSWORD");
MongoClientOptions.Builder builder = MongoClientOptions.builder();
MongoClientOptions options=builder.sslEnabled(true).build();
return options;
}
并将 mongo 客户端选项作为参数传递给 MongoClient 实例,如下所示
public MongoClient(ServerAddress addr, MongoClientOptions options) {
super(addr, options);
}
进一步添加,当 mongo 进程启动时
mongo --ssl --sslAllowInvalidCertificates --host --port
连接到 mongo 进程的客户端不必设置任何选项来支持它。
我用了这个帖子Spring data mongodb, how to set SSL?和这个 spring.io 指南作为引用。
希望对你有帮助
关于mongodb - 使用 ssl 从 spring boot 应用程序连接到 MongoDB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42355417/