2014-10-06 109 views
0

您好,我正在尝试在我的网站上实施Google+登录,除了php将检查用户的谷歌ID和电子邮件以查看他们是否有帐户或我需要为他们创建一个。Google+登录验证问题

我遇到的问题是如何验证php从客户端上的javascript接收到的文件实际上是否有效?我的意思是,似乎有人可以很容易地修改脚本发送任何谷歌用户的ID和电子邮件,然后以任何人登录。我如何防止这种情况?

我一直在这个谷歌指南以下到目前为止https://developers.google.com/+/web/signin/add-button

他们不说有关如何验证用户多数民众赞成在签署的后端什么是真正的真实的用户还是不行,我用我错了出于我的目的,我不需要任何离线访问他们的帐户信息,只有当他们登录到网站和活跃。

+0

要登录到Google +,您需要一个电子邮件地址和密码。所以任何人都可以知道客户的电子邮件地址,因为他们可以将它发给任何人。但是,要登录到他/她的帐户,您还需要“密码”。 – Juniar 2014-10-06 01:24:01

+0

@Juniar Google+登录功能的全部功能是让您不必向用户询问密码。网站不应**请求Google密码。 – abraham 2014-10-06 03:16:15

+0

@abraham如果没有密码,那么我想任何具有有效电子邮件地址的人都可以登录,而不管电子邮件:所有权。所以隐私并不重要。 – Juniar 2014-10-06 03:50:30

回答

1

在步骤5中,您链接的是成功结果的授权对象。这包含一个access_token。这个access_token是一个秘密,它根据对被授权的特定用户的请求权限来标识和授予访问权限。将此access_token通过XHR或其他方法传递到您的后端,并使用它将用户标识设置为mepeople.get的认证请求。这会告诉你这个用户是谁,如果你要求email范围他们验证的电子邮件地址。

+0

我必须使用HTTPS将access_token传回去,还是只能使用HTTP?我尝试过Cors,但它只是没有工作。该服务器也没有SSL证书。 – Wes 2014-10-07 21:37:56

+0

你真的应该为你的整个网站使用SSL。否则任何人在他们的浏览器和您的服务器之间使用相同的WiFi访问网络设备可以劫持他们的access_token。 – abraham 2014-10-07 22:16:55