sql >> Base de Datos >  >> NoSQL >> MongoDB

No se puede conectar desde JAVA al conjunto de réplicas SSL de Mongo

Tuve el mismo problema, y ​​para mí resultó ser un problema con la forma en que creé el almacén de claves. Observé que está utilizando el mismo archivo, truststore.ts, tanto para el almacén de confianza como para el almacén de claves. Esto puede funcionar, pero sugeriría usar archivos separados para evitar confusiones.

Ya había creado archivos .pem para la CA raíz y para el usuario de mongo, y pude usarlos con éxito para conectarme con el shell de mongo. A partir de ellos creé truststore.jks y keystore.jks.

Primero, para crear truststore.jks ejecuté:

keytool -import -alias root -storepass mypass -keystore truststore.jks -file rootca.pem -noprompt

Para keystore.jks necesita las claves pública y privada, así que primero convierta el archivo PEM al formato PKCS12 y luego impórtelo a un 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