Vertrauen allen Zertifikaten? X509Certificate
Ich habe folgenden code, der eine Verbindung über HTTPS, aber ich erhalte folgenden Fehler bei der Verbindung versuchen.
WARN/System.err(9456): javax.net.ssl.SSLHandshakeException:
org.bouncycastle.jce.Ausnahme.ExtCertPathValidatorException: could not validate certificate signature.
Wie bekomme ich das gelöst?
Vertrauen allen Zertifikaten? wie mache ich das?
Es wäre kein Problem, da ich nur die Verbindung zu dem server.
GJ ich bereits umgesetzt EasyX509TrustManager als Klasse in meiner app.
Vielen Dank im Voraus.
try {
HttpClient client = new DefaultHttpClient();
//Setting up parameters
SchemeRegistry schemeRegistry = new SchemeRegistry();
//http scheme
schemeRegistry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));
//https scheme
schemeRegistry.register(new Scheme("https", new EasySSLSocketFactory(), 443));
HttpParams params = new BasicHttpParams();
params.setParameter(ConnManagerPNames.MAX_TOTAL_CONNECTIONS, 30);
params.setParameter(ConnManagerPNames.MAX_CONNECTIONS_PER_ROUTE, new ConnPerRouteBean(30));
params.setParameter(HttpProtocolParams.USE_EXPECT_CONTINUE, false);
HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
ClientConnectionManager cm = new ThreadSafeClientConnManager(params, schemeRegistry);
DefaultHttpClient httpClient = new DefaultHttpClient(cm, client.getParams());
//Example send HttpsPost request
final String url = "https://www.xxxx.com/web/restricted/form/formelement";
//Do the HTTPS Post
HttpPost httpPost = new HttpPost(url);
ArrayList<NameValuePair> postParameters;
postParameters = new ArrayList<NameValuePair>(2);
postParameters.add(new BasicNameValuePair("usr_name", username));
postParameters.add(new BasicNameValuePair("usr_password", password));
System.out.println(postParameters);
HttpResponse response = httpClient.execute(httpPost);
Log.w("Response ","Status line : "+ response.toString());
Hallo Peter,
Thx für deine Antwort, ich folgte Ihr beraten und konnte nicht überprüfen, Meldung ist verschwunden. Allerdings bin ich nun immer folgende Meldung:
09-26 23:47:20.381: WARNEN/ResponseProcessCookies(10704): Cookie abgelehnt: "BasicClientCookie[version=0,name=ObFormLoginCookie,domain=www.kpn.com,path=/web/restricted/form?formelement=512663,expiry=null]". Illegal path-Attribut "/web/eingeschränkt/form?formelement=512663". Weg von Ursprung: "/web/eingeschränkt/form/formelement=512663"
09-26 23:47:20.461: WARNUNG/Reaktion(10704): Status-Zeile : org.apache.http.message.BasicHttpResponse@407afb98
So etwas scheint falsch zu sein, in den Kopfzeilen?
InformationsquelleAutor Lars | 2011-09-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vertrauen Sie nicht alle Zertifikate, das ist eine sehr, sehr schlechte Idee. Erstellen Sie eine keystore mit dem server-Zertifikat, legen Sie in der app-raw-Vermögenswerte, und laden Sie Sie in HttpClient ist SSLSocketFactory. Registrieren Sie dann diese Fabrik für https in der
SchemeRegistry
.InformationsquelleAutor Nikolay Elenkov
Erforderlich, dass Sie Ihre eigenen
TrustManager
denen vertraut allen Zertifikaten.Siehe diese Antwort: HTTPS und self-signed Zertifikat Problem
Das cookie gesendet wird, ist nicht match-Pfad definiert, der in dem cookie. Thre ist ein "?" anstelle von "/"
InformationsquelleAutor Peter Knego