Delphi-Forum.de Delphi-Library.de
C-Sharp-Forum.de C-Sharp-Library.de
Registrieren Login Suche Hilfe Sitemap
[3.5] Problem mit Makecert.exe (privater Schlüssel in cer-Datei?)
spacer
Autor Nachricht
navigato
Hält's aus hier

Beiträge: 4
Dabei seit: 12.11.2009



BeitragVerfasst: Do 12.11.09 21:54 
.NET Version: 3.5
Antworten mit Zitat Beitrag melden
Hallo Experten!

Ich - Anfänger im Bereich WCF - habe einen WCF-Selfhosting-Programm geschrieben, das einen Eigenbau-Service hosten soll, welcher auf einem WSHttpBinding mit dem ClientCredentialType "UserName" basiert. Der Service muss somit seine Identität mit einem Zertifikat nachweisen. Ein solches habe ich mit Hilfe des makecert-Tools wie folgt erstellt:

makecert -n "CN=X2016" -iv RS.pvk -ic RS.cer -pe -e 04/30/2016 -sky exchange X2016.cer

Die so erfolgreich erstellte Zertifikatdatei X2016.cer habe ich dann installiert. Sie wird in meinem Host auch gefunden, aber beim Öffnen des ServiceHost-Objekts erscheint der Fehler

Zitat:
Das Zertifikat "CN=X2016" muss einen privaten Schlüssel aufweisen, der den Schlüsselaustausch unterstützt. Der Prozess muss über Zugriffsrechte für den privaten Schlüssel verfügen.


Der Fehler erscheint allerdings nicht wenn ich makecert um die Parameter
-sk X2016 und
-ss My und (optional)
-sr currentuser
erweitere, was zum automatischen Ablegen des Zertifikats im Zertifikatspeicher führt und somit das Installieren des Zertifikats überflüssig macht. Diese Problematik ist scheinbar unabhängig vom Betriebssystem, ich habe es mit XP,Vista und 7 getestet.

Meine Frage ist: Ist es überhaupt möglich ein Test-Zertifikat mit makecert zunächst als Datei zu erstellen, dann zu installieren und dann zu verwenden? Und falls ja: Wie unterscheidet sich das "manuelle" Installieren eines solchen Zertifikats von der Installation innerhalb von makecert?

Ein Beschreibung eines solchen Problems habe ich irgendwie bisher nicht gefunden, die Beschreibungen von makecert beinhalten überall nur Hinweise, wie man damit Zertifikate erstellt. Ich wäre super dankbar, wenn ich hier eine Antwort erhalten könnte.


Zuletzt bearbeitet von navigato am Do 19.11.09 22:26, insgesamt 1-mal bearbeitet
Private Nachricht sendenPosting in privater Nachricht zitieren
navigato
Hält's aus hier

(Threadstarter)

Beiträge: 4
Dabei seit: 12.11.2009



BeitragVerfasst: Do 19.11.09 22:25  Antworten mit Zitat Beitrag melden
ich habe es gefunden:

wie beispielsweise unter social.msdn.microsof...e6-8d89-6dbd62efcaf0 oder msdn.microsoft.com/e...ibrary/dd419904.aspx zu erfahren ist, enthält eine .cer-Datei keinen privaten Schlüssel, weshalb mein Service letztlich den Fehler produziert hat, da nach der Installation der cer-Datei eben gar kein privater Schlüssel im Zertifikat des Zertifikatsspeichers enthalten war.

Lösung: Es kann eine pfx-Datei erstellt werden, wenn man beabsichtigt, die Informationen des Zertifikats inkl. öffentlichem und privaten Schlüssel per Datei weiterzugeben. Eine solche Datei erhält man, indem man aus dem Zertifikate-Speicher der sog. Zertifikatsexport-Assistent aufruft. Dieser wird mit Hilfe des Popup-Menues "Alle Aufgaben" | "Exportieren" gestartet. Alternativ kann man dieses auch durch den direkten Aufruf des Tools Pvk2Pfx.exe erreichen. Die pfx-Datei kann dann mit dem Zertifikatsimport-Assistent (durch doppelklicken der pfx-Datei) in den Zertifikatsspeicher importiert werden.
Private Nachricht sendenPosting in privater Nachricht zitieren
Werbung ausblenden? Dann registriere Dich kostenlos. Weitere Gründe für eine Registrierung.


Werbung ausblenden? Dann registriere Dich kostenlos. Weitere Gründe für eine Registrierung.
Beiträge vom vorherigen Thema anzeigen:   
home home