簡體   English   中英

SPA HTML5 應用程序和網絡服務之間的安全用戶令牌?

[英]Secure user token between SPA HTML5 app and web service?

對不起,如果這已經被問過幾次,但不能完全找到可靠的答復。

我想保護 HTML5 應用程序和 PHP Web 服務之間的登錄過程和會話(某種)。 我向用戶展示了一個使用 HTTPS 與服務器的登錄屏幕,然后給客戶端一個隨機的 GUID,該 GUID 存儲在數據庫中,其中包含他們的登錄時間和上次請求時間,以及我為他們的行存儲的實際用戶 ID在用戶表上。 因此,GUID 可能每次都不同,但它在登錄時映射到的用戶 ID 只能在服務器端看到。

我對身份驗證感到厭煩,從來沒有真正處理過針對這樣的 Web 服務的 HTML5/JS 應用程序。 我通常開發 ASP .NET 站點並使用會話。

我最近發現了 JWT 令牌,它對包含在客戶端上並傳遞到/從服務器傳遞的令牌字符串中的數據存儲進行加密。 這比我正在做的更安全嗎? 我應該使用 JWT 而不是我現在擁有的這個 GUID 映射?

我的目標是對網絡場的無會話請求,它可以讓您連接到任何特定的網絡服務器,並驗證該請求以查看該請求是否來自有效的登錄用戶。

任何的建議都受歡迎 :)。

謝謝。

使用 JWT 令牌是完全安全的,前提是您不在令牌中編碼敏感數據,因為令牌可以在沒有密碼的情況下解碼。

您可以做的是擁有兩個密鑰對(私有/公共)RSA 密鑰。 用於對令牌進行編碼並在登錄成功時將其發送給客戶端的私有

客戶端可能會將令牌保存到 cookie、HTML5 本地存儲等中,在每次請求時,客戶端通過請求標頭將令牌傳遞回 Web 服務器,然后 Web 服務器使用公鑰驗證令牌。 同時解碼令牌並從令牌中獲取 GUID,然后可以繼續請求。

此工作流可以跨多種服務器端語言工作,因為它們有許多 JWT 庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM