1
私は、omniauthを作成しました。documentationを見て、下のスニペットを見つけました。既存のユーザーをfbアカウントにリンクするときの注意事項
これは例を示していますが、実際のライブアプリでは予防策を講じなければならないことに注意してください。
実際のライブアプリケーションでは、ここでどのような予防措置を取ることができますか?
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アカウントを持つ既存のユーザーをリンクする場合は、アプリケーションで 予防措置を取る必要があります。