2013-11-22 83 views
0

我有基於bcrypt gem的用戶授權系統的Ruby on Rails應用程序。還有一個iOS應用程序,我需要爲這個應用程序提供授權系統。 我怎樣才能以最好的方式做到這一點? 建議,將開放密碼從iOS傳遞給RoR是不安全的。爲所有記錄創建一個鹽?或者只有ssl是變體?Ruby on Rails,bcrypt和iOS授權

回答

1

如果您打算讓第三方客戶端應用程序訪問該API,那麼您將需要使用諸如oAuth之類的內容。

如果您將控制所有客戶端,那麼通過SSL傳遞用戶名/密碼進行身份驗證是安全的(足夠)。

如果您不想在每次請求時通過線路發送U/P,或者希望更容易地撤銷客戶端訪問,那麼考慮允許U/P進行一次認證,然後獲取認證令牌用於所有後續請求。像Devise :: token_authenticatable。

This post解釋了爲什麼設計(如果您使用RoR我猜你正在使用設計進行身份驗證)已棄用token_authenticatable,您可以做什麼作爲迴應。

最終,如果您不使用SSL與服務器通信,那麼就沒有安全的解決方案,因爲您的流量很容易被嗅探,然後您的客戶端應用程序被模仿。