2011-09-01 82 views
2

我有兩個單獨的服務器(s1和s2),運行兩個獨立的Web應用程序。用戶在s1上進行身份驗證,並通過單擊鏈接重定向到s2。是否可以在s2上驗證用戶而不讓用戶再次輸入他/她的憑證?重定向後驗證用戶

我的第一個想法是使用兩臺服務器都知道的密鑰加密密碼,並將加密的字符串與請求一起傳遞。夠了嗎?有沒有更智能的方法去做到這一點?

_________        __________ 
    | s1 | GET (with encrypted pw)? | s2 | 
    |  | -----------------------> |  | 
    |_______|        |________| 
Authenticated     Need to be authenticated 

謝謝。

+1

這只是罰款。您可以通過在s2中創建一個類似於界面的Web服務來使其可重複使用。 – Davita

+0

如果知道密碼(假設它是md5散列),是否可以獲得密鑰? – picknick

+0

md5是非常弱的哈希算法。它可以使用蠻力破解。改爲使用SHA256/SHA512。還要確保你在密碼中附加了一個密鑰,比如「MyPassword」+「ASuperSecretKey」,你就可以獲得安全保護 – Davita

回答