2011-04-12 70 views
0

場景: 我有一個棘手的情況,需要保持許多模塊快樂[谷歌分析等,等等]。在項目中有一個asp.net頁面,它在第三方網站上發起請求(點擊Process按鈕後),並將用戶重定向到第三方網站。交易在他們的網站上處理,然後控制權返回到我們網站上的當前頁面。您可以將此場景與Paypal處理類型聯繫起來,但它不是PayPal。authCookie並重新登錄用戶

問題: 如果會話超時,我希望用戶重新認證時,控制到達我們網站上的處理是在第三方網站上完成之後。所以我正在考慮將authCookie信息傳遞給第三方網站,然後當控件到達我們的網站時,我將獲得authCookie信息(想象這是場景),然後想要重新登錄用戶。我能做些什麼通過基於用戶名再次創建一個authCookie?

+0

不是一個好主意,我不會通過那種方式的身邊......如果你是偏執狂,設置一個很長一段時間了 – Didaxis 2011-04-12 03:20:04

+0

這很有趣,因爲你可以沒有真正說用戶不活躍,因爲他仍然在玩你的應用程序。但我有點同意埃裏克。如果用戶遠離您的網站,那麼通過正式登錄頁面而不是自動驗證它們總是一個更好的主意。如果這不適合業務場景,則需要很長時間。 – 2011-04-12 05:16:08

回答

0

這實際上取決於您正在使用的事務處理系統。如果您通過調用其API來檢查交易的結果,那麼響應通常會有一個用戶標識或您可以綁定到用戶標識的內容。您可以將用戶名存儲在Cookie中,Cookie是每個域或子域的,並且如果它位於與您的域不同的域中,則不會將其發送到事務處理網站,這很可能是這種情況。從交易結果響應中獲取或派生用戶名,並將其與您從cookie中獲得的名稱進行比較。如果他們匹配,請登錄該用戶。僅基於cookie內容簽署用戶在很多方面都是有風險的。首先,任何人都可以將cookie中的任何名稱設置到瀏覽器中。其次,如果您只是基於cookie登錄用戶,則基本上不會過期會話。這不是你想要的。爲了增加安全性,您可以從交易結果響應中檢查交易時間,如果時間太早,拒絕登錄。

哦,在你的問題,你提到你「需需要保持許多模塊高興」,但你不爲你的意思是這是什麼擴大。所以我只是簡單地忽略了這一點。不知道什麼是快樂模塊的樣子=)

相關問題