将现有用户与fb帐户关联时要采取的预防措施

时间:2011-09-10 04:16:46

标签: facebook devise omniauth

我正在通过设计omniauth documentation并遇到下面的代码段。

它显示了一个示例,但在说明中建议对于实际的实时应用程序,必须采取预防措施。

对于实际的实时应用,可以采取哪些预防措施?

def self.find_for_facebook_oauth(access_token, signed_in_resource=nil)
  data = access_token['extra']['user_hash']
  if user = User.find_by_email(data["email"])
    user
  else # Create a user with a stub password. 
    User.create(:email => data["email"], :password => Devise.friendly_token[0,20]) 
  end
end
  

注意:这只是一个例子。你的申请必须采取   使用User.find_by_email链接现有用户的预防措施   一个Facebook帐户。

1 个答案:

答案 0 :(得分:0)

该警告奇怪地含糊不清,但代码片段表明他们指的是尝试将现有用户帐户(直接在网站上创建或通过某些非Facebook注册创建)与仅基于Facebook帐户进行匹配的危险找到匹配的电子邮件地址。许多用户可能最终会创建一个新帐户,即使他们已经创建了一个帐户。