Используя Start.Spring.IO, я создал проект Spring для использования с MongoDB. Автоконфигурирование, используемое Spring, прекрасно работает для локальной MongoDB. Однако мне нужно получить доступ к MongoDB, который находится на другом сервере. Этот сервер требует использования сертификатов SSL. Глядя на все «свойства» Spring для Mongo, я не вижу ничего, связанного с SSL.
# MONGODB (MongoProperties)
spring.data.mongodb.authentication-database= # Authentication database name.
spring.data.mongodb.database= # Database name.
spring.data.mongodb.field-naming-strategy= # Fully qualified name of the FieldNamingStrategy to use.
spring.data.mongodb.grid-fs-database= # GridFS database name.
spring.data.mongodb.host= # Mongo server host. Cannot be set with URI.
spring.data.mongodb.password= # Login password of the mongo server. Cannot be set with URI.
spring.data.mongodb.port= # Mongo server port. Cannot be set with URI.
spring.data.mongodb.repositories.type=auto # Type of Mongo repositories to enable.
spring.data.mongodb.uri=mongodb://localhost/test # Mongo database URI. Cannot be set with host, port and credentials.
spring.data.mongodb.username= # Login user of the mongo server. Cannot be set with URI.
Есть ли свойство SSL для Spring / MongoDB, которое мне не хватает? Spring не поддерживает SSL с MongoDB?
Если свойства отсутствуют, как использовать среду Spring с MongoDB для использования SSL? (Я видел примеры Java о том, как это может работать, но они не относятся к Spring Framework).
Одна из возможных вещей, которую я видел, это использование свойства URI.
spring.data.mongodb.uri=mongodb://host/test?ssl=true
однако я не мог заставить это работать. Если бы я проверил логи Монго, это показало бы что-то вроде этого.
2018-05-11T17:50:41.196-0500 W NETWORK [conn309195] no SSL certificate provided by peer
Угадай, что я что-то упустил ... просто не знаю что.