使用uid或令牌存储facebook会话

时间:2012-08-09 07:15:04

标签: ruby-on-rails facebook authentication omniauth

嘿,我正在观看关于omniauth的以下railscast,并想知道使用uid是否是存储会话的正确方法。存储凭证令牌不是更安全吗?

http://railscasts.com/episodes/241-simple-omniauth

我有以下架构,并希望能够从Facebook创建新用户。关于如何正确地做到这一点的任何想法?

        Column         |            Type             |                     Modifiers                      
------------------------+-----------------------------+----------------------------------------------------
 id                     | integer                     | not null default nextval('users_id_seq'::regclass)
 first_name             | character varying(255)      | 
 last_name              | character varying(255)      | 
 email                  | character varying(255)      | 
 created_at             | timestamp without time zone | not null
 updated_at             | timestamp without time zone | not null
 password_digest        | character varying(255)      | 
 remember_token         | character varying(255)      | 
 admin                  | boolean                     | default false
 password_reset_token   | character varying(255)      | 
 password_reset_sent_at | timestamp without time zone | 

2 个答案:

答案 0 :(得分:0)

实际上你需要两者。令牌会随着时间而变化,您可能需要一种方法来存储/创建自己的用户数据。

答案 1 :(得分:0)

facebook提供的唯一标识符可以是动态的,也可以是猪肉所说的开/关。

我现在一直在为几个项目使用社交登录,我必须说使用社交登录与设计相结合永远不会让我失望。

为了确保在uid因任何原因改变或不再存在时不创建新记录,只需在没有uid的情况下检查返回的auth_info。

祝你好运