Toon posts:

[vb2005.net] POST met ssl *

Pagina: 1
Acties:

Verwijderd

Topicstarter
He,

Ik probeer via een httpwebrequest een post te maken naar een site. Hiervoor heb ik de volgende code:
Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
        Dim cert1 As X509Certificate = X509Certificate2.CreateFromCertFile("pemfile.pem")
        Dim cert2 As X509Certificate = X509Certificate2.CreateFromCertFile("ca.crt")

        Dim request As HttpWebRequest = WebRequest.Create("https://www.site.com")

        request.ClientCertificates.Add(cert1)
        request.ClientCertificates.Add(cert2)
        request.Method = "POST"
        Dim postData = "Test&test"

        Dim byteArray As Byte() = Encoding.UTF8.GetBytes(postData)
        ' Set the ContentType property of the WebRequest.
        request.ContentType = "application/x-www-form-urlencoded"
        ' Set the ContentLength property of the WebRequest.
        request.ContentLength = byteArray.Length
        ' Get the request stream.
        Dim dataStream As Stream = request.GetRequestStream()
        ' Write the data to the request stream.
        dataStream.Write(byteArray, 0, byteArray.Length)
        ' Close the Stream object.
        dataStream.Close()
        ' Get the response.
        Dim response As WebResponse = request.GetResponse()
        ' Display the status.
        Console.WriteLine(CType(response, HttpWebResponse).StatusDescription)
        ' Get the stream containing content returned by the server.
        dataStream = response.GetResponseStream()
        ' Open the stream using a StreamReader for easy access.
        Dim reader As New StreamReader(dataStream)
        ' Read the content.
        Dim responseFromServer As String = reader.ReadToEnd()

        Console.WriteLine(responseFromServer)

        reader.Close()
        dataStream.Close()
        response.Close()


ik krijg iedere keer de fout:
Unhandled Exception: System.Net.WebException: The request was aborted: Could not create SSL/TLS secure channel.

Hij kan dus geen verbinding maken, zelf denk ik dat door die certificaten komt die niet goed aan het verzoek worden toegevoegd waardoor de verbinding word geweigerd. Maar volgens mij staan ze toch echt goed? hopelijk ziet iemand waar het fout gaat...

[ Voor 0% gewijzigd door RobIII op 16-09-2006 01:48 ]


Verwijderd

Topicstarter
Met een trace krijg ik het volgende terug:

System.Net Information: 0 : [4760] SecureChannel#34948909 - Cannot find the certificate in either the LocalMachine store or the CurrentUser store.

Vind verder niet echt veel over certificationstores en het gebruik er van.
Dit zo een beetje het enige:
http://msdn2.microsoft.com/en-us/library/d228271e.aspx

iemand ideeen?

  • H!GHGuY
  • Registratie: December 2002
  • Niet online

H!GHGuY

Try and take over the world...

je moet het certificaat van de server toevoegen aan jou certificate store.

of de client uberhaupt wel een certificate nodig heeft betwijfel ik maar ligt aan de instelling van de server.

ASSUME makes an ASS out of U and ME


  • Equator
  • Registratie: April 2001
  • Laatst online: 09-02 07:08

Equator

Crew Council

#whisky #barista

HIGHGuY schreef op maandag 18 september 2006 @ 19:49:
je moet het certificaat van de server toevoegen aan jou certificate store.
Dat denk ik ook. Het SSL certificaat van de server waaraan je connect is getekend door een certificeringsinstantie (CA) die waarschijnlijk door jouw PC niet wordt vertrouwd.
Je zal dus het certificaat waarmee het servercertificaat is ondertekend - kan ook gewoon het servercertificaat zijn (self signed) - moeten importeren in de locale user/machine certificatestore.