非常简单的用户验证

时间:2012-05-01 04:55:46

标签: google-chrome-extension

我正在创建一个应用程序,我计划让它发生一些云,但我不想创建用户数据库并让用户需要记住他们的用户名和密码。

由于它将通过Chrome应用程序商店分发,因此基本上保证用户将拥有Google帐户。我想做的就是:

  1. 通过Google帐户内容获取用户的电子邮件。如果我通过那里,那么他们的电子邮件就是我获取该用户数据所需的所有身份验证。

  2. 如果我最终将应用程序放在chrome浏览器以外的其他地方,我只需让用户使用他们的电子邮件来请求验证链接,然后我会向他们发送该帐户的验证码,他们将验证代码放入应用程序中,将其作为经过验证的用户,这样既安全又简单。

  3. 编辑:我正在研究这个问题。到目前为止,我有:

    OAuth 2 Google API

    但我有一个问题,我不知道该怎么设置我的谷歌API中的javascript起源,并且在国外没有太多的信息。如果有人能告诉我我需要为Chrome扩展程序设置哪些javascript来源来访问google api,这将是一个很好的帮助。

    PS:感谢投票,这就是我喜欢诉诸堆栈交换的原因。

2 个答案:

答案 0 :(得分:2)

嗯,我认为这个被拒绝的唯一原因是这个问题可能已经在网站上的某个地方被问过(但我会帮助你并给予一个1up)。

那么您想要使用Google OpenID。您必须向Google注册您的申请,以便他们为您的申请提供OAuth2令牌。我没有用Google做过这个,但有其他服务,这很简单,只需搜索一下。

就在chrome扩展程序中为您的应用程序获取OAuth2而言,这可能会很麻烦,因为扩展程序是沙箱,Google的示例使用的是OAuth而不是OAuth2。

这是我在GitHub上托管的解决方案 - 我也在我的扩展GitHub存储库中使用它:

https://github.com/jjNford/oauth2-chrome-extension

希望这在某种程度上有所帮助。不要气馁StackOverflow,它是一个很好的资源,有许多伟大的贡献者。

祝你好运!

答案 1 :(得分:0)

当我追踪相关问题时,我不得不对你投票,所以我发现这可能有所帮助。

根据这些说明 - http://code.google.com/p/google-api-javascript-client/wiki/Authentication - “在”授权的JavaScript来源“框中,输入您网站的协议和域名。”这应该是协议(http://或https://),后跟任何可选的子域,后跟您的域名,没有尾部斜杠。域名后面没有任何内容。

这可以防止某些类型的安全攻击,请参阅:http://en.wikipedia.org/wiki/Same_origin_policy

我发现这里有一些相关问题可能有所帮助: Problems with Google Picker API and selecting Google Drive itemsgoogle apis console 'Javascript origins'

现在有了所有这些说法,我仍在尝试追踪我作为Google网站托管的其中一个网站所放置的值,因为没有任何明显的价值对我有用。因此,我在这个解释中可能会遗漏一些微妙的内容。