Ios RubyonRails-使用移动客户端进行用户身份验证

Ios RubyonRails-使用移动客户端进行用户身份验证,ios,ruby-on-rails,ruby,rest,session,Ios,Ruby On Rails,Ruby,Rest,Session,我正在用Ruby on Rails应用程序实现iOS移动应用程序的后端。我目前正在进行用户创建和身份验证,遇到了一些问题。我有一个API,允许用户通过RESTful路由创建用户帐户。我现在正在尝试设置某种进程,允许用户登录到新创建的帐户。我认为登录过程应该是这样的:当用户登录api时创建某种移动会话,当他们注销时,客户端从终端终止会话。首先,我想知道这是否是实施这样一个系统的正确方法 第二,我想就如何建立这一制度提出一些想法。我的第一个想法是创建名为xsession或msession的新数据库模

我正在用Ruby on Rails应用程序实现iOS移动应用程序的后端。我目前正在进行用户创建和身份验证,遇到了一些问题。我有一个API,允许用户通过RESTful路由创建用户帐户。我现在正在尝试设置某种进程,允许用户登录到新创建的帐户。我认为登录过程应该是这样的:当用户登录api时创建某种移动会话,当他们注销时,客户端从终端终止会话。首先,我想知道这是否是实施这样一个系统的正确方法


第二,我想就如何建立这一制度提出一些想法。我的第一个想法是创建名为xsession或msession的新数据库模型,该模型保存所有设备特定的变量,如与会话相关的设备令牌和用户信息。会话将在根据
用户
数据库模型中已存储的密码进行验证后创建。会话将绑定到用户ID,并在注销时从数据库中删除。这将创建一个表,其中的行将表示所有活动的移动会话。这是最好的方法吗?让我知道大家的想法,这是我第一次实现这样的东西,我很高兴看到我是否在正确的轨道上。

使用身份验证令牌:


您可以将auth_令牌放在用户表中,或者有一个单独的表,例如存储设备信息和auth令牌的设备。

iOS网络库像浏览器一样管理会话cookie,这意味着它将存储从Rails服务器接收到的会话cookie,并在下面的每个请求中将其发送回

这意味着您仍然可以使用标准Rails会话对使用移动客户端的用户进行身份验证

另外,要知道,没有过期日期的cookie被视为“仅会话”,并且在重新启动应用程序时会被清除(请参阅:)