2016-10-02 40 views
2

私はこの多くを検索しましたが、この特定の問題に関連する回答が見つかりませんでした。VisualStudio:SSL/TLSセキュアチャネルを作成できませんでした

私はWebサービスのトラフに私のC#Webアプリケーションにアクセスしています。 Webサービスでは、認証要求で証明書が必要です。

Webアプリケーションは開発モードで、iis expressでVisualStudio 2013を使用しています。

クライアント証明書をMMC経由でローカルマシンにインストールしました。 Webサービスリクエストで、X509Certificateを追加しました。 WebサーバがSSLをサポートしていませんが、TLSはので、私は同様に次の行を追加してい:私が実行している場合は問題がある

ServicePointManager.ServerCertificateValidationCallback =delegate { return true; }; 

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; 

私はまた、次の行を追加していますIISで、通常のユーザーとしてVisualStudioを、私は

"The request was aborted: Could not create SSL/TLS secure channel." 

を取得しかし、私はIISで管理者としてのVisualStudioを実行する場合、接続が成功すると、ウェブ表現する表現しますerverは希望の応答を返します。

は、それから私は、.NET完全な信頼と私のローカルIISでアプリケーションをホストされているが、まだ得た:

"The request was aborted: Could not create SSL/TLS secure channel." 

私のIPは、Webサーバーに記載されている白です。

VisualStudioが管理者として実行されているときに、なぜそれが正常に機能しないのか、誰かが理解できるように助けてくれますか?これ多分証明書アクセスエラー:

You can change normal user rights like as administrator if you want. 

答えて

2

ただ、推測、時にはほとんどの場合 :

+1

Dirk、それは完璧な意味です:) あなたの推測は私にMMCのアクセス許可を与えるように導いてくれました。それから、「秘密鍵を管理する」オプションがないという別の問題がありました。 それから私はそれを探し、私はトリック[ここ]を見つけた(http://stackoverflow.com/a/10955915/3233944)。 証明書が信頼済みフォルダにありました。私はそれを個人用フォルダにドラッグしました。管理用のキーオプションは個人用に利用できるからです。 IUSRとEveryoneに完全な権限を与え、証明書を信頼されたルートにドラッグして戻しました:)それは魅力的でした。 – Mansoor

+0

これを聞いてうれしいです:-) –

0

通常のユーザーが文句を言わない、十分なユーザ管理者などの権限を持っています。

証明書のACLを編集することができます。MMCで証明書を選択します。コンテキストメニュー;すべてのタスク。秘密鍵を管理する。

管理者はデフォルトでこのリストに含まれています。これは、あなたが記述した振る舞いと一致します。

+0

この場合、どのようなユーザーの権利がありますか?通常のユーザーとして証明書を取得できなかった場合、それは理にかなっていますが、通常のユーザーと管理者ユーザーの両方で証明書が検索されます。 なぜローカルのIISで作業していないのですか?(? – Mansoor

関連する問題