Безопасное соединение SignalR между клиентом .NET и сервером - PullRequest
14 голосов
/ 15 марта 2012

В SignalR .NET мы устанавливаем соединение между клиентом и сервером, как показано ниже:

var connection = new HubConnection("http://mysite/");

Далее мы подписываем события и запускаем соединение, как показано ниже:

connection.Start().Wait();
* 1006Что делать, если я хотел бы установить безопасное соединение между клиентом и сервером.Как мы можем достичь этого с текущими функциями?

Я заметил, что есть класс свойства System.Net.ICredentials в HubConnection классе.Это способ для этого?Если да, то как мы должны обрабатывать аутентификацию на стороне сервера для наших концентраторов?

1 Ответ

25 голосов
/ 15 марта 2012

Вот как у меня настроено:

  var hubConnection = new HubConnection("http://siteurl");
  hubConnection.Credentials = CredentialCache.DefaultNetworkCredentials;
  hubProxy = hubConnection.CreateProxy("My.Hub.Namespace");

  hubConnection.Start().Wait();

Конечно, вы можете передать разные учетные данные, я использую DefaultNetworkCredentials

Учетные данные, возвращаемые DefaultNetworkCredentials, представляют учетные данные для аутентификации для текущего контекста безопасности, в котором выполняется приложение. Для клиентского приложения это обычно учетные данные Windows (имя пользователя, пароль и домен) пользователя, запустившего приложение. Для приложений ASP.NET сетевыми учетными данными по умолчанию являются учетные данные пользователя, вошедшего в систему, или пользователя, выдавшего себя за другого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...