我有一个iOS应用程序通过https与服务器进行通信。
是否可以对应用进行身份验证,以便服务器只响应来自该应用的请求?换句话说,它不会响应来自浏览器/ curl / other app / etc的http请求吗?
我对验证用户不感兴趣 - 只是确保我的应用只能与服务器通信。
我考虑过的事情:
- 服务器和应用程序上的共享秘密。但任何人都可以查看应用程序包内部以提取秘密。
- 使用推送通知。应用程序联系服务器,并告诉服务器其推送通知令牌。服务器发送推送通知到达应用程序。没有其他任何东西可以收到通知,因此在其中嵌入了一个共享密钥,应用程序可以使用该秘密。但推送通知可以延迟发送,或者根本不发送。许多用户不想启用它们。
显然Apple会对设备进行身份验证,因此它知道在哪里发送推送通知。但有没有办法挂钩呢?
答案 0 :(得分:1)
您是否考虑过使用ios设备的MAC地址?我在一个应用程序中使用它,该应用程序登录需要将设备标识为终端的服务器,并使用该设备为该终端创建会话。