保护iOS应用程序和Rails应用程序之间通信的最简单方法是什么?

时间:2012-04-04 14:43:10

标签: ruby-on-rails ios api authentication encryption

我有一个iOS应用程序,可以对Rails应用程序进行身份验证。第一次进行身份验证时,需要提交用户名和密码,作为回报,rails应用程序返回一个令牌,iOS应用程序可以使用该令牌在进一步的通信中进行身份验证。

它们之间传递的信息包括用户的电子邮件地址和其他琐碎的信息,但没有像财务细节等高度敏感。我需要一种方法来保护这些通信。

我可以添加此保护的最简单方法是什么?

3 个答案:

答案 0 :(得分:2)

HTTPS是一种通过网络传输来保护通信的直接方式。可以使用oAuth完成重用和令牌以进行后续通信。您可能想要采用Facebook在其iOS SDK中采用的方法。他们在UIWebView(HTTPS)中放置登录页面并返回oAuth令牌以便后续调用。

编辑:由于SSL似乎“不在桌面上” - 为什么不用基本身份验证进行身份验证,并让每次调用重新进行身份验证而不是使用令牌。

答案 1 :(得分:1)

为您的网络服务器获取可信且有效的证书,并使用SSL / HTTPS。这就是大多数人所做的事情。

我不建议您实施自己的加密方法。

答案 2 :(得分:0)

您在本地使用SSL的问题让我想起了这个tutorial

当Ryan强制使用SSL时,他提到它不会在开发环境(本地)中工作,只能在生产和测试中使用。围绕六分钟标记讨论了这个问题。看来,如果您使用ssl部署应用程序,那么它将起作用。 Omniauth和外部提供商也是如此。它在本地不起作用,但在部署时会起作用。