3

我正在开发一个将与谷歌 API 交互的网络应用程序。

由于使用该应用程序的唯一方法是通过谷歌帐户,我只想允许通过谷歌帐户登录。

我想我将使用“omniauth-google-oauth2”策略,因为 OAuth2 是访问 google API 的首选方式。为了处理登录本身,我想使用 Devise,因为我不喜欢从头开始编写它(因此重新发明轮子并且必须关心与登录系统相关的所有安全问题)。

我的问题是我可以禁用非谷歌帐户的设计登录吗?

4

1 回答 1

5

在您的用户模型中,您将有一条如下所示的行:

  devise :database_authenticatable, :registerable,
     :recoverable, :rememberable, :trackable, :validatable, :omniauthable

您要做的只是删除您不想要的策略。可以在设计存储库的页面上找到每一个的解释。

实际上,您希望保留:omniauthable和删除:database_authenticatable提供基于密码的身份验证的服务。

于 2012-06-12T18:19:44.647 回答