如何在GCM推送通知的服务器端实现上验证注册



My Case

  • Android/iOS应用程序使用phonegap
  • 使用Google Cloud Messaging (GCM)推送通知
  • 使用Phonegap插件推送通知接收下游通知
  • 服务器端的Dropwizard
  • App内容在我的服务器上免费提供,无需注册/登录

目前,我被困在服务器端实现,因为我必须在服务器上存储注册id,如这里所述(检查sendRegistrationToServer(token);ToDo)

我没有找到关于如何正确存储Id的任何文档,似乎不可能从GCM网络检索这些注册Id。

从我所读到的,我需要实现我从我的客户端发布Ids到我的应用程序服务器的方式。

我需要确保这些Ids安全地存储在我的服务器应用程序。也就是说:

    什么是最好的做法后registrationIds到我的服务器应用程序?
  1. 我怎么知道如果注册一个新的客户端registrationId的post请求是真的从我的应用程序的客户端在我的服务器应用程序,因为我不能链接到任何类型的登录?为了不存储任何与我的应用程序无关的registrationIds,因此不会向未知和不需要的设备发送通知。
  2. 是否有任何教程如何实现"真正的企业级应用服务器"使用GCM推送通知?
  3. 我的问题有意义吗,还是我的方法完全错误?
  1. 我能想到的最简单的方法是在服务器上设置一个HTTPS servlet来接收来自客户端的注册id并存储它们。
  2. 我认为没有办法知道这是你的应用程序(它没有被调和),但你为什么要关心?在最坏的情况下,攻击者可能会向您提供一些无效的注册id,您将在尝试发送GCM消息并在响应中收到适当的错误后清除这些注册id。
  3. HTTP服务器、HTTP客户端和数据库,用于存储用户和注册id之间的关系;整体方案似乎不太复杂
  4. 对我来说完全有意义。

相关内容

  • 没有找到相关文章

最新更新