【问题标题】:Using Google Drive SDK with metro app将 Google Drive SDK 与 Metro 应用程序一起使用
【发布时间】:2012-09-25 14:11:55
【问题描述】:

我正在尝试将 google drive SDK 与 Metro 应用程序一起使用。 Metro 应用程序使用 REST 服务连接到 Google Drive。我面临的第一个问题是身份验证。 Metro 应用程序有一个重定向 URI,它遵循微软特定的方案,例如“ms-app://s-1-15-2-1527804777-383724396-285855344-2678584489-1963608684-3789894444-799666712/”。

如何在我的 Google 应用配置文件中注册此 URI?谷歌强制注册重定向 URI,我不知道为什么。没有其他提供商(如 dropbox/skydrive)这样做。

有人可以帮忙吗?

提前致谢。

【问题讨论】:

    标签: microsoft-metro google-drive-api


    【解决方案1】:

    重定向 URI 是 OAuth 2.0 规范的一部分,它是一个开放标准,对系统的安全性至关重要。如果其他提供商在没有此功能的情况下执行 OAuth 2.0,则它们是不安全的。更糟糕的是,如果其他提供商强制应用从用户那里获取用户名和密码,那也很糟糕。

    对于已安装的应用程序,您可以使用 Installed Application Flow、本地 Web 服务器 (localhost URI) 或“带外”URI urn:ietf:wg:oauth:2.0:oob。话虽如此,我从未尝试过使用地铁设备,也许其他人可以建议如何perform OAuth 2.0 on metro。

    根据 OAuth 2.0 规范:

    注册客户端时,客户端开发者应:

      o  specify the client type as described in Section 2.1,
      o  provide its client redirection URIs as described in Section 3.1.2, and
      o  include any other information required by the authorization server
      (e.g. application name, website, description, logo image, the
      acceptance of legal terms).
    

    【讨论】:

    • 可能你没听懂我说的或者我不清楚。我说过,其他提供商在生成客户端密钥时不会要求注册重定向 URI。为什么谷歌试图限制这一点?与其他提供商一样,我应该能够在我的应用程序中提供任何重定向 URI。
    • 这些方法都不适用于 Metro 应用程序。 Metro 应用程序无法在本地网络服务器上侦听(尤其是在 arm 平板电脑上),如果我使用 urn:ietf:wg:oauth:2.0:oob 如何将访问令牌传回应用程序?在这种情况下,Metro 应用会在网页上显示访问令牌。
    • 很抱歉造成任何误解。没有重定向 URI,客户端 ID 和客户端密码毫无意义,它们是相互关联的。
    • 我更新了一个链接,这可能会对你有所帮助。在 oob 情况下,用户可以将令牌粘贴到您的应用中。这是一次性设置过程。我将调查 ms-app:// URI 是否我们会考虑使之成为可能。
    • 我无法理解为什么要链接它们。我知道重定向 URI 是必要的,但为什么要强制用户使用具有给定客户端 ID 的有限 URI。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-07
    • 1970-01-01
    相关资源
    最近更新 更多