2013-08-22 5 views
0

현재 웹 사이트 방문자와 실시간으로 상호 작용할 수있는 응용 프로그램을 스케치하는 중입니다.ASP.NET MVC 및 다중 사용자 유형의 SignalR

  1. 등록되지 않은 사용자 :

    따라서, 나는 두 개의 서로 다른 "사용자 유형"이 이러한

  2. 등록 된 사용자 방문자 수 있습니다 :이은 (정의) ASP.NET MVC 회원이

이제 "UserNames"및 ConnectionIds를 DB에 유지하므로 어느 시점에서 자유롭게 확장 할 수 있습니다. 허브에서 Context.Identiy.User.UserName에 액세스 한 다음 DB에 기존 "세션"을 쿼리하여이 작업을 수행합니다. 이들은 방문자와 데이터베이스에서 제거됩니다 - 내가, 내가 동적으로 GUID를 생성 할 "사용자"하나

  1. 의 두 가지 유형이 필요

    1. : 여기

      문제입니다 일정량의 비활성 후
    2. 이들은 관리자이며 Context 객체에 연결된 올바른 ID를가집니다. 그래서

, 어떻게 하나 SignalR에서 "세션"에 접근 가겠어요? 실제로는 세션이 아니며 각 초기 요청시 쿠키에서 SessionId를 MVC 컨트롤러로 가져와야합니다. 내가 할 수 할 필요가있다 : 나는 대신에 사용자 아이디를 사용하려면 :

  1. 가 자동 생성 "세션 ID"나는 걸쳐
  2. 좀 더 "확장"ID가 요청하는 방문자를 유지하는 데 사용할 수 있나요 사용자 이름

어쨌든, 나는 이것이 의미가 있기를 바랍니다. 그러나 무엇인가가 명확하지 않으면 칩에 넣기를 바랍니다.

+0

HttpContext.Session.SessionID의 값을 보유 할 Layour.cshtml의 숨겨진 필드를 렌더링하면 JS – HaBo

+0

에서 그 값에 액세스 할 수 있습니다. 아이디어 HaBo를 공유해 주셔서 감사합니다. 해당 정보를 담고있는 적절하게 암호화 된 쿠키를 사용하는 것과는 대조적으로 보안 관련 사항이있는 경우 관심이 있습니다. 그러나, afaik, 이것은 SignalR을 사용하여 읽을 수 없습니다. – JDR

+0

JSR을 사용하여 SignalR을 트리거하는 경우 신호를 트리거하는 방법을 잘 모릅니다. 숨겨진 필드에서 sessionId를 사용하면 심각한 보안 침해가 발생합니다. 애플리케이션의 유형에 따라 다릅니다 이것이 무엇이며 보안 문제와 정책은 무엇입니까? – HaBo

답변