0

SignalR 1.1 ベータ版を使用しています。私のコントローラーコードは以下の通りです

_signalUrl = "https://localhost/signalr";
_hubConnection = new HubConnection(_signalUrl);
_proxy = _hubConnection.CreateHubProxy("MyHub");
_hubConnection.Start().Wait(); // throws error

以下、エラー詳細です

InnerException {"基になる接続が閉じられました: SSL/TLS セキュア チャネルの信頼関係を確立できませんでした。"} System.Exception {System.Net.WebException}

InnerException {"検証手順によると、リモート証明書は無効です。"} System.Exception {System.Security.Authentication.AuthenticationException}

System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions) でのスタック トレース (System.Threading.Tasks.Task.Wait(Int32 ミリ秒タイムアウト、CancellationToken cancelToken) での System.Threading.Tasks.Task.Wait())。

証明書を使用してサーバーにデプロイすると、ドメイン名 ( https://domainname.com/signalr) を使用して正常に動作します。ただし、IP アドレス ( https://IPAddress/signalr) は使用できません。

また、以下のコードでクライアント証明書を追加してみました。

_proxy = _hubConnection.CreateHubProxy("MyHub");
X509Certificate certificate = X509Certificate.CreateFromCertFile("MyCert.cer");
_hubConnection.Start(new MyHttpClient() { Certificate = certificate }).Wait();

ハブ接続を開始する前にカスタム クライアント証明書を構成する方法を教えてください。

どんなアイデアでも、前もって感謝します。

プラヴィーン

4

1 に答える 1

0

証明書をコレクションに追加します。

_hubConnection = new HubConnection(_signalUrl);
_proxy = _hubConnection.CreateHubProxy("MyHub");
_hubConnection.AddClientCertificate(X509Certificate.CreateFromCertFile("MyCert.cer"));
_hubConnection.Start().Wait();
于 2013-04-24T09:02:25.577 に答える