2012-04-12 8 views
1

In unserer Anwendung haben wir eine Silverlight App, sl.xap. Es ist auf https://xap.intra.net/getxapfile.html gehostet.Wie rufe ich von Silverlight 4 eine WCF auf einer HTTPS-Verbindung, die clientseitige Zertifikate erfordert?

Sobald die Anwendung sl.xap im Browser ausgeführt wird, ruft sie einen WCF-Dienst unter https://wcf.intra.net/wcf.svc auf.

Sowohl xap.intra.net als auch wcf.intra.net erwarten clientseitige Zertifikate.

Wenn ich den WCF-Service auf https://xap.intra.net/wcf.svc Host alles funktioniert gut. Der Browser öffnet sich, fragt nach dem Zertifikat und wir gehen los. Leider ist das keine Option für die Produktion, weil die Unternehmenspolitik bla bla bla.

Also, ich bin ehrlich gesagt nicht sicher, wo ich von hier aus gehen soll. Ich bin noch neu bei der Verwendung von SSL-Client-Side-Zertifikaten. Ich denke ich muss das Client-Zertifikat irgendwie bekommen und dann an die WCF weitergeben. Keine Ahnung wie.

Jeder Rat wäre großartig! Vielen Dank.

+0

Geben Sie dies lesen - http://forums.silverlight.net/t/13275.aspx - es sollte Sie in die richtige Richtung setzen – ChrisF

Antwort

0

Die Antwort, die ich schließlich von den IT Architechture Jungs bekam, war: Sie können nicht. Silverlight kann nicht auf die clientseitigen Zertifikate zugreifen und diese über https an einen Server senden.

Das bedeutet, ich muss das XAP von der gleichen Verbindung herunterladen, die den Webdienst bereitstellt. Dadurch kann Silverlight den vorhandenen SSL-Kanal verwenden, der vom Browser erstellt wurde.

Darüber hinaus, wenn ich ein HTTPS-Client-Zertifikat eines Drittanbieters in Anspruch nehmen musste, musste ich einen Proxy-Dienst auf meinem Server erstellen, um zu helfen.