2012-08-09 73 views
0

嘿,我正在看omniauth上的以下railscast,并想知道如果使用uid是存储会话的正确方法。存储凭证令牌不是更安全吗?使用用户名或令牌来存储Facebook会话

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 | 

回答

0

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

0

由facebook提供的唯一标识符可以是猪肉所述的动态和开/关。

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

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

祝你好运