SignalR аутентификация внутри контроллера?
Я играю с SignalR, и я не могу понять аутентификацию, чтобы создать демонстрационное приложение для публичного и безопасного чата. Существует один чат, и я хочу продемонстрировать, что аутентифицированные пользователи будут получать публичные сообщенияа также аутентифицированные пользовательские сообщения. Аутентификация выполняется с помощью стандартного интернет-приложения MVC (3) вAccountController
.
Получение контекста Hub внутри контроллера не имеет смысла, так как у него нет идентификатора соединения. Как я могу получить идентификатор соединения, чтобы добавить конкретное соединение в группу для «безопасного чата»? Это должно быть сделано в контроллере? Или мне не хватает способа сделать это в хабе?
[HttpPost]
public ActionResult LogOn(LogOnModel model, string returnUrl)
{
if (ModelState.IsValid)
{
if (Membership.ValidateUser(model.UserName, model.Password))
{
FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);
var context = GlobalHost.ConnectionManager.GetHubContext<Chat>();
// add to signalr secure group
// but no connection id here