iOS / RoR - 服务器和客户端上的oauth2会话

时间:2014-10-27 13:37:07

标签: ios ruby-on-rails devise afnetworking omniauth

我有一个使用Facebook SDK进行身份验证的iOS应用。然后我可以使用omniauth,devise和omniauth-facebook-access-token(通过AFNetworking)在该Facebook帐户的服务器上创建用户。

现在我需要我的iOS应用程序的用户才能在RoR服务器上“拥有会话” - 我可以通过在每个要进行身份验证的请求的头文件或URL中传递一些信息来实现,或者我可以使用cookie。当应用程序发出API请求(通常是JSON)时,我需要将这些请求放在已经过身份验证的用户的上下文中。

在这种情况下,在iOS应用上拥有经过身份验证的RoR用户的最佳做法是什么?

想到的一些选项:

  • 在客户端维护Cookie
  • 在标题或其他位置发送每条API请求的一条信息(access_token?user_id?)

我担心的是,我希望能够在不重做此代码的情况下添加其他oauth2身份验证提供程序。

1 个答案:

答案 0 :(得分:0)

您需要一个令牌来验证用户身份,您还应该继续发送csrf令牌以确保您的应用安全。看看这个question,看看csrf在答案中是如何处理的。