JSEE
Hola javapa帽eros!!
Estoy intentando establecer una conexi贸n segura(reci茅n me estoy poniendo con el tema) con otro servidor que es el que me tiene que hacer la autentificaci贸n (este servidor ya est谩 preparado para ello), el problema est谩 en que yo he seguido unos pasos de lo que he ido leyendo en internet y no consigo que me funciona.
Yo en mi c贸digo hago lo siguiente
System.getProperties().setProperty("javax.net.ssl.trustStore", "C:\oc4j904\j2ee\home\applications\AppJava-war\WEB-INF\classes\Store.dat");
System.setProperty("javax.net.ssl.trustStorePassword", "yourpassword");
ks = KeyStore.getInstance("JKS");
SSLContext ctx = SSLContext.getInstance("SSL");
X509TrustManager tm = new AlwaysTrustManager();
TrustManager[] tma = {tm};
keystoreHome = new File(System.getProperty("javax.net.ssl.trustStore"));
KeyManagerFactory kmf = KeyManagerFactory.getInstance("SunX509");
kmf.init(ks, keypassphrase);
ctx.init(kmf.getKeyManagers(), tma, null);
HttpsURLConnection.setDefaultSSLSocketFactory(ctx.getSocketFactory());
FileInputStream fileinputstream = new FileInputStream(keystoreHome);
keypassphrase = keyStoreKey.toCharArray();
try {
ks.load(fileinputstream, keypassphrase);
fileinputstream.close();
} catch (IOException ioexception) {
ioexception.printStackTrace();
throw new Exception("Error carregant KeyStore " + ioexception);
}
URL theURL = new URL(null, theURLSpec, new com.sun.net.ssl.internal.www.protocol.https.Handler());
HttpURLConnection conn = (HttpURLConnection) theURL.openConnection();
Es la soluci贸n correcta, me falta algo?? cual es la ubicaic贸n que tengo que definir para los keystore y los truestore??
Gracias por la ayuda
Napsland
Estoy intentando establecer una conexi贸n segura(reci茅n me estoy poniendo con el tema) con otro servidor que es el que me tiene que hacer la autentificaci贸n (este servidor ya est谩 preparado para ello), el problema est谩 en que yo he seguido unos pasos de lo que he ido leyendo en internet y no consigo que me funciona.
Yo en mi c贸digo hago lo siguiente
System.getProperties().setProperty("javax.net.ssl.trustStore", "C:\oc4j904\j2ee\home\applications\AppJava-war\WEB-INF\classes\Store.dat");
System.setProperty("javax.net.ssl.trustStorePassword", "yourpassword");
ks = KeyStore.getInstance("JKS");
SSLContext ctx = SSLContext.getInstance("SSL");
X509TrustManager tm = new AlwaysTrustManager();
TrustManager[] tma = {tm};
keystoreHome = new File(System.getProperty("javax.net.ssl.trustStore"));
KeyManagerFactory kmf = KeyManagerFactory.getInstance("SunX509");
kmf.init(ks, keypassphrase);
ctx.init(kmf.getKeyManagers(), tma, null);
HttpsURLConnection.setDefaultSSLSocketFactory(ctx.getSocketFactory());
FileInputStream fileinputstream = new FileInputStream(keystoreHome);
keypassphrase = keyStoreKey.toCharArray();
try {
ks.load(fileinputstream, keypassphrase);
fileinputstream.close();
} catch (IOException ioexception) {
ioexception.printStackTrace();
throw new Exception("Error carregant KeyStore " + ioexception);
}
URL theURL = new URL(null, theURLSpec, new com.sun.net.ssl.internal.www.protocol.https.Handler());
HttpURLConnection conn = (HttpURLConnection) theURL.openConnection();
Es la soluci贸n correcta, me falta algo?? cual es la ubicaic贸n que tengo que definir para los keystore y los truestore??
Gracias por la ayuda
Napsland
