MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Não é possível conectar do JAVA ao conjunto de réplicas SSL do Mongo


Eu tive o mesmo problema e, para mim, acabou sendo um problema com a maneira como criei o keystore. Percebo que você está usando o mesmo arquivo, truststore.ts, para o truststore e o keystore. Isso pode funcionar, mas sugiro usar arquivos separados para evitar confusão.

Eu já havia criado arquivos .pem para a CA raiz e para o usuário do mongo e consegui usá-los com sucesso para conectar-me ao shell do mongo. Desses eu criei truststore.jks e keystore.jks.

Primeiro, para criar truststore.jks, executei:
keytool -import -alias root -storepass mypass -keystore truststore.jks -file rootca.pem -noprompt

Para keystore.jks, você precisa das chaves pública e privada, então primeiro converta o arquivo PEM para o formato PKCS12 e depois importe para um JKS:
openssl pkcs12 -export -out myuser.pkcs12 -in myuser.pem -password pass:mypass
keytool -importkeystore -srckeystore myuser.pkcs12 -srcstoretype PKCS12 -destkeystore keystore.jks -deststoretype JKS -deststorepass mypass -srcstorepass mypass