【发布时间】:2016-06-28 21:22:49
【问题描述】:
我想限制对我的 GAE 后端的访问仅限于我的 Android 应用。我不希望身份验证是基于用户的,我当然也不希望用户提供他们的 Google 帐户凭据或任何凭据。我只想让我的应用程序可以访问我的 GAE API。
StackOverflow里面有severalquestions这个,但是没看懂是什么流程。
GAE Documentation 预期描述的是服务器端,并且不为 Android 客户端提供任何 sn-p。
我偶然发现了这个 Android 开发人员 blog post 和这个 Google Cloud Platform sample project,为了进行身份验证(使用用户的电子邮件地址),这两者都有很多事情要做,这似乎有点矫枉过正。当我在 Google Developers Console 中为 Android 生成客户端 ID 时,我从应用程序的密钥库中指定了包和 SHA1 校验和。我的印象是他们会以一种更透明的方式向服务器识别应用程序。
上面的链接是要走的路吗,还是我走错了路?
【问题讨论】:
-
这些链接中的代码使用来自 Google Play 服务的用户帐户。所以这种身份验证方式肯定是基于用户的。仅使用一些应用程序 ID 的问题在于,攻击者很容易破解、反向编译应用程序或监听应用程序的流量。我不相信有任何不基于用户的真正安全的方法来做到这一点(除非谷歌在框架中加入了一些东西),你只能让它变得越来越复杂,这也意味着你需要做很多工作.
标签: android google-app-engine google-cloud-endpoints