如果我的移动应用程序允许用户直接上传到谷歌云存储而不通过我的网络服务器,是否存在向用户提供临时凭据的概念?还是有其他方法可以实现这一点,这样我就不需要在应用程序中公开自己的凭据?
问问题
287 次
1 回答
0
我认为这就是 OAUTH 的用途,现在 OAUTH 已与所有 Google API 一起使用。这个想法是 - 正如您所指出的那样 - 没有很好的方法来保护您在客户设备上的凭据,因此客户端密钥(与服务器密钥相反)不允许直接访问您的服务/api。相反,客户端密钥(您的应用程序随附)更多地用作标识符而不是密钥:它允许客户端从 OAUTH 服务器(在这种情况下由 Google 运行)请求临时访问令牌,然后可以用于访问您的服务/api。
这个额外的层也给你更多的控制,例如你可以将限制(例如客户端IP地址)与客户端密钥相关联。
总的来说,这似乎不是一个完美的解决方案,而且它肯定会引入额外的复杂性,但它旨在解决您所关心的问题。
关于 Android 上的实现,您可能正在使用 google 的 java 客户端库,它支持 Google 的 OAUTH2。
阅读此处了解更多信息:
https ://developers.google.com/accounts/docs/OAuth2
于 2013-10-07T14:53:17.567 回答