HttpWebRequest - SSL funktioniert nicht

10/31/2018 21:02 _Galand_#1
Hey,

hab da ein Problem mit meinem Projekt.
Das Programm soll generell einen Account einloggen und dann weitere Aktionen ausführen. Das einloggen klappt so weit auch mit den ganzen Cookies und so, jedoch sagt der mir beim weiteren Verlauf dann:

"Die zugrunde liegende Verbindung wurde geschlossen: Für den geschützten SSL/TLS-Kanal konnte keine Vertrauensstellung hergestellt werden.."

das habe ich versucht mittels diesen Zeilen hier zu lösen(Eigentlich wird das Ergebnis nicht verändert, wenn man nur die mittlere Zeile davon verwendet.):
Code:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;
ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(AcceptAllCertifications);
request.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(AcceptAllCertifications);
AcceptAllCertifications wird auf diese statische Methode weitergeleitet:
Code:
public static bool AcceptAllCertifications(object sender, System.Security.Cryptography.X509Certificates.X509Certificate certification, System.Security.Cryptography.X509Certificates.X509Chain chain, System.Net.Security.SslPolicyErrors sslPolicyErrors)
            {
                return true;
            }
Der Fehlercode ist dann weg aber ich werde wieder auf die Hauptseite umgeleitet.
Wenn ich dann response.IsMutuallyAuthenticated ausgebe, wird mir das als FALSE angezeigt.

Das bedeutet doch dann, dass der Server sich nicht mit meinem Client authentifizieren konnte, liege ich da richtig?

Wenn das der Fall ist, wie kann ich dann eine ordentliche SSL - Authentifizierung vornehmen?
11/08/2018 11:27 Ih¢sãs123#2
Code:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
falls das nicht geht versuch mal verschiedene SecurityProtocolType Arten aus.
12/17/2018 20:21 sLiceee#3
Code:
ServicePointManager
    .ServerCertificateValidationCallback += 
    (sender, cert, chain, sslPolicyErrors) => true;
Kannst das mal versuchen falls du kein Zertifikat hast, diese Anweisung definiert das alle Zertifikate die kommen ignoriert werden und somit das Problem nicht mehr kommen sollte. Hatte das mal bei einem TelegramBot.

Grüße sliceee
02/05/2020 22:19 Mr&MrsNice#4
check my post on this thread: [Only registered and activated users can see links. Click Here To Register...]
02/15/2020 09:00 KingwondA#5
Quote:
Originally Posted by _Galand_ View Post
Hey,

hab da ein Problem mit meinem Projekt.
Das Programm soll generell einen Account einloggen und dann weitere Aktionen ausführen. Das einloggen klappt so weit auch mit den ganzen Cookies und so, jedoch sagt der mir beim weiteren Verlauf dann:

"Die zugrunde liegende Verbindung wurde geschlossen: Für den geschützten SSL/TLS-Kanal konnte keine Vertrauensstellung hergestellt werden.."

das habe ich versucht mittels diesen Zeilen hier zu lösen(Eigentlich wird das Ergebnis nicht verändert, wenn man nur die mittlere Zeile davon verwendet.):
Code:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;
ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(AcceptAllCertifications);
request.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(AcceptAllCertifications);
AcceptAllCertifications wird auf diese statische Methode weitergeleitet:
Code:
public static bool AcceptAllCertifications(object sender, System.Security.Cryptography.X509Certificates.X509Certificate certification, System.Security.Cryptography.X509Certificates.X509Chain chain, System.Net.Security.SslPolicyErrors sslPolicyErrors)
            {
                return true;
            }
Der Fehlercode ist dann weg aber ich werde wieder auf die Hauptseite umgeleitet.
Wenn ich dann response.IsMutuallyAuthenticated ausgebe, wird mir das als FALSE angezeigt.

Das bedeutet doch dann, dass der Server sich nicht mit meinem Client authentifizieren konnte, liege ich da richtig?

Wenn das der Fall ist, wie kann ich dann eine ordentliche SSL - Authentifizierung vornehmen?
HttpWebRequest empfehele ich keinen!

Hier ist ne auflistung welcher WebClient oder wie das heißt am besten wäre:
[Only registered and activated users can see links. Click Here To Register...]


HttpWebRequest for control
WebClient for simplicity and brevity
RestSharp for both on non-.NET 4.5 environments
HttpClient for both + async features on .NET 4.5 environments
02/15/2020 11:23 Melli-#6
Quote:
Originally Posted by KingwondA View Post
HttpWebRequest empfehele ich keinen!

Hier ist ne auflistung welcher WebClient oder wie das heißt am besten wäre:
[Only registered and activated users can see links. Click Here To Register...]


HttpWebRequest for control
WebClient for simplicity and brevity
RestSharp for both on non-.NET 4.5 environments
HttpClient for both + async features on .NET 4.5 environments
Kannst du bitte aufhören so viel scheiße ohne Belege zu labern? Danke.

[Only registered and activated users can see links. Click Here To Register...]

HttpWebrequest ermöglicht VIEL mehr als ein Webclient (Cookies, Headers, Timeouts...) die man in manchen Situationen einfach BRAUCH.
02/29/2020 14:54 KingwondA#7
Quote:
Originally Posted by Melli- View Post
Kannst du bitte aufhören so viel scheiße ohne Belege zu labern? Danke.

[Only registered and activated users can see links. Click Here To Register...]

HttpWebrequest ermöglicht VIEL mehr als ein Webclient (Cookies, Headers, Timeouts...) die man in manchen Situationen einfach BRAUCH.
wtf was willst du von mir, hab nur das wiedergeben was ich von der webseiite hab.