utiliza recomienda propietario migrar introduzca formato existe ejemplo contraseña commands claves archivo almacén almacen java keystore jks

java - recomienda - keytool import certificate



¿Cómo importo un archivo de almacén de claves Java(.jks) existente en una instalación de Java? (3)

Por lo tanto, estoy teniendo problemas con LDAP. Tengo un caso de prueba de integración que con suerte funcionará, pero actualmente se está ejecutando en problemas de seguridad LDAPS con el protocolo de enlace SSL.

Puedo conectarme al LDAPS con Apache Directory Studio, y ha descargado el almacén de claves en un archivo "permanent.jks".

Está bien, pero quiero que mi prueba de integración, que reside en Eclipse mediante un JRE, pueda conectarse al servidor LDAP mediante este almacén de claves.

¿Cómo puedo tomar este almacén de claves e importarlo en el JRE para su propio uso?


Ok, así que aquí estaba mi proceso:

keytool -list -v -keystore permanent.jks - me dio el alias.

keytool -export -alias alias_name -file certificate_name -keystore permanent.jks - tengo el certificado para importar.

Entonces podría importarlo con el keytool:

keytool -import -alias alias_name -file certificate_name -keystore keystore location

Como @Christian Bongiorno dice que el alias no puede existir en su almacén de claves.


Puede importar en masa todos los alias de un almacén de claves a otro:

keytool -importkeystore -srckeystore source.jks -destkeystore dest.jks


para cargar un KeyStore, deberá indicarle el tipo de keystore que es (probablemente jceks), proporcionar una cadena de entrada y una contraseña. Entonces, puedes cargarlo así:

KeyStore ks = KeyStore.getInstance(TYPE_OF_KEYSTORE); ks.load(new FileInputStream(PATH_TO_KEYSTORE), PASSWORD);

esto puede lanzar una KeyStoreException, por lo que puede rodear un bloque try si lo desea, o volver a lanzar. Tenga en cuenta que un almacén de claves puede contener varias claves, por lo que deberá buscar su clave con un alias, aquí hay un ejemplo con una clave simétrica:

SecretKeyEntry entry = (KeyStore.SecretKeyEntry)ks.getEntry(SOME_ALIAS,new KeyStore.PasswordProtection(SOME_PASSWORD)); SecretKey someKey = entry.getSecretKey();