我正在为 iOS 应用程序设计 REST 服务。我想知道如何使 REST 服务安全,以便只允许来自 iOS 应用程序的请求?
我正在考虑使用共享 key ,但如果您检查请求,仍然会遇到问题。
另一种方法是使用 OAuth,这不是理想的解决方案。我希望能够在实际请求中进行身份验证,而不是在多个请求之间交换 token 。
我能想到的唯一解决方案是基于时间的加密。共享 secret 会根据请求在服务器上的位置仅在特定持续时间内有效进行加密。
Best Answer-推荐答案 strong>
如果您通过受 SSL 保护的协议(protocol)(如 HTTPS)传输请求(并使用服务器证书来防止中间人攻击),嗅探器将看不到您的请求,因此共享 secret 会被烧入应用程序可以工作。
当然,如果有人真的想这样做,他们可以对您的应用程序进行逆向工程以找到其中存储的 secret 。如果您正在构建与人们的银行帐户相关联的东西,那么请不要打扰。如果您只是尝试添加一小层保护以防止对您的服务进行微不足道的黑客攻击或 DDOS 攻击,那么这听起来是一种合理的方法。
关于ios - 无需身份验证即可保护 REST 服务,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/12905919/
|