如何在我的网站上实施"使用谷歌登录"?

57 openid gmail login cross-domain google-oauth

在我的网站上,我想允许用户使用Google帐户登录.我打算使用openid,但我想允许使用google登录,因为它有更多好处.我曾经注意到一些网站能够使用google(gmail)帐户和IIRC登录,虽然他们不支持openID(但我可能错了).

如何实施"使用谷歌登录"?

Bob*_*man 31

如果您打算使用OpenID,请使用它.Google已经是OpenID 2.0提供商.

Google的OpenID提供商位于:https://www.google.com/accounts/o8/ud

(注意:在浏览器中访问该URI没有意义,但它确实适用于OpenID.)

这主要在Accounts API页面上解决,该页面还涉及OAuth以及混合和专有登录系统.根据您的站点,您可能还想使用Friend Connect,这是一个OpenSocial容器,内部使用OpenID进行身份验证.

我当然偏向于朋友连接,因为我是该项目的DPE,但你可能更好地直接使用OpenID提供商,除非你也做了涉及社交图的东西.

编辑2012:您希望使用OAuth 2.0进行登录.GFC正在关闭.


Gre*_*ill 15

您可能对RPX感兴趣,这是一种一体化解决方案,可让人们选择他们想要用于登录您网站的身份提供商.不仅支持Google和OpenID,还支持许多其他功能.

RPX负责处理与每个身份提供者的接口的所有细节,并为您提供一个可以使用的通用API.

  • 作为撰写其他答案的人,我也同意RPX可能是实际*实现大多数用法的*OpenID的最佳方式.它具有出色的用户界面,易于安装和使用. (3认同)

Kho*_*lam 6

将 Google 登录集成到您的网络应用程序中

创建 Google Developers Console 项目和客户端 ID。

加载Google平台库

您必须在集成 Google 登录的网页上包含 Google Platform Library。

<script src="https://apis.google.com/js/platform.js" async defer></script>
Run Code Online (Sandbox Code Playgroud)

指定您的应用程序的客户端 ID

使用 google-signin-client_id 元元素指定您在 Google Developers Console 中为应用程序创建的客户端 ID。

<meta name="google-signin-client_id" content="YOUR_CLIENT_ID.apps.googleusercontent.com">
Run Code Online (Sandbox Code Playgroud)

注意:您还可以使用gapi.auth2.init()方法的client_id参数指定应用程序的客户端ID。

添加 Google 登录按钮

将 Google 登录按钮添加到您的网站的最简单方法是使用自动呈现的登录按钮。只需几行代码,您就可以添加一个按钮,该按钮会自动将自身配置为具有适合用户登录状态和您请求的范围的文本、徽标和颜色。

要创建使用默认设置的 Google 登录按钮,请将类为 g-signin2 的 div 元素添加到您的登录页面:

<div class="g-signin2" data-onsuccess="onSignIn"></div>
Run Code Online (Sandbox Code Playgroud)

其他信息。可以在这里找到


其他可能的解决方案是

使用 OAuth 2.0 访问 Google API

认证协议

OAuth 2.0 概述

OpenID 连接

用于服务器端 Web 应用程序的 OAuth 2.0

JavaScript Web 应用程序的 OAuth 2.0

适用于移动和桌面应用程序的 OAuth 2.0


Pab*_*blo 2

我相信您正在寻找的是Google Accounts API