谷歌,加上API关机今天,哪一种选择可用于身份验证?谷歌,加上API关机今天,哪一种选择可用于身份验

2019-05-12 14:11发布

我使用的rails-4以及已经使用OAuth-2与认证Google+ API ,其下述宝石被使用,在我的应用程序:

  1. omn​​iauth-的oauth2
  2. omn​​iauth - 谷歌 - 的oauth2

我收到以下的现有电子邮件通知:

在2019年3月7日,所有的Google+ API和Google+登录将被彻底关闭。 这将是一个渐进的关机,以起步早,2019年1月28,间歇性地失败的API调用,和OAuth请求>使用Google+作用域开始早在2月份> 15,2019年间歇性失败。

今天,我无法验证,因为我得到nilrequest.env["omniauth.auth"]的API收到了以下的一段代码后:

@user = User.find_for_google_oauth2(request.env["omniauth.auth"], current_user)

请建议我怎么能解决这个问题,或者这提供了一个替代方案。

Answer 1:

最后,我总算通过提供用户信息的备用OpenIdConnect端点,以解决这一问题。 使用源 ,我代替:

https://www.googleapis.com/plus/v1/people/me/openIdConnect

有:

https://www.googleapis.com/oauth2/v3/userinfo

我猴子打补丁omniauth-google-oauth2如下:

配置/初始化/ omn​​iauth_google_oauth2_patch.rb

class OmniAuth::Strategies::GoogleOauth2 < OmniAuth::Strategies::OAuth2
  def raw_info
    @raw_info ||= access_token.get('https://www.googleapis.com/oauth2/v3/userinfo').parsed
  end
end

而且它现在工作的伟大。



文章来源: Google plus API shutdown today, which alternative can be used to authentication?