我正在创建一个应用程序,我计划让它发生一些云,但我不想创建用户数据库并让用户需要记住他们的用户名和密码。
由于它将通过Chrome应用程序商店分发,因此基本上保证用户将拥有Google帐户。我想做的就是:
通过Google帐户内容获取用户的电子邮件。如果我通过那里,那么他们的电子邮件就是我获取该用户数据所需的所有身份验证。
如果我最终将应用程序放在chrome浏览器以外的其他地方,我只需让用户使用他们的电子邮件来请求验证链接,然后我会向他们发送该帐户的验证码,他们将验证代码放入应用程序中,将其作为经过验证的用户,这样既安全又简单。
OAuth 2 Google API
但我有一个问题,我不知道该怎么设置我的谷歌API中的javascript起源,并且在国外没有太多的信息。如果有人能告诉我我需要为Chrome扩展程序设置哪些javascript来源来访问google api,这将是一个很好的帮助。
PS:感谢投票,这就是我喜欢诉诸堆栈交换的原因。答案 0 :(得分:2)
那么您想要使用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 items和google apis console 'Javascript origins'。
现在有了所有这些说法,我仍在尝试追踪我作为Google网站托管的其中一个网站所放置的值,因为没有任何明显的价值对我有用。因此,我在这个解释中可能会遗漏一些微妙的内容。