herramienta error claves java security ssl jsse

error de herramienta de claves java io filenotfoundexception



¿Hay alguna forma de cargar cacerts diferentes a los especificados en la carpeta java_home/jre/lib/security? (4)

Creo que quieres especificar el almacén de confianza:

java -Djavax.net.ssl.trustStore=/home/gene/mycacerts ...

O si está utilizando certs a través de JSSE (probablemente lo esté), puede copiar su almacén de confianza a jssecacerts en el jssecacerts $JAVA_HOME/jre/lib/security/ (aunque todavía tendrá que hacerlo cada vez que se instale un JDK / reinstalado). El JSSE de Sun busca $JAVA_HOME/jre/lib/security/jssecacerts antes de $JAVA_HOME/jre/lib/security/cacerts .

Consulte http://java.sun.com/javase/6/docs/technotes/guides/security/jsse/JSSERefGuide.html#X509TrustManager

Tengo una instalación única de Java en un sistema que ejecuta 2 o 3 aplicaciones.

Todas las aplicaciones utilizan el mismo tiempo de ejecución.

¿Hay una manera de especificar un almacén de claves diferente para los certificados que el de java_home / jre / lib / security? Es decir, ¿existe una opción para especificar un almacén de claves "extra" que se carga y agrega a los certificados cargados desde java_home / jre / lib / security / cacerts?

Lo que quiero evitar es tener que volver a importar nuestra ca local cada vez que actualizo el jdk en el cuadro.


De acuerdo a esto:

Guía de referencia de SSE de Java - Personalización

Podrías usar la propiedad del sistema:

javax.net.ssl.keyStore

Me gusta:

java -Djavax.net.ssl.keyStore=youkeystore YourProgram

¡¡Pero!! Nunca lo he intentado. Déjame saber si funciona ¿lo harías?


Estas dos opciones de jvm se utilizan para ubicar el almacén de confianza personalizado y su contraseña.

java -Djavax.net.ssl.trustStore=custompath/cacerts -Djavax.net.ssl.trustStorePassword=changeit

Para asegurarse de que la aplicación está cargando el almacén de confianza, agregue también el siguiente argumento:

-Djavax.net.debug=ssl:handshake


Si su JVM contiene más de una aplicación, por defecto, todas las aplicaciones usarán la tienda de cacerts predeterminada que se encuentra en $ JAVA_HOME / jre / lib / security / location. Pero si desea que las aplicaciones utilicen un almacén de certificados diferente, debe definir el almacén de certificados personalizado y señalarlo. De esta forma puedes crear tu propia tienda de certificados. System.setProperty ("javax.net.ssl.trustStore", "C: / certStore / cusomtcacerts"); - Use esta línea antes de crear la sesión http / https. Puede importar los certificados a los cusomtcacerts usando keytool también.