对于我的Android应用程序,我使用Facebook登录和帐户套件。将Facebook登录或帐户套件发出的ID作为该应用程序后端服务器数据库上该特定用户的user_id,是否安全可靠。
如果是,用户之间的唯一性将保持不变,无论他们如何登录系统。
答案 0 :(得分:5)
不,你不应该。
Facebook ID和帐户套件ID是两个不同的东西。用户的Facebook ID是一种常量,因为只为该特定用户为您的app生成了帐户工具包ID。您不应将这些ID组合在一起以存储user_id。主要原因是这种方式限制每个用户始终只使用一种方法登录。如果用户有时想使用他的Facebook登录,有时使用帐户套件,该怎么办?
解释您可能遇到的问题 - 想象一下,用户首先使用Facebook登录进入您的应用程序,因此您将用户的user_id设置为他/她的Facebook ID。
此用户然后注销并使用帐户套件再次登录。所以这次你将得到他/她的帐户工具包ID,这与他/她的Facebook ID不同。现在您无法识别此用户,并且必须将他/她视为新用户,从而为同一用户创建了2个帐户。