首页 文章

Google联合登录(OpenID OAuth 2)

提问于
浏览
4

我正在尝试让OpenID使用OAuth 2来使用Google的API . 我只希望用户在第一次登录时必须“授予访问权限” . 这是我到目前为止的流程:

  • 用户点击"Login with Google"

  • 我的服务器使用OpenID登录User . 通过联合登录,我收到OAuth请求令牌 .

https://developers.google.com/accounts/docs/OpenID#oauth开始,它表示下一步是将请求令牌交换为访问令牌 . 但是,我发现有两个问题:

  • 这是一个OAuth 1 API调用 .

  • 需要验证者 . 我不需要用户"grant access"来接收验证者吗?这是如何联合的?

谢谢你的帮助!

1 回答

  • 7

    您应该使用基于OAuth 2.0的身份验证:https://developers.google.com/accounts/docs/OAuth2Login

    这也称为OpenID Connect .

    这将使用授权码重定向到您的网站 . 然后,您将其替换为访问令牌 . 通过使用简单的REST请求调用TokenInfo endpoints ,您可以validate访问令牌 . 这将为您提供一个简单的用户标识符 .

    之后,您拨打电话获取详细的profile information,例如姓名电子邮件等 .

    您可以通过这个精彩的演示了解更多有关它如何工作的信息:http://oauthssodemo.appspot.com/

相关问题