2016-05-17 90 views
2

我們正在實施JWT,允許我們的客戶端通過我們單獨的身份驗證服務器進行身份驗證。我應該在JWT令牌中傳遞加密數據嗎?

客戶端將用戶名和密碼發送到認證服務器,接收JWT,然後使用JWT登錄到主站點。

顯然,令牌包含用戶名和一些其他非機密信息。

問題是如果使用智威湯遜傳遞祕密信息和如何。 以下是一些可能考慮的選項:

  1. 不要這樣做。主網站服務器使用經過身份驗證的用戶名稱來調用後端API,以獲取所需的信息。
  2. 將信息作爲私有聲明傳遞使用對稱加密對值進行加密並在主網站和身份驗證服務器之間共享密鑰/密碼短語。
  3. 加密整個令牌。

這裏有什麼最佳實踐嗎?這些選擇有什麼起伏?

回答

0

您不應該使用JWT傳遞祕密信息。 這些令牌通常會進行簽名以防止操作(未加密),因此可以輕鬆解讀和讀取索賠中的數據。 如果你需要傳遞敏感信息,請看看JSON Web Encryption(JWE)