【发布时间】:2010-11-13 21:09:21
【问题描述】:
我正在设计一个通过 HTTP 与服务器通信的 iPhone 应用程序。
我只希望应用程序能够发布到服务器上的某些 URL,而不是任意 HTTP 客户端。因此,我将设置服务器以仅验证包含秘密令牌的 POST,并设置应用程序以包含该秘密令牌。包含此令牌的所有请求将仅通过 HTTPS 连接发送,因此无法被嗅探。
您认为这种推理有什么缺陷吗?例如,是否可以使用“字符串”、十六进制编辑器等从编译的应用程序中读取令牌?当然,我不会将此令牌存储为 .plist 或其他纯文本格式。
欢迎提出替代设计的建议。
【问题讨论】:
-
您的目标是什么?您是否试图确保人们必须为您的应用付费才能使用服务器的服务?您是否试图保证该应用只发出流氓应用可能会破坏的“措辞恰当”的请求?