請考慮以下情形: Web應用程序正在使用兩個單獨的系統(它們可以通過DB共享數據/狀態)。第一個用於處理標準的Web內容,例如HTTP請求/響應,HTML內容,表單以及所有相關內容。第二個用於實時通信,例如發送消息和通知(長時間輪詢或WebSocket服務器)。
可以通過第一個系統/平台對用戶進行身份驗證,如果憑據有效,則會將某些網頁發送回客戶端。加載此頁面後,客戶端應在後台與第二個系統/平台透明連接。
問題是:如何在網頁/應用程序上對用戶進行身份驗證
我可以這樣想像:
- 通過第一個系統/平台對用戶進行身份驗證時,GUID令牌是生成並存儲在與某些用戶綁定的數據庫中。此令牌和用戶ID也會作為響應發送回客戶端,例如,呈現在頁面上的隱藏字段中。
- 加載頁面並與第二個系統/平台建立連接時從隱藏字段中獲取位置,令牌和用戶ID,並將其作為參數發送給連接請求。後端找到用戶,在數據庫中比較其令牌,如果它們與實時連接匹配,則可以啟動。 ol>
我知道這種方法很容易被嗅探,但是我我對兩個分離的系統/平台之間的身份驗證過程很感興趣。