根據Facebook API文檔,大部分工作都是通過javascript處理的。Facebook連接幫助
這意味着所有的處理都完成了,然後前端檢查用戶是否連接到Facebook /授權。對?
我的問題是:
假設一個用戶進入我的網站有史以來第一次。 他點擊「臉譜連接」。該javascript驗證他是真實的,並「重定向」到我的服務器上的另一個頁面。從那以後,我怎麼知道用戶實際上是通過我的網站進行身份驗證的,因爲一切都是在前端完成的?
我認爲這是正確的,但是是不是有一些安全問題..:
- 後用戶點擊登錄,Facebook的重定向到我的網站上的頁面。而且他們還會創建一個cookie,其中包含僅從該用戶檢索到的特定「Facebook ID」。我的退縮會「讀取」cookie並獲取該ID ...然後將其關聯到我的用戶ID。
如果這是正確的......那麼它沒有任何意義。如果人們竊取他人的「facebook ID」然後僞造cookie?然後我的後端看到cookie並認爲它是真正的用戶......?
我困惑嗎?如果我感到困惑,請幫助我重新組織並告訴我這是怎麼回事。
謝謝friedo。 那麼,我的後端必須讀取cookie以檢查用戶是否已通過身份驗證?這是我從你的解釋中得到的印象。如果是這樣的話......那就不是那麼不安全了,因爲我可以竊取其他人的cookie + cookie中的數據......並自己「創建」cookie。然後登錄到網站? (然後我的退縮會讀取cookie並認爲我是合適的用戶。) – TIMEX 2009-10-16 22:11:51
我對安全模型的複雜細節不太熟悉,但我想你可以捕獲並欺騙他們的cookie。這些cookie對於他們的帳戶和應用程序是獨一無二的,因此您只能使用他們授予您的任何權限,例如在其Feed中發佈評論。 – friedo 2009-10-17 02:29:47