【问题标题】:Passing credentials through Google App Engine to Google Reader通过 Google App Engine 将凭据传递给 Google Reader
【发布时间】:2012-01-20 03:56:03
【问题描述】:

如果我使用 Google 帐户登录 App Engine 应用程序,是否有办法将这些凭据从该网络应用程序传递到另一个 Google 网络应用程序(如阅读器)?我希望 GAE 应用程序能够使用我的 Google 阅读器中的数据而无需额外的身份验证步骤(因为我已经登录到 GAE 应用程序)。

我尝试过但失败的事情:

  1. 查看google.appengine.api.users.User 类是否有任何我可以使用的东西(没有看到任何有用的东西)。

  2. urlfetchhttps://www.google.com/reader/api/0/token的调用中将登录GAE应用程序获得的ACSID/SACSID作为cookies传递给https://www.google.com/reader/api/0/token

  3. 在没有参数/标题的情况下调用https://www.google.com/accounts/ClientLogin,希望可能会发生一些神奇的事情;

  4. 使用上述 ACSID/SACSID 调用 https://www.google.com/accounts/ClientLogin,希望能发生一些奇迹;

更新我不想绕过授权 - 我只是想重复使用用户已经输入的凭据,而不是使用单独的用户名/密码表单,他们必须重新输入他们的凭据。

【问题讨论】:

    标签: google-app-engine google-reader google-authentication


    【解决方案1】:

    不,没有。用户没有明确授权你访问他们的谷歌阅读器数据,所以你不能。您必须通过单独的 OAuth 授权步骤(仅一次)才能获得他们的许可。

    【讨论】:

    • 好吧,我实际上是在看身份验证而不是授权,但在这种情况下,这两个部分很可能是混为一谈的。
    • @TimDelaney 对 - 您已经对用户进行了身份验证,但他们没有授权您访问他们的数据。如果您可以在未经用户明确许可的情况下访问其他 Google 应用中的用户数据,那将是一个巨大的安全漏洞。
    • 当然 - 没有问题。我想使用他们已经提供的凭据进行授权 - 但据我所知,没有办法这样做。
    • @TimDelaney 但这就是我的全部观点 - 允许你这样做将是一个巨大的安全漏洞。这是不可能的。
    猜你喜欢
    • 2014-05-18
    • 1970-01-01
    • 2015-02-24
    • 1970-01-01
    • 1970-01-01
    • 2018-04-25
    • 2018-03-09
    • 2018-09-23
    • 1970-01-01
    相关资源
    最近更新 更多