2014-01-12 59 views
0

嗨,大家好,這是我第一次嘗試在我的項目中處理Oauth。我已閱讀link上的教程。我已經嘗試過Google和Facebook Oauths,並且對它的簡單性感到驚訝。現在我將嘗試Twitter/Yahoo/Microsoft僅用於學習目的。 這個問題可能會給我帶來負面影響,因爲這是一個學習者問題。所以我的問題是當使用Facebook Oauth時,您需要LocalHost機器的SSL Https URL。雅虎/推特/微軟如何?哪一個需要SSL。Twitter/Microsoft/Yahoo OAuth需要SSL嗎?

+0

如果涉及認證,則應始終在任何地方使用SSL。否則,攻擊者可以簡單地竊取您的身份驗證cookie。 (例如,Firesheep) – SLaks

回答

1

當使用OAuth,你應該使用SSL。事實上,截至今日,Twitter的所有終端都需要SSL。如果你研究協議,你會發現有令牌在授權頭中來回傳遞。你會想要保護這些。您還希望保護來自提供者的響應,其中包含令牌和其他信息。某些應用程序可能不需要SSL(儘管Twitter現在可以),但最好通過設計來保證安全,默認情況下是安全的,並且可以保證部署安全。

1

不 - 您的localhost機器確實是而不是需要運行SSL。

確實,即使您沒有使用localhost,也沒有義務使用SSL。從理論上講,如果你的令牌被攔截,風險就很小,因爲你的私有令牌永遠不會離開你的機器。

所以,OAuth技巧可以

User -> Your Website -> SSL to OAuth provider -> Redirect to localost (non SSL)