2008-12-05 14 views
9

Ich erstelle einen WCF-Dienst, der in IIS7 unter Windows Vista SP1 gehostet wird. Ich erhalte folgende Fehlermeldung:Problem mit selbstsigniertem Cert in WCF - muss privaten Schlüssel haben

Das Zertifikat 'CN = SignedByLocalHost' muss einen privaten Schlüssel haben, der Schlüsselaustausch ermöglicht. Der Prozess muss Zugriffsrechte für den privaten Schlüssel haben.

Es sieht so aus, als müsste ich das Host-Prozess-Assessment dem Zertifikat geben, das in der Vergangenheit mit winhttpcertcfg durchgeführt wurde, das für Vista veraltet ist. Der Artikel, den ich gefunden habe, gibt an, die Zertifikatskonsole zu verwenden, aber ich vermisse etwas, weil ich keine Möglichkeit sehe, mein Zertifikat zu bearbeiten.

Jede Hilfe wäre großartig!

Danke

Antwort

5

können Sie IIS verwenden 7.0/7.5 Nur Start-> Ausführen -> inetmgr Wählen Sie den Server Unter "Security" Panel, gehen Sie auf "Server-Zertifikate" im linken Bereich klicken - "selbst signiertes Zertifikat erstellen" und vervollständigen Sie den Prozess Das crtfiticate wird in LocalMachine StoreLocation unter Personal Store-Name installiert werden. Jetzt verwenden Sie dieses Zertifikat in Ihrem WCF-Dienst und Sie werden nicht mit diesem Fehler konfrontiert

+0

Das ist viel einfacher, dann mein Weg. Mein Weg ist der alte IIS6-Ansatz – JoshBerke

8

Ich habe es herausgefunden.

Angenommen, Sie haben ein selbstsigniertes Zertifikat bei c: \ OutCert, dann funktioniert der folgende Befehl. Ich hatte den Austausch von -sky abgebrochen.

makecert -sk SignedByCA -IV c: \ OutCert.pvk -n "CN = MyLocalHost" -ic c: \ OutCert.cer -sr Localmachine -ss Mein -sky Austausch pe

Jetzt können Sie gehen in das MMC-Tool und verwalten Sie die privaten Schlüssel und erteilen Sie IIS Zugriff auf den Schlüssel. Um private Schlüssel zu verwalten, klicken Sie mit der rechten Maustaste auf das Zertifikat und wählen Sie All Tasks/Manage Private Keys.

+0

hmm Ich kann meine eigene Antwort nicht die Antwort markieren? – JoshBerke

+0

Erklären Sie bitte - im Detail, wie Sie zum MMC-Tool gehen und die privaten Schlüssel verwalten? –

+0

Wo ist das alles Aufgaben/private Schlüssel verwalten? Ich verwende Windows 2008 R2, und ich sehe diese Option nicht im MMC Snap-In ... – essedbl