我有一个通过 https 与服务器通信的 iOS 应用。
是否可以对应用程序进行身份验证,以便服务器只响应来自该应用程序的请求?换句话说,它不会响应来自浏览器/curl/另一个应用程序/等的 http 请求?
我对验证用户不感兴趣 - 只是确保只有我的应用可以与服务器通信。
我的想法:
- 服务器和应用程序上的共享 secret 。但是任何人都可以查看应用程序包内部以提取 secret 。
-使用推送通知。应用程序联系服务器,并告诉服务器它的推送通知 token 。服务器发送到达应用程序的推送通知。没有其他任何东西可以收到通知,所以在其中嵌入一个共享 secret ,应用程序可以从那时起使用它。但是推送通知可能会延迟发送,或者根本不发送。许多用户不想启用它们。
显然,Apple 会对设备进行身份验证,因此它知道将推送通知发送到哪里。但是有什么方法可以 Hook 吗?
最佳答案
您是否考虑过使用 iOS 设备的 MAC 地址?我在一个应用程序中使用它,该应用程序登录需要将设备识别为终端的服务器,并使用它为该终端创建 session 。
关于ios - 如何验证来自 iOS 应用程序的 http 请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7680435/