2017-05-08 34 views
0

自己署名証明書をポートにバインドして自己ホストwcfアプリケーションを開発したいと思いますが、私は常に失敗します。私がやったポートに自己署名SSL証明書をバインドできませんでした

ステップ:

  1. は、ルート証明書を作成しました:

    • makecert.exe -a SHA256 -n "CN=DemoCA" -r -sv TempDemoCA.pvk TempDemoCA.cer
  2. は、クライアント証明書を作成しました:

    • makecert.exe -a SHA256 -sk Demo -iv TempDemoCA.pvk -n "CN=DemoTempCert" -ic TempDemoCA.cer DemoTemp.cer -sr currentuser -ss My -sky exchange
  3. はローカルコンピュータ証明書にmmc.exeを持つクライアント証明書をインポートし、ローカルコンピュータ証明書に(管理者など)mmc.exeをして、ルート証明書をインポートし

  4. は、プライベートを追加しました

    • certutil -repairstore my "MyKeyHash"
    • :それは鍵のアイコンを持っていなかったので、クライアント証明書の鍵
  5. は、ファイアウォールのエントリを追加しました:

    • netsh http add urlacl url=https://+:9003/ user=domain\user listen=yes
  6. は(管理者として)ポートに証明書をバインドしようとしました:

    • netsh http add sslcert ipport=0.0.0.0:9003 certhash=MyCertHash appid={NewGuid} clientcertnegotiation=enable

しかし、ステップ7は、SSL証明書が失敗したaddが1312

は、エラー1312

指定されたログオンセッションが存在しないエラーで失敗しました。すでに終了している可能性があります。

私はグーグルで見つけたすべての、私の問題を解決しない、例えば: - MMCを経由して輸入していない をcertmgr.msc - 新しい証明書 を作成 - KB修正プログラム

興味深い事実:結合ポートへの既存の "localhost"クライアント証明書が正常に動作します。

私は間違っていますか? ありがとうございます。

答えて

0

解決策は、共通名がサービスの使用されているドメインと同じでなければならないということでした。私の場合は、localhostがトリックをしました。

関連する問題