2017-10-05 15 views
1

我正在嘗試使用SignalR爲我的asp網站構建一個聊天系統。現在我使用基於cookie的認證Owin中間件來驗證每個請求上的用戶。用戶在已經連接到SignalR集線器之後是否可以對其進行身份驗證?

授權在客戶端連接時適用於集線器。但是,如果用戶退出該網站,我認爲這會使會話ID cookie無效,則用戶仍然可以使用該集線器進行聊天。

每次HubDispatcher的OnReceived被調用時或每次集線器收到來自客戶端的呼叫時,我都需要再次對用戶進行身份驗證。

知道SignalR連接使用完全繞過Owin管道的Owin的websocket,我想知道這是否甚至可能,或者如果我應該嘗試其他方法,比如向註銷方法添加一些邏輯以通知集線器用戶應該是拒絕。

回答

0

生成一個新的cookie或會話ID,您將在信號客戶端和集線器之間進行交換,因此當用戶未再登錄時,您可以更改會話ID或創建一個新的cookie,如果存在不匹配將退出用戶

相關問題