2016-10-11 89 views
0

我有兩個單獨的webapps在不同的機器上運行。他們都需要用戶進行身份驗證才能訪問網站的某些部分。我希望能夠使站點A上的鏈接進入站點B並自動登錄用戶。 SSO不是一種選擇。我不想以跨環境/機器的方式來配置它。從另一個網站登錄到網站而不使用數據庫

那麼我最終會得到logontoken機制。站點A在數據庫中寫入令牌(連同其他信息),並將此令牌傳遞給站點B.站點B查找令牌,如果有效,則使用附加數據登錄該用戶。

我現在正在wonedering是否存在一種機制來完成此操作,但不需要數據庫。例如,您可以將http請求中的用戶名和密碼發送到網站。如果我們通過在url中添加查詢參數來實現這一點,那麼即使是https環境也是不安全的,因爲可以在各個網絡點記錄url。我現在想着用憑證做一個https帖子。我是否正確地假設請求正文(發佈數據)不能在兩個站點之間的https連接中被嗅探?

如果這仍然不安全,可以採取哪些措施使其安全?使用MD5對其進行加密,然後用僅由兩個站點知道的密鑰解密(兩個站點都在我的控制之下)?

回答

2

我認爲你應該使用JWT,這是一個帶有簽名和可選加密的JSON對象。它是自給自足的:只需分享一個祕密或公共密鑰,您就可以在不使用第三方系統的情況下傳遞身份。