我已经为Rails应用程序集成了Facebook和Google登录名,如何限制同一用户使用其他帐户登录?

#1楼 票数:0

基本答案是:您不能,因为您无法确定自己是否会在双方上找到相同的信息(例如:我可能在Facebook上使用一封电子邮件,而在Google上使用另一封电子邮件,或者其中一个可能不公开,等等) )。

一个很好的猜测是使用简单的验证来防止创建一个看上去与另一个用户“太相似”的用户:

class User < ActiveRecord::Base
  validates :email, uniqueness: true # check that no one has the same email
  validates :first_name, uniqueness: { scope: :last_name } # check no double in first name + last name
...
end

  ask by Sandeep translate from so

未解决问题?本站智能推荐:

3回复

如果用户存在,Omniauth Facebook登录名将重定向到注册

我正在使用omniauth-facebook gem来通过Facebook帐户登录omniauth-facebook会话。 当我单击“使用Facebook登录”链接时,一切顺利:创建了一个新帐户,我已登录并弹回首页,并显示一条消息,确认我的新会话(非常好!)。 问题:但是,如果已经存在一
1回复

由于验证身份验证代码出错,使用rails / devise的facebook omniauth登录无法正常工作

我试图允许我的用户使用Facebook登录到Rails应用程序。 这是“使用fb链接注册”: 生成以下html: 那应该带我去这个控制器: 继承人的问题: before_action之所以有效,是因为puts "in the before action"行出现在日
2回复

在Rails 4应用程序中从Facebook登录名检索电子邮件

我正在尝试使用devise和omniauth-facebook gem使用Facebook登录创建Rails 4应用程序。 我遵循了本教程https://www.digitalocean.com/community/tutorials/how-to-configure-devise-and
1回复

使用Omniauth-Facebook的其他用户属性验证失败

大家好,非常感谢您的专业知识和帮助。 我不太了解Ruby on Rails(仅在3个月前才开始使用),并且正在构建一个相当复杂的应用程序。 我遇到了涉及Omniauth-Facebook的障碍。 我有Devise,omniauth-facebook,omniauth_callbacks
2回复

使用Facebook注册并删除对电子邮件的访问权限时提示用户输入电子邮件

我正在构建一个Rails应用程序,并使用usign设计和omniauth-facebook进行Facebook身份验证。 当用户使用facebook注册时,facebook会提示用户授予对我们请求的字段的访问权限。 如果用户未选中电子邮件字段,则Facebook不返回电子邮件。 但
2回复

Facebook的omniauth.auth无法返回完整的哈希,并且无法成功登录Facebook

我正在从http://www.theodinproject.com/ruby-on-rails/final-project进行facebook克隆项目。 我被omniauth-facebook部分所困,无法成功登录facebook。 我认为问题可能是由于request.env [“ om
1回复

设计Facebook登录。 @user不再存在,被重定向到注册页面

我按照Omniauth演练中的所有说明进行操作。 请注意,我的用户模型没有名称或图像属性。 我遵循了Rails教程中的说明。 但是,我确实必须更改此设置: 对此: 由于用户没有name或image属性,因此引发了错误。 这导致了一个新的错误:在Omniauth
2回复

未定义的局部变量或方法`user'omniauth回调控制器

我正在尝试使用devise和omniauth实现Facebook登录身份验证,但是在回调部分出现错误。 错误是这样的... 直到/ auth / facebook /为止,一切似乎都可以正常工作,然后一直到检索uid和provider结束的那一部分。 我在控制器,模型和路由中