Ruby on Rails,bcrypt和iOS授权

时间:2013-11-22 20:12:24

标签: ios ruby-on-rails bcrypt

我有基于bcrypt gem的用户授权系统的Ruby on Rails应用程序。还有一个iOS应用程序,我需要提供此应用程序的授权系统。 我怎么能以最好的方式做到这一点? 建议,将开放密码从iOS传递给RoR是不安全的。为所有记录创建一个盐?或者只有ssl是变种?

1 个答案:

答案 0 :(得分:1)

如果您要让第三方客户端应用程序访问API,那么您将需要使用oAuth之类的内容。

如果您将控制所有客户端,那么通过SSL传递用户名/密码进行身份验证是安全的(足够)。

如果您不想在每次请求时通过线路发送U / P,或者想要更容易撤消客户端访问,请考虑允许U / P进行一次身份验证,然后获取一个身份验证令牌,用于所有后续请求。像Devise :: token_authenticatable。

This post解释了为什么Devise(如果你使用的是RoR我猜你正在使用设计进行身份验证)弃用了token_authenticatable以及你可以做些什么作为回应。

最终,如果您没有使用SSL与服务器通信,那么就没有安全的解决方案,因为您的流量很容易被嗅探,然后您的客户端应用程序被模仿。